您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

584 行
16 KiB

// This file is generated from JsonSchema. Don't modify this source code.
using System;
using System.Collections.Generic;
namespace UniGLTF.Extensions.VRMC_vrm
{
public enum AvatarPermissionType
{
onlyAuthor,
onlySeparatelyLicensedPerson,
everyone,
}
public enum CommercialUsageType
{
personalNonProfit,
personalProfit,
corporation,
}
public enum CreditNotationType
{
required,
unnecessary,
}
public enum ModificationType
{
prohibited,
allowModification,
allowModificationRedistribution,
}
public class Meta
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// The name of the model
public string Name;
// The version of the model
public string Version;
// Authors of the model
public List<string> Authors;
// An information that describes the copyright of the model
public string CopyrightInformation;
// An information that describes the contact information of the author
public string ContactInformation;
// References / original works of the model
public List<string> References;
// Third party licenses of the model, if required. You can use line breaks
public string ThirdPartyLicenses;
// The index to the thumbnail image of the model in gltf.images
public int? ThumbnailImage;
// A URL towards the license document this model refers to
public string LicenseUrl;
// A person who can perform as an avatar with this model
public AvatarPermissionType AvatarPermission;
// A flag that permits to use this model in excessively violent contents
public bool? AllowExcessivelyViolentUsage;
// A flag that permits to use this model in excessively sexual contents
public bool? AllowExcessivelySexualUsage;
// An option that permits to use this model in commercial products
public CommercialUsageType CommercialUsage;
// A flag that permits to use this model in political or religious contents
public bool? AllowPoliticalOrReligiousUsage;
// A flag that permits to use this model in contents contain anti-social activities or hate speeches
public bool? AllowAntisocialOrHateUsage;
// An option that forces or abandons to display the credit of this model
public CreditNotationType CreditNotation;
// A flag that permits to redistribute this model
public bool? AllowRedistribution;
// An option that controls the condition to modify this model
public ModificationType Modification;
// Describe the URL links of other license
public string OtherLicenseUrl;
}
public class HumanBone
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Represents a single glTF node tied to this humanBone.
public int? Node;
}
public class HumanBones
{
// Represents a single bone of a Humanoid.
public HumanBone Hips;
// Represents a single bone of a Humanoid.
public HumanBone Spine;
// Represents a single bone of a Humanoid.
public HumanBone Chest;
// Represents a single bone of a Humanoid.
public HumanBone UpperChest;
// Represents a single bone of a Humanoid.
public HumanBone Neck;
// Represents a single bone of a Humanoid.
public HumanBone Head;
// Represents a single bone of a Humanoid.
public HumanBone LeftEye;
// Represents a single bone of a Humanoid.
public HumanBone RightEye;
// Represents a single bone of a Humanoid.
public HumanBone Jaw;
// Represents a single bone of a Humanoid.
public HumanBone LeftUpperLeg;
// Represents a single bone of a Humanoid.
public HumanBone LeftLowerLeg;
// Represents a single bone of a Humanoid.
public HumanBone LeftFoot;
// Represents a single bone of a Humanoid.
public HumanBone LeftToes;
// Represents a single bone of a Humanoid.
public HumanBone RightUpperLeg;
// Represents a single bone of a Humanoid.
public HumanBone RightLowerLeg;
// Represents a single bone of a Humanoid.
public HumanBone RightFoot;
// Represents a single bone of a Humanoid.
public HumanBone RightToes;
// Represents a single bone of a Humanoid.
public HumanBone LeftShoulder;
// Represents a single bone of a Humanoid.
public HumanBone LeftUpperArm;
// Represents a single bone of a Humanoid.
public HumanBone LeftLowerArm;
// Represents a single bone of a Humanoid.
public HumanBone LeftHand;
// Represents a single bone of a Humanoid.
public HumanBone RightShoulder;
// Represents a single bone of a Humanoid.
public HumanBone RightUpperArm;
// Represents a single bone of a Humanoid.
public HumanBone RightLowerArm;
// Represents a single bone of a Humanoid.
public HumanBone RightHand;
// Represents a single bone of a Humanoid.
public HumanBone LeftThumbMetacarpal;
// Represents a single bone of a Humanoid.
public HumanBone LeftThumbProximal;
// Represents a single bone of a Humanoid.
public HumanBone LeftThumbDistal;
// Represents a single bone of a Humanoid.
public HumanBone LeftIndexProximal;
// Represents a single bone of a Humanoid.
public HumanBone LeftIndexIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone LeftIndexDistal;
// Represents a single bone of a Humanoid.
public HumanBone LeftMiddleProximal;
// Represents a single bone of a Humanoid.
public HumanBone LeftMiddleIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone LeftMiddleDistal;
// Represents a single bone of a Humanoid.
public HumanBone LeftRingProximal;
// Represents a single bone of a Humanoid.
public HumanBone LeftRingIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone LeftRingDistal;
// Represents a single bone of a Humanoid.
public HumanBone LeftLittleProximal;
// Represents a single bone of a Humanoid.
public HumanBone LeftLittleIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone LeftLittleDistal;
// Represents a single bone of a Humanoid.
public HumanBone RightThumbMetacarpal;
// Represents a single bone of a Humanoid.
public HumanBone RightThumbProximal;
// Represents a single bone of a Humanoid.
public HumanBone RightThumbDistal;
// Represents a single bone of a Humanoid.
public HumanBone RightIndexProximal;
// Represents a single bone of a Humanoid.
public HumanBone RightIndexIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone RightIndexDistal;
// Represents a single bone of a Humanoid.
public HumanBone RightMiddleProximal;
// Represents a single bone of a Humanoid.
public HumanBone RightMiddleIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone RightMiddleDistal;
// Represents a single bone of a Humanoid.
public HumanBone RightRingProximal;
// Represents a single bone of a Humanoid.
public HumanBone RightRingIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone RightRingDistal;
// Represents a single bone of a Humanoid.
public HumanBone RightLittleProximal;
// Represents a single bone of a Humanoid.
public HumanBone RightLittleIntermediate;
// Represents a single bone of a Humanoid.
public HumanBone RightLittleDistal;
}
public class Humanoid
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Represents a set of humanBones of a humanoid.
public HumanBones HumanBones;
}
public enum FirstPersonType
{
auto,
both,
thirdPersonOnly,
firstPersonOnly,
}
public class MeshAnnotation
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// The index of the node that attached to target mesh.
public int? Node;
// How the camera interprets the mesh.
public FirstPersonType Type;
}
public class FirstPerson
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Mesh rendering annotation for cameras.
public List<MeshAnnotation> MeshAnnotations;
}
public enum LookAtType
{
bone,
expression,
}
public class LookAtRangeMap
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Yaw and pitch angles ( degrees ) between the head bone forward vector and the eye gaze LookAt vector
public float? InputMaxValue;
// Degree for type.bone, Weight for type.expressions
public float? OutputScale;
}
public class LookAt
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// The origin of LookAt. Position offset from the head bone
public float[] OffsetFromHeadBone;
public LookAtType Type;
// Horizontal inward movement. The left eye moves right. The right eye moves left.
public LookAtRangeMap RangeMapHorizontalInner;
// Horizontal outward movement. The left eye moves left. The right eye moves right.
public LookAtRangeMap RangeMapHorizontalOuter;
// Vertical downward movement. Both eyes move upwards
public LookAtRangeMap RangeMapVerticalDown;
// Vertical upward movement. Both eyes move downwards
public LookAtRangeMap RangeMapVerticalUp;
}
public class MorphTargetBind
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// The index of the node that attached to target mesh.
public int? Node;
// The index of the morph target in the mesh.
public int? Index;
// The weight value of target morph target.
public float? Weight;
}
public enum MaterialColorType
{
color,
emissionColor,
shadeColor,
matcapColor,
rimColor,
outlineColor,
}
public class MaterialColorBind
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// target material
public int? Material;
public MaterialColorType Type;
// target color
public float[] TargetValue;
}
public class TextureTransformBind
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// target material
public int? Material;
// uv scaling for TEXCOORD_0
public float[] Scale;
// uv offset for TEXCOORD_0
public float[] Offset;
}
public enum ExpressionOverrideType
{
none,
block,
blend,
}
public class Expression
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Specify a morph target
public List<MorphTargetBind> MorphTargetBinds;
// Material color animation references
public List<MaterialColorBind> MaterialColorBinds;
// Texture transform animation references
public List<TextureTransformBind> TextureTransformBinds;
// A value greater than 0.5 is 1.0, otherwise 0.0
public bool? IsBinary;
// Override values of Blink expressions when this Expression is enabled
public ExpressionOverrideType OverrideBlink;
// Override values of LookAt expressions when this Expression is enabled
public ExpressionOverrideType OverrideLookAt;
// Override values of Mouth expressions when this Expression is enabled
public ExpressionOverrideType OverrideMouth;
}
public class Preset
{
// Definition of expression by weighted animation
public Expression Happy;
// Definition of expression by weighted animation
public Expression Angry;
// Definition of expression by weighted animation
public Expression Sad;
// Definition of expression by weighted animation
public Expression Relaxed;
// Definition of expression by weighted animation
public Expression Surprised;
// Definition of expression by weighted animation
public Expression Aa;
// Definition of expression by weighted animation
public Expression Ih;
// Definition of expression by weighted animation
public Expression Ou;
// Definition of expression by weighted animation
public Expression Ee;
// Definition of expression by weighted animation
public Expression Oh;
// Definition of expression by weighted animation
public Expression Blink;
// Definition of expression by weighted animation
public Expression BlinkLeft;
// Definition of expression by weighted animation
public Expression BlinkRight;
// Definition of expression by weighted animation
public Expression LookUp;
// Definition of expression by weighted animation
public Expression LookDown;
// Definition of expression by weighted animation
public Expression LookLeft;
// Definition of expression by weighted animation
public Expression LookRight;
// Definition of expression by weighted animation
public Expression Neutral;
}
public class Expressions
{
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Preset expressions
public Preset Preset;
// Custom expressions
public Dictionary<string, Expression> Custom;
}
public class VRMC_vrm
{
public const string ExtensionName = "VRMC_vrm";
// Dictionary object with extension-specific objects.
public object Extensions;
// Application-specific data.
public object Extras;
// Specification version of VRMC_vrm
public string SpecVersion;
// Meta informations of the VRM model
public Meta Meta;
// Correspondence between nodes and human bones
public Humanoid Humanoid;
// First-person perspective settings
public FirstPerson FirstPerson;
// Eye gaze control
public LookAt LookAt;
// Definition of expressions
public Expressions Expressions;
}
}