@pixiv/types-vrmc-vrm-1.0 2.1.2 → 3.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/package.json +8 -17
  2. package/types/Expression.d.ts +48 -40
  3. package/types/ExpressionMaterialColorBind.d.ts +15 -13
  4. package/types/ExpressionMaterialColorType.d.ts +7 -1
  5. package/types/ExpressionMorphTargetBind.d.ts +17 -16
  6. package/types/ExpressionPresetName.d.ts +19 -1
  7. package/types/ExpressionTextureTransformBind.d.ts +17 -16
  8. package/types/Expressions.d.ts +7 -6
  9. package/types/FirstPerson.d.ts +8 -8
  10. package/types/FirstPersonMeshAnnotation.d.ts +12 -12
  11. package/types/Humanoid.d.ts +5 -5
  12. package/types/HumanoidHumanBone.d.ts +7 -8
  13. package/types/HumanoidHumanBoneName.d.ts +56 -1
  14. package/types/HumanoidHumanBones.d.ts +2 -1
  15. package/types/LookAt.d.ts +30 -25
  16. package/types/LookAtRangeMap.d.ts +12 -12
  17. package/types/Meta.d.ts +97 -80
  18. package/types/VRMCVRM.d.ts +27 -22
  19. package/ts3.4/types/Expression.d.ts +0 -50
  20. package/ts3.4/types/ExpressionMaterialColorBind.d.ts +0 -21
  21. package/ts3.4/types/ExpressionMaterialColorType.d.ts +0 -1
  22. package/ts3.4/types/ExpressionMorphTargetBind.d.ts +0 -21
  23. package/ts3.4/types/ExpressionOverrideType.d.ts +0 -1
  24. package/ts3.4/types/ExpressionPresetName.d.ts +0 -1
  25. package/ts3.4/types/ExpressionTextureTransformBind.d.ts +0 -24
  26. package/ts3.4/types/Expressions.d.ts +0 -10
  27. package/ts3.4/types/FirstPerson.d.ts +0 -14
  28. package/ts3.4/types/FirstPersonMeshAnnotation.d.ts +0 -17
  29. package/ts3.4/types/Humanoid.d.ts +0 -11
  30. package/ts3.4/types/HumanoidHumanBone.d.ts +0 -13
  31. package/ts3.4/types/HumanoidHumanBoneName.d.ts +0 -1
  32. package/ts3.4/types/HumanoidHumanBones.d.ts +0 -8
  33. package/ts3.4/types/LookAt.d.ts +0 -31
  34. package/ts3.4/types/LookAtRangeMap.d.ts +0 -17
  35. package/ts3.4/types/Meta.d.ts +0 -82
  36. package/ts3.4/types/VRMCVRM.d.ts +0 -29
  37. package/ts3.4/types/index.d.ts +0 -18
package/package.json CHANGED
@@ -1,23 +1,15 @@
1
1
  {
2
2
  "name": "@pixiv/types-vrmc-vrm-1.0",
3
- "version": "2.1.2",
3
+ "version": "3.0.0-beta.0",
4
4
  "description": "Type definitions of VRMC_vrm 1.0 schema",
5
5
  "license": "MIT",
6
6
  "author": "pixiv",
7
7
  "files": [
8
- "/ts*/",
9
8
  "/types/",
10
9
  "LICENSE"
11
10
  ],
12
11
  "main": "",
13
12
  "types": "types/index.d.ts",
14
- "typesVersions": {
15
- "<3.9": {
16
- "*": [
17
- "ts3.4/*"
18
- ]
19
- }
20
- },
21
13
  "repository": {
22
14
  "type": "git",
23
15
  "url": "https://github.com/pixiv/three-vrm.git",
@@ -25,18 +17,17 @@
25
17
  },
26
18
  "scripts": {
27
19
  "version": "yarn all",
28
- "all": "yarn lint && yarn clean && yarn build && yarn docs",
29
- "clean": "rimraf docs/ ts*/ types/",
30
- "build": "tsc --declaration --declarationDir ./types --emitDeclarationOnly && downlevel-dts types ts3.4/types",
31
- "docs": "typedoc --entryPoints ./src/index.ts --out docs",
32
- "lint": "eslint \"src/**/*.{ts,tsx}\" && prettier \"src/**/*.{ts,tsx}\" --check",
33
- "lint-fix": "eslint \"src/**/*.{ts,tsx}\" --fix && prettier \"src/**/*.{ts,tsx}\" --write"
20
+ "all": "yarn lint && yarn clean && yarn docs",
21
+ "clean": "rimraf docs/",
22
+ "docs": "typedoc --entryPoints ./types/index.d.ts --out docs",
23
+ "lint": "eslint \"types/**/*.{ts,tsx}\" && prettier \"types/**/*.{ts,tsx}\" --check",
24
+ "lint-fix": "eslint \"types/**/*.{ts,tsx}\" --fix && prettier \"types/**/*.{ts,tsx}\" --write"
34
25
  },
35
26
  "lint-staged": {
36
- "./src/**/*.{ts,tsx}": [
27
+ "./types/**/*.{ts,tsx}": [
37
28
  "eslint --fix",
38
29
  "prettier --write"
39
30
  ]
40
31
  },
41
- "gitHead": "2ea1a8f0d12a421c572514b86a84fef8ddfe752f"
32
+ "gitHead": "a8ac23ec2e534dcae60de7cce71542a03537fcea"
42
33
  }
@@ -3,48 +3,56 @@ import type { ExpressionMorphTargetBind } from './ExpressionMorphTargetBind';
3
3
  import type { ExpressionOverrideType } from './ExpressionOverrideType';
4
4
  import type { ExpressionPresetName } from './ExpressionPresetName';
5
5
  import type { ExpressionTextureTransformBind } from './ExpressionTextureTransformBind';
6
+
6
7
  /**
7
8
  * Definition of expression by weighted animation
8
9
  */
9
10
  export interface Expression {
10
- /**
11
- * Use only if the preset is custom. Unique within the model
12
- */
13
- name?: string;
14
- /**
15
- * Functions of Expression
16
- */
17
- preset: ExpressionPresetName;
18
- /**
19
- * Specify a morph target
20
- */
21
- morphTargetBinds?: ExpressionMorphTargetBind[];
22
- /**
23
- * Material color animation references
24
- */
25
- materialColorBinds?: ExpressionMaterialColorBind[];
26
- /**
27
- * Texture transform animation references
28
- */
29
- textureTransformBinds?: ExpressionTextureTransformBind[];
30
- /**
31
- * A value greater than 0.5 is 1.0, otherwise 0.0
32
- */
33
- isBinary?: boolean;
34
- /**
35
- * Override values of Blink expressions when this Expression is enabled
36
- */
37
- overrideBlink?: ExpressionOverrideType;
38
- /**
39
- * Override values of LookAt expressions when this Expression is enabled
40
- */
41
- overrideLookAt?: ExpressionOverrideType;
42
- /**
43
- * Override values of Mouth expressions when this Expression is enabled
44
- */
45
- overrideMouth?: ExpressionOverrideType;
46
- extensions?: {
47
- [name: string]: any;
48
- };
49
- extras?: any;
11
+ /**
12
+ * Use only if the preset is custom. Unique within the model
13
+ */
14
+ name?: string;
15
+
16
+ /**
17
+ * Functions of Expression
18
+ */
19
+ preset: ExpressionPresetName;
20
+
21
+ /**
22
+ * Specify a morph target
23
+ */
24
+ morphTargetBinds?: ExpressionMorphTargetBind[];
25
+
26
+ /**
27
+ * Material color animation references
28
+ */
29
+ materialColorBinds?: ExpressionMaterialColorBind[];
30
+
31
+ /**
32
+ * Texture transform animation references
33
+ */
34
+ textureTransformBinds?: ExpressionTextureTransformBind[];
35
+
36
+ /**
37
+ * A value greater than 0.5 is 1.0, otherwise 0.0
38
+ */
39
+ isBinary?: boolean;
40
+
41
+ /**
42
+ * Override values of Blink expressions when this Expression is enabled
43
+ */
44
+ overrideBlink?: ExpressionOverrideType;
45
+
46
+ /**
47
+ * Override values of LookAt expressions when this Expression is enabled
48
+ */
49
+ overrideLookAt?: ExpressionOverrideType;
50
+
51
+ /**
52
+ * Override values of Mouth expressions when this Expression is enabled
53
+ */
54
+ overrideMouth?: ExpressionOverrideType;
55
+
56
+ extensions?: { [name: string]: any };
57
+ extras?: any;
50
58
  }
@@ -1,16 +1,18 @@
1
1
  import type { ExpressionMaterialColorType } from './ExpressionMaterialColorType';
2
+
2
3
  export interface ExpressionMaterialColorBind {
3
- /**
4
- * target material
5
- */
6
- material: number;
7
- type: ExpressionMaterialColorType;
8
- /**
9
- * target color
10
- */
11
- targetValue: [number, number, number, number];
12
- extensions?: {
13
- [name: string]: any;
14
- };
15
- extras?: any;
4
+ /**
5
+ * target material
6
+ */
7
+ material: number;
8
+
9
+ type: ExpressionMaterialColorType;
10
+
11
+ /**
12
+ * target color
13
+ */
14
+ targetValue: [number, number, number, number];
15
+
16
+ extensions?: { [name: string]: any };
17
+ extras?: any;
16
18
  }
@@ -1 +1,7 @@
1
- export type ExpressionMaterialColorType = 'color' | 'emissionColor' | 'shadeColor' | 'matcapColor' | 'rimColor' | 'outlineColor';
1
+ export type ExpressionMaterialColorType =
2
+ | 'color'
3
+ | 'emissionColor'
4
+ | 'shadeColor'
5
+ | 'matcapColor'
6
+ | 'rimColor'
7
+ | 'outlineColor';
@@ -2,20 +2,21 @@
2
2
  * Morph target value associated with a expression
3
3
  */
4
4
  export interface ExpressionMorphTargetBind {
5
- /**
6
- * The index of the node that attached to target mesh.
7
- */
8
- node: number;
9
- /**
10
- * The index of the morph target in the mesh.
11
- */
12
- index: number;
13
- /**
14
- * The weight value of target morph target.
15
- */
16
- weight: number;
17
- extensions?: {
18
- [name: string]: any;
19
- };
20
- extras?: any;
5
+ /**
6
+ * The index of the node that attached to target mesh.
7
+ */
8
+ node: number;
9
+
10
+ /**
11
+ * The index of the morph target in the mesh.
12
+ */
13
+ index: number;
14
+
15
+ /**
16
+ * The weight value of target morph target.
17
+ */
18
+ weight: number;
19
+
20
+ extensions?: { [name: string]: any };
21
+ extras?: any;
21
22
  }
@@ -1 +1,19 @@
1
- export type ExpressionPresetName = 'happy' | 'angry' | 'sad' | 'relaxed' | 'surprised' | 'aa' | 'ih' | 'ou' | 'ee' | 'oh' | 'blink' | 'blinkLeft' | 'blinkRight' | 'lookUp' | 'lookDown' | 'lookLeft' | 'lookRight' | 'neutral';
1
+ export type ExpressionPresetName =
2
+ | 'happy'
3
+ | 'angry'
4
+ | 'sad'
5
+ | 'relaxed'
6
+ | 'surprised'
7
+ | 'aa'
8
+ | 'ih'
9
+ | 'ou'
10
+ | 'ee'
11
+ | 'oh'
12
+ | 'blink'
13
+ | 'blinkLeft'
14
+ | 'blinkRight'
15
+ | 'lookUp'
16
+ | 'lookDown'
17
+ | 'lookLeft'
18
+ | 'lookRight'
19
+ | 'neutral';
@@ -1,18 +1,19 @@
1
1
  export interface ExpressionTextureTransformBind {
2
- /**
3
- * target material
4
- */
5
- material: number;
6
- /**
7
- * uv scale for TEXCOORD_0
8
- */
9
- scale?: [number, number];
10
- /**
11
- * uv offset for TEXCOORD_0
12
- */
13
- offset?: [number, number];
14
- extensions?: {
15
- [name: string]: any;
16
- };
17
- extras?: any;
2
+ /**
3
+ * target material
4
+ */
5
+ material: number;
6
+
7
+ /**
8
+ * uv scale for TEXCOORD_0
9
+ */
10
+ scale?: [number, number];
11
+
12
+ /**
13
+ * uv offset for TEXCOORD_0
14
+ */
15
+ offset?: [number, number];
16
+
17
+ extensions?: { [name: string]: any };
18
+ extras?: any;
18
19
  }
@@ -1,10 +1,11 @@
1
1
  import type { Expression } from './Expression';
2
2
  import type { ExpressionPresetName } from './ExpressionPresetName';
3
+
3
4
  export interface Expressions {
4
- preset?: {
5
- [preset in ExpressionPresetName]?: Expression;
6
- };
7
- custom?: {
8
- [key: string]: Expression;
9
- };
5
+ preset?: {
6
+ [preset in ExpressionPresetName]?: Expression;
7
+ };
8
+ custom?: {
9
+ [key: string]: Expression;
10
+ };
10
11
  }
@@ -1,14 +1,14 @@
1
1
  import type { FirstPersonMeshAnnotation } from './FirstPersonMeshAnnotation';
2
+
2
3
  /**
3
4
  * First-person perspective settings
4
5
  */
5
6
  export interface FirstPerson {
6
- /**
7
- * Mesh rendering annotation for cameras
8
- */
9
- meshAnnotations?: FirstPersonMeshAnnotation[];
10
- extensions?: {
11
- [name: string]: any;
12
- };
13
- extras?: any;
7
+ /**
8
+ * Mesh rendering annotation for cameras
9
+ */
10
+ meshAnnotations?: FirstPersonMeshAnnotation[];
11
+
12
+ extensions?: { [name: string]: any };
13
+ extras?: any;
14
14
  }
@@ -2,16 +2,16 @@
2
2
  * Specify how the mesh should be interpreted by the camera
3
3
  */
4
4
  export interface FirstPersonMeshAnnotation {
5
- /**
6
- * The index of the node that attached to target mesh.
7
- */
8
- node: number;
9
- /**
10
- * How the camera interprets the mesh.
11
- */
12
- type: 'auto' | 'both' | 'thirdPersonOnly' | 'firstPersonOnly';
13
- extensions?: {
14
- [name: string]: any;
15
- };
16
- extras?: any;
5
+ /**
6
+ * The index of the node that attached to target mesh.
7
+ */
8
+ node: number;
9
+
10
+ /**
11
+ * How the camera interprets the mesh.
12
+ */
13
+ type: 'auto' | 'both' | 'thirdPersonOnly' | 'firstPersonOnly';
14
+
15
+ extensions?: { [name: string]: any };
16
+ extras?: any;
17
17
  }
@@ -1,11 +1,11 @@
1
1
  import type { HumanoidHumanBones } from './HumanoidHumanBones';
2
+
2
3
  /**
3
4
  * Correspondence between nodes and human bones
4
5
  */
5
6
  export interface Humanoid {
6
- humanBones: HumanoidHumanBones;
7
- extensions?: {
8
- [name: string]: any;
9
- };
10
- extras?: any;
7
+ humanBones: HumanoidHumanBones;
8
+
9
+ extensions?: { [name: string]: any };
10
+ extras?: any;
11
11
  }
@@ -2,12 +2,11 @@
2
2
  * Represents a single bone of a Humanoid.
3
3
  */
4
4
  export interface HumanoidHumanBone {
5
- /**
6
- * Represents a single glTF node tied to this humanBone.
7
- */
8
- node: number;
9
- extensions?: {
10
- [name: string]: any;
11
- };
12
- extras?: any;
5
+ /**
6
+ * Represents a single glTF node tied to this humanBone.
7
+ */
8
+ node: number;
9
+
10
+ extensions?: { [name: string]: any };
11
+ extras?: any;
13
12
  }
@@ -1 +1,56 @@
1
- export type HumanoidHumanBoneName = 'hips' | 'spine' | 'chest' | 'upperChest' | 'neck' | 'head' | 'leftEye' | 'rightEye' | 'jaw' | 'leftUpperLeg' | 'leftLowerLeg' | 'leftFoot' | 'leftToes' | 'rightUpperLeg' | 'rightLowerLeg' | 'rightFoot' | 'rightToes' | 'leftShoulder' | 'leftUpperArm' | 'leftLowerArm' | 'leftHand' | 'rightShoulder' | 'rightUpperArm' | 'rightLowerArm' | 'rightHand' | 'leftThumbMetacarpal' | 'leftThumbProximal' | 'leftThumbDistal' | 'leftIndexProximal' | 'leftIndexIntermediate' | 'leftIndexDistal' | 'leftMiddleProximal' | 'leftMiddleIntermediate' | 'leftMiddleDistal' | 'leftRingProximal' | 'leftRingIntermediate' | 'leftRingDistal' | 'leftLittleProximal' | 'leftLittleIntermediate' | 'leftLittleDistal' | 'rightThumbMetacarpal' | 'rightThumbProximal' | 'rightThumbDistal' | 'rightIndexProximal' | 'rightIndexIntermediate' | 'rightIndexDistal' | 'rightMiddleProximal' | 'rightMiddleIntermediate' | 'rightMiddleDistal' | 'rightRingProximal' | 'rightRingIntermediate' | 'rightRingDistal' | 'rightLittleProximal' | 'rightLittleIntermediate' | 'rightLittleDistal';
1
+ export type HumanoidHumanBoneName =
2
+ | 'hips'
3
+ | 'spine'
4
+ | 'chest'
5
+ | 'upperChest'
6
+ | 'neck'
7
+ | 'head'
8
+ | 'leftEye'
9
+ | 'rightEye'
10
+ | 'jaw'
11
+ | 'leftUpperLeg'
12
+ | 'leftLowerLeg'
13
+ | 'leftFoot'
14
+ | 'leftToes'
15
+ | 'rightUpperLeg'
16
+ | 'rightLowerLeg'
17
+ | 'rightFoot'
18
+ | 'rightToes'
19
+ | 'leftShoulder'
20
+ | 'leftUpperArm'
21
+ | 'leftLowerArm'
22
+ | 'leftHand'
23
+ | 'rightShoulder'
24
+ | 'rightUpperArm'
25
+ | 'rightLowerArm'
26
+ | 'rightHand'
27
+ | 'leftThumbMetacarpal'
28
+ | 'leftThumbProximal'
29
+ | 'leftThumbDistal'
30
+ | 'leftIndexProximal'
31
+ | 'leftIndexIntermediate'
32
+ | 'leftIndexDistal'
33
+ | 'leftMiddleProximal'
34
+ | 'leftMiddleIntermediate'
35
+ | 'leftMiddleDistal'
36
+ | 'leftRingProximal'
37
+ | 'leftRingIntermediate'
38
+ | 'leftRingDistal'
39
+ | 'leftLittleProximal'
40
+ | 'leftLittleIntermediate'
41
+ | 'leftLittleDistal'
42
+ | 'rightThumbMetacarpal'
43
+ | 'rightThumbProximal'
44
+ | 'rightThumbDistal'
45
+ | 'rightIndexProximal'
46
+ | 'rightIndexIntermediate'
47
+ | 'rightIndexDistal'
48
+ | 'rightMiddleProximal'
49
+ | 'rightMiddleIntermediate'
50
+ | 'rightMiddleDistal'
51
+ | 'rightRingProximal'
52
+ | 'rightRingIntermediate'
53
+ | 'rightRingDistal'
54
+ | 'rightLittleProximal'
55
+ | 'rightLittleIntermediate'
56
+ | 'rightLittleDistal';
@@ -1,8 +1,9 @@
1
1
  import type { HumanoidHumanBone } from './HumanoidHumanBone';
2
2
  import type { HumanoidHumanBoneName } from './HumanoidHumanBoneName';
3
+
3
4
  /**
4
5
  * Represents a set of humanBones of a humanoid.
5
6
  */
6
7
  export type HumanoidHumanBones = {
7
- [key in HumanoidHumanBoneName]?: HumanoidHumanBone;
8
+ [key in HumanoidHumanBoneName]?: HumanoidHumanBone;
8
9
  };
package/types/LookAt.d.ts CHANGED
@@ -1,31 +1,36 @@
1
1
  import type { LookAtRangeMap } from './LookAtRangeMap';
2
+
2
3
  /**
3
4
  * Eye gaze control
4
5
  */
5
6
  export interface LookAt {
6
- /**
7
- * The origin of LookAt. Position offset from the head bone
8
- */
9
- offsetFromHeadBone?: number[];
10
- type?: 'bone' | 'expression';
11
- /**
12
- * Horizontal inward movement. The left eye moves right. The right eye moves left.
13
- */
14
- rangeMapHorizontalInner?: LookAtRangeMap;
15
- /**
16
- * Horizontal outward movement. The left eye moves left. The right eye moves right.
17
- */
18
- rangeMapHorizontalOuter?: LookAtRangeMap;
19
- /**
20
- * Vertical downward movement. Both eyes move upwards
21
- */
22
- rangeMapVerticalDown?: LookAtRangeMap;
23
- /**
24
- * Vertical upward movement. Both eyes move downwards
25
- */
26
- rangeMapVerticalUp?: LookAtRangeMap;
27
- extensions?: {
28
- [name: string]: any;
29
- };
30
- extras?: any;
7
+ /**
8
+ * The origin of LookAt. Position offset from the head bone
9
+ */
10
+ offsetFromHeadBone?: number[];
11
+
12
+ type?: 'bone' | 'expression';
13
+
14
+ /**
15
+ * Horizontal inward movement. The left eye moves right. The right eye moves left.
16
+ */
17
+ rangeMapHorizontalInner?: LookAtRangeMap;
18
+
19
+ /**
20
+ * Horizontal outward movement. The left eye moves left. The right eye moves right.
21
+ */
22
+ rangeMapHorizontalOuter?: LookAtRangeMap;
23
+
24
+ /**
25
+ * Vertical downward movement. Both eyes move upwards
26
+ */
27
+ rangeMapVerticalDown?: LookAtRangeMap;
28
+
29
+ /**
30
+ * Vertical upward movement. Both eyes move downwards
31
+ */
32
+ rangeMapVerticalUp?: LookAtRangeMap;
33
+
34
+ extensions?: { [name: string]: any };
35
+ extras?: any;
31
36
  }
@@ -2,16 +2,16 @@
2
2
  * Horizontal inward movement. The left eye moves right. The right eye moves left.
3
3
  */
4
4
  export interface LookAtRangeMap {
5
- /**
6
- * Yaw and pitch angles ( degrees ) between the head bone forward vector and the eye gaze LookAt vector
7
- */
8
- inputMaxValue?: number;
9
- /**
10
- * Degree for type.bone, Weight for type.expressions
11
- */
12
- outputScale?: number;
13
- extensions?: {
14
- [name: string]: any;
15
- };
16
- extras?: any;
5
+ /**
6
+ * Yaw and pitch angles ( degrees ) between the head bone forward vector and the eye gaze LookAt vector
7
+ */
8
+ inputMaxValue?: number;
9
+
10
+ /**
11
+ * Degree for type.bone, Weight for type.expressions
12
+ */
13
+ outputScale?: number;
14
+
15
+ extensions?: { [name: string]: any };
16
+ extras?: any;
17
17
  }
package/types/Meta.d.ts CHANGED
@@ -1,82 +1,99 @@
1
1
  export interface Meta {
2
- /**
3
- * The name of the model
4
- */
5
- name: string;
6
- /**
7
- * The version of the model
8
- */
9
- version?: string;
10
- /**
11
- * Authos of the model
12
- */
13
- authors: string[];
14
- /**
15
- * An information that describes the copyright of the model
16
- */
17
- copyrightInformation?: string;
18
- /**
19
- * An information that describes the contact information of the author
20
- */
21
- contactInformation?: string;
22
- /**
23
- * References / original works of the model
24
- */
25
- references?: string[];
26
- /**
27
- * Third party licenses of the model, if required. You can use line breaks
28
- */
29
- thirdPartyLicenses?: string;
30
- /**
31
- * The index to the thumbnail image of the model in gltf.images
32
- */
33
- thumbnailImage?: number;
34
- /**
35
- * A URL towards the license document this model refers to
36
- */
37
- licenseUrl: string;
38
- /**
39
- * A person who can perform as an avatar with this model
40
- */
41
- avatarPermission?: 'onlyAuthor' | 'onlySeparatelyLicensedPerson' | 'everyone';
42
- /**
43
- * A flag that permits to use this model in excessively violent contents
44
- */
45
- allowExcessivelyViolentUsage?: boolean;
46
- /**
47
- * A flag that permits to use this model in excessively sexual contents
48
- */
49
- allowExcessivelySexualUsage?: boolean;
50
- /**
51
- * An option that permits to use this model in commercial products
52
- */
53
- commercialUsage?: 'personalNonProfit' | 'personalProfit' | 'corporation';
54
- /**
55
- * A flag that permits to use this model in political or religious contents
56
- */
57
- allowPoliticalOrReligiousUsage?: boolean;
58
- /**
59
- * A flag that permits to use this model in contents contain anti-social activities or hate speeches
60
- */
61
- allowAntisocialOrHateUsage?: boolean;
62
- /**
63
- * An option that forces or abandons to display the credit of this model
64
- */
65
- creditNotation?: 'required' | 'unnecessary';
66
- /**
67
- * A flag that permits to redistribute this model
68
- */
69
- allowRedistribution?: boolean;
70
- /**
71
- * An option that controls the condition to modify this model
72
- */
73
- modification?: 'prohibited' | 'allowModification' | 'allowModificationRedistribution';
74
- /**
75
- * Describe the URL links of other license
76
- */
77
- otherLicenseUrl?: string;
78
- extensions?: {
79
- [name: string]: any;
80
- };
81
- extras?: any;
2
+ /**
3
+ * The name of the model
4
+ */
5
+ name: string;
6
+
7
+ /**
8
+ * The version of the model
9
+ */
10
+ version?: string;
11
+
12
+ /**
13
+ * Authos of the model
14
+ */
15
+ authors: string[];
16
+
17
+ /**
18
+ * An information that describes the copyright of the model
19
+ */
20
+ copyrightInformation?: string;
21
+
22
+ /**
23
+ * An information that describes the contact information of the author
24
+ */
25
+ contactInformation?: string;
26
+
27
+ /**
28
+ * References / original works of the model
29
+ */
30
+ references?: string[];
31
+
32
+ /**
33
+ * Third party licenses of the model, if required. You can use line breaks
34
+ */
35
+ thirdPartyLicenses?: string;
36
+
37
+ /**
38
+ * The index to the thumbnail image of the model in gltf.images
39
+ */
40
+ thumbnailImage?: number;
41
+
42
+ /**
43
+ * A URL towards the license document this model refers to
44
+ */
45
+ licenseUrl: string;
46
+
47
+ /**
48
+ * A person who can perform as an avatar with this model
49
+ */
50
+ avatarPermission?: 'onlyAuthor' | 'onlySeparatelyLicensedPerson' | 'everyone';
51
+
52
+ /**
53
+ * A flag that permits to use this model in excessively violent contents
54
+ */
55
+ allowExcessivelyViolentUsage?: boolean;
56
+
57
+ /**
58
+ * A flag that permits to use this model in excessively sexual contents
59
+ */
60
+ allowExcessivelySexualUsage?: boolean;
61
+
62
+ /**
63
+ * An option that permits to use this model in commercial products
64
+ */
65
+ commercialUsage?: 'personalNonProfit' | 'personalProfit' | 'corporation';
66
+
67
+ /**
68
+ * A flag that permits to use this model in political or religious contents
69
+ */
70
+ allowPoliticalOrReligiousUsage?: boolean;
71
+
72
+ /**
73
+ * A flag that permits to use this model in contents contain anti-social activities or hate speeches
74
+ */
75
+ allowAntisocialOrHateUsage?: boolean;
76
+
77
+ /**
78
+ * An option that forces or abandons to display the credit of this model
79
+ */
80
+ creditNotation?: 'required' | 'unnecessary';
81
+
82
+ /**
83
+ * A flag that permits to redistribute this model
84
+ */
85
+ allowRedistribution?: boolean;
86
+
87
+ /**
88
+ * An option that controls the condition to modify this model
89
+ */
90
+ modification?: 'prohibited' | 'allowModification' | 'allowModificationRedistribution';
91
+
92
+ /**
93
+ * Describe the URL links of other license
94
+ */
95
+ otherLicenseUrl?: string;
96
+
97
+ extensions?: { [name: string]: any };
98
+ extras?: any;
82
99
  }
@@ -3,27 +3,32 @@ import type { FirstPerson } from './FirstPerson';
3
3
  import type { Humanoid } from './Humanoid';
4
4
  import type { LookAt } from './LookAt';
5
5
  import type { Meta } from './Meta';
6
+
6
7
  export interface VRMCVRM {
7
- /**
8
- * Specification version of VRMC_vrm
9
- */
10
- specVersion: '1.0' | '1.0-beta';
11
- /**
12
- * Meta informations of the VRM model
13
- */
14
- meta: Meta;
15
- humanoid: Humanoid;
16
- /**
17
- * First-person perspective settings
18
- */
19
- firstPerson?: FirstPerson;
20
- /**
21
- * Eye gaze control
22
- */
23
- lookAt?: LookAt;
24
- expressions?: Expressions;
25
- extensions?: {
26
- [name: string]: any;
27
- };
28
- extras?: any;
8
+ /**
9
+ * Specification version of VRMC_vrm
10
+ */
11
+ specVersion: '1.0' | '1.0-beta';
12
+
13
+ /**
14
+ * Meta informations of the VRM model
15
+ */
16
+ meta: Meta;
17
+
18
+ humanoid: Humanoid;
19
+
20
+ /**
21
+ * First-person perspective settings
22
+ */
23
+ firstPerson?: FirstPerson;
24
+
25
+ /**
26
+ * Eye gaze control
27
+ */
28
+ lookAt?: LookAt;
29
+
30
+ expressions?: Expressions;
31
+
32
+ extensions?: { [name: string]: any };
33
+ extras?: any;
29
34
  }
@@ -1,50 +0,0 @@
1
- import { ExpressionMaterialColorBind } from './ExpressionMaterialColorBind';
2
- import { ExpressionMorphTargetBind } from './ExpressionMorphTargetBind';
3
- import { ExpressionOverrideType } from './ExpressionOverrideType';
4
- import { ExpressionPresetName } from './ExpressionPresetName';
5
- import { ExpressionTextureTransformBind } from './ExpressionTextureTransformBind';
6
- /**
7
- * Definition of expression by weighted animation
8
- */
9
- export interface Expression {
10
- /**
11
- * Use only if the preset is custom. Unique within the model
12
- */
13
- name?: string;
14
- /**
15
- * Functions of Expression
16
- */
17
- preset: ExpressionPresetName;
18
- /**
19
- * Specify a morph target
20
- */
21
- morphTargetBinds?: ExpressionMorphTargetBind[];
22
- /**
23
- * Material color animation references
24
- */
25
- materialColorBinds?: ExpressionMaterialColorBind[];
26
- /**
27
- * Texture transform animation references
28
- */
29
- textureTransformBinds?: ExpressionTextureTransformBind[];
30
- /**
31
- * A value greater than 0.5 is 1.0, otherwise 0.0
32
- */
33
- isBinary?: boolean;
34
- /**
35
- * Override values of Blink expressions when this Expression is enabled
36
- */
37
- overrideBlink?: ExpressionOverrideType;
38
- /**
39
- * Override values of LookAt expressions when this Expression is enabled
40
- */
41
- overrideLookAt?: ExpressionOverrideType;
42
- /**
43
- * Override values of Mouth expressions when this Expression is enabled
44
- */
45
- overrideMouth?: ExpressionOverrideType;
46
- extensions?: {
47
- [name: string]: any;
48
- };
49
- extras?: any;
50
- }
@@ -1,21 +0,0 @@
1
- import { ExpressionMaterialColorType } from './ExpressionMaterialColorType';
2
- export interface ExpressionMaterialColorBind {
3
- /**
4
- * target material
5
- */
6
- material: number;
7
- type: ExpressionMaterialColorType;
8
- /**
9
- * target color
10
- */
11
- targetValue: [
12
- number,
13
- number,
14
- number,
15
- number
16
- ];
17
- extensions?: {
18
- [name: string]: any;
19
- };
20
- extras?: any;
21
- }
@@ -1 +0,0 @@
1
- export type ExpressionMaterialColorType = 'color' | 'emissionColor' | 'shadeColor' | 'matcapColor' | 'rimColor' | 'outlineColor';
@@ -1,21 +0,0 @@
1
- /**
2
- * Morph target value associated with a expression
3
- */
4
- export interface ExpressionMorphTargetBind {
5
- /**
6
- * The index of the node that attached to target mesh.
7
- */
8
- node: number;
9
- /**
10
- * The index of the morph target in the mesh.
11
- */
12
- index: number;
13
- /**
14
- * The weight value of target morph target.
15
- */
16
- weight: number;
17
- extensions?: {
18
- [name: string]: any;
19
- };
20
- extras?: any;
21
- }
@@ -1 +0,0 @@
1
- export type ExpressionOverrideType = 'none' | 'block' | 'blend';
@@ -1 +0,0 @@
1
- export type ExpressionPresetName = 'happy' | 'angry' | 'sad' | 'relaxed' | 'surprised' | 'aa' | 'ih' | 'ou' | 'ee' | 'oh' | 'blink' | 'blinkLeft' | 'blinkRight' | 'lookUp' | 'lookDown' | 'lookLeft' | 'lookRight' | 'neutral';
@@ -1,24 +0,0 @@
1
- export interface ExpressionTextureTransformBind {
2
- /**
3
- * target material
4
- */
5
- material: number;
6
- /**
7
- * uv scale for TEXCOORD_0
8
- */
9
- scale?: [
10
- number,
11
- number
12
- ];
13
- /**
14
- * uv offset for TEXCOORD_0
15
- */
16
- offset?: [
17
- number,
18
- number
19
- ];
20
- extensions?: {
21
- [name: string]: any;
22
- };
23
- extras?: any;
24
- }
@@ -1,10 +0,0 @@
1
- import { Expression } from './Expression';
2
- import { ExpressionPresetName } from './ExpressionPresetName';
3
- export interface Expressions {
4
- preset?: {
5
- [preset in ExpressionPresetName]?: Expression;
6
- };
7
- custom?: {
8
- [key: string]: Expression;
9
- };
10
- }
@@ -1,14 +0,0 @@
1
- import { FirstPersonMeshAnnotation } from './FirstPersonMeshAnnotation';
2
- /**
3
- * First-person perspective settings
4
- */
5
- export interface FirstPerson {
6
- /**
7
- * Mesh rendering annotation for cameras
8
- */
9
- meshAnnotations?: FirstPersonMeshAnnotation[];
10
- extensions?: {
11
- [name: string]: any;
12
- };
13
- extras?: any;
14
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * Specify how the mesh should be interpreted by the camera
3
- */
4
- export interface FirstPersonMeshAnnotation {
5
- /**
6
- * The index of the node that attached to target mesh.
7
- */
8
- node: number;
9
- /**
10
- * How the camera interprets the mesh.
11
- */
12
- type: 'auto' | 'both' | 'thirdPersonOnly' | 'firstPersonOnly';
13
- extensions?: {
14
- [name: string]: any;
15
- };
16
- extras?: any;
17
- }
@@ -1,11 +0,0 @@
1
- import { HumanoidHumanBones } from './HumanoidHumanBones';
2
- /**
3
- * Correspondence between nodes and human bones
4
- */
5
- export interface Humanoid {
6
- humanBones: HumanoidHumanBones;
7
- extensions?: {
8
- [name: string]: any;
9
- };
10
- extras?: any;
11
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * Represents a single bone of a Humanoid.
3
- */
4
- export interface HumanoidHumanBone {
5
- /**
6
- * Represents a single glTF node tied to this humanBone.
7
- */
8
- node: number;
9
- extensions?: {
10
- [name: string]: any;
11
- };
12
- extras?: any;
13
- }
@@ -1 +0,0 @@
1
- export type HumanoidHumanBoneName = 'hips' | 'spine' | 'chest' | 'upperChest' | 'neck' | 'head' | 'leftEye' | 'rightEye' | 'jaw' | 'leftUpperLeg' | 'leftLowerLeg' | 'leftFoot' | 'leftToes' | 'rightUpperLeg' | 'rightLowerLeg' | 'rightFoot' | 'rightToes' | 'leftShoulder' | 'leftUpperArm' | 'leftLowerArm' | 'leftHand' | 'rightShoulder' | 'rightUpperArm' | 'rightLowerArm' | 'rightHand' | 'leftThumbMetacarpal' | 'leftThumbProximal' | 'leftThumbDistal' | 'leftIndexProximal' | 'leftIndexIntermediate' | 'leftIndexDistal' | 'leftMiddleProximal' | 'leftMiddleIntermediate' | 'leftMiddleDistal' | 'leftRingProximal' | 'leftRingIntermediate' | 'leftRingDistal' | 'leftLittleProximal' | 'leftLittleIntermediate' | 'leftLittleDistal' | 'rightThumbMetacarpal' | 'rightThumbProximal' | 'rightThumbDistal' | 'rightIndexProximal' | 'rightIndexIntermediate' | 'rightIndexDistal' | 'rightMiddleProximal' | 'rightMiddleIntermediate' | 'rightMiddleDistal' | 'rightRingProximal' | 'rightRingIntermediate' | 'rightRingDistal' | 'rightLittleProximal' | 'rightLittleIntermediate' | 'rightLittleDistal';
@@ -1,8 +0,0 @@
1
- import { HumanoidHumanBone } from './HumanoidHumanBone';
2
- import { HumanoidHumanBoneName } from './HumanoidHumanBoneName';
3
- /**
4
- * Represents a set of humanBones of a humanoid.
5
- */
6
- export type HumanoidHumanBones = {
7
- [key in HumanoidHumanBoneName]?: HumanoidHumanBone;
8
- };
@@ -1,31 +0,0 @@
1
- import { LookAtRangeMap } from './LookAtRangeMap';
2
- /**
3
- * Eye gaze control
4
- */
5
- export interface LookAt {
6
- /**
7
- * The origin of LookAt. Position offset from the head bone
8
- */
9
- offsetFromHeadBone?: number[];
10
- type?: 'bone' | 'expression';
11
- /**
12
- * Horizontal inward movement. The left eye moves right. The right eye moves left.
13
- */
14
- rangeMapHorizontalInner?: LookAtRangeMap;
15
- /**
16
- * Horizontal outward movement. The left eye moves left. The right eye moves right.
17
- */
18
- rangeMapHorizontalOuter?: LookAtRangeMap;
19
- /**
20
- * Vertical downward movement. Both eyes move upwards
21
- */
22
- rangeMapVerticalDown?: LookAtRangeMap;
23
- /**
24
- * Vertical upward movement. Both eyes move downwards
25
- */
26
- rangeMapVerticalUp?: LookAtRangeMap;
27
- extensions?: {
28
- [name: string]: any;
29
- };
30
- extras?: any;
31
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * Horizontal inward movement. The left eye moves right. The right eye moves left.
3
- */
4
- export interface LookAtRangeMap {
5
- /**
6
- * Yaw and pitch angles ( degrees ) between the head bone forward vector and the eye gaze LookAt vector
7
- */
8
- inputMaxValue?: number;
9
- /**
10
- * Degree for type.bone, Weight for type.expressions
11
- */
12
- outputScale?: number;
13
- extensions?: {
14
- [name: string]: any;
15
- };
16
- extras?: any;
17
- }
@@ -1,82 +0,0 @@
1
- export interface Meta {
2
- /**
3
- * The name of the model
4
- */
5
- name: string;
6
- /**
7
- * The version of the model
8
- */
9
- version?: string;
10
- /**
11
- * Authos of the model
12
- */
13
- authors: string[];
14
- /**
15
- * An information that describes the copyright of the model
16
- */
17
- copyrightInformation?: string;
18
- /**
19
- * An information that describes the contact information of the author
20
- */
21
- contactInformation?: string;
22
- /**
23
- * References / original works of the model
24
- */
25
- references?: string[];
26
- /**
27
- * Third party licenses of the model, if required. You can use line breaks
28
- */
29
- thirdPartyLicenses?: string;
30
- /**
31
- * The index to the thumbnail image of the model in gltf.images
32
- */
33
- thumbnailImage?: number;
34
- /**
35
- * A URL towards the license document this model refers to
36
- */
37
- licenseUrl: string;
38
- /**
39
- * A person who can perform as an avatar with this model
40
- */
41
- avatarPermission?: 'onlyAuthor' | 'onlySeparatelyLicensedPerson' | 'everyone';
42
- /**
43
- * A flag that permits to use this model in excessively violent contents
44
- */
45
- allowExcessivelyViolentUsage?: boolean;
46
- /**
47
- * A flag that permits to use this model in excessively sexual contents
48
- */
49
- allowExcessivelySexualUsage?: boolean;
50
- /**
51
- * An option that permits to use this model in commercial products
52
- */
53
- commercialUsage?: 'personalNonProfit' | 'personalProfit' | 'corporation';
54
- /**
55
- * A flag that permits to use this model in political or religious contents
56
- */
57
- allowPoliticalOrReligiousUsage?: boolean;
58
- /**
59
- * A flag that permits to use this model in contents contain anti-social activities or hate speeches
60
- */
61
- allowAntisocialOrHateUsage?: boolean;
62
- /**
63
- * An option that forces or abandons to display the credit of this model
64
- */
65
- creditNotation?: 'required' | 'unnecessary';
66
- /**
67
- * A flag that permits to redistribute this model
68
- */
69
- allowRedistribution?: boolean;
70
- /**
71
- * An option that controls the condition to modify this model
72
- */
73
- modification?: 'prohibited' | 'allowModification' | 'allowModificationRedistribution';
74
- /**
75
- * Describe the URL links of other license
76
- */
77
- otherLicenseUrl?: string;
78
- extensions?: {
79
- [name: string]: any;
80
- };
81
- extras?: any;
82
- }
@@ -1,29 +0,0 @@
1
- import { Expressions } from './Expressions';
2
- import { FirstPerson } from './FirstPerson';
3
- import { Humanoid } from './Humanoid';
4
- import { LookAt } from './LookAt';
5
- import { Meta } from './Meta';
6
- export interface VRMCVRM {
7
- /**
8
- * Specification version of VRMC_vrm
9
- */
10
- specVersion: '1.0' | '1.0-beta';
11
- /**
12
- * Meta informations of the VRM model
13
- */
14
- meta: Meta;
15
- humanoid: Humanoid;
16
- /**
17
- * First-person perspective settings
18
- */
19
- firstPerson?: FirstPerson;
20
- /**
21
- * Eye gaze control
22
- */
23
- lookAt?: LookAt;
24
- expressions?: Expressions;
25
- extensions?: {
26
- [name: string]: any;
27
- };
28
- extras?: any;
29
- }
@@ -1,18 +0,0 @@
1
- export { Expression } from './Expression';
2
- export { ExpressionMaterialColorBind } from './ExpressionMaterialColorBind';
3
- export { ExpressionMaterialColorType } from './ExpressionMaterialColorType';
4
- export { ExpressionMorphTargetBind } from './ExpressionMorphTargetBind';
5
- export { ExpressionOverrideType } from './ExpressionOverrideType';
6
- export { ExpressionPresetName } from './ExpressionPresetName';
7
- export { Expressions } from './Expressions';
8
- export { ExpressionTextureTransformBind } from './ExpressionTextureTransformBind';
9
- export { FirstPerson } from './FirstPerson';
10
- export { FirstPersonMeshAnnotation } from './FirstPersonMeshAnnotation';
11
- export { Humanoid } from './Humanoid';
12
- export { HumanoidHumanBone } from './HumanoidHumanBone';
13
- export { HumanoidHumanBoneName } from './HumanoidHumanBoneName';
14
- export { HumanoidHumanBones } from './HumanoidHumanBones';
15
- export { LookAt } from './LookAt';
16
- export { LookAtRangeMap } from './LookAtRangeMap';
17
- export { Meta } from './Meta';
18
- export { VRMCVRM } from './VRMCVRM';