@lovelace_lol/loom3 1.0.28 → 1.0.30
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.
- package/README.md +3 -3
- package/dist/index.cjs +49 -37
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +18 -7
- package/dist/index.d.ts +18 -7
- package/dist/index.js +49 -38
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -61,6 +61,16 @@ declare const CC4_BONE_NODES: {
|
|
|
61
61
|
readonly NECK_TWIST: "NeckTwist02";
|
|
62
62
|
readonly JAW: "JawRoot";
|
|
63
63
|
readonly TONGUE: "Tongue01";
|
|
64
|
+
readonly SPINE_01: "Spine01";
|
|
65
|
+
readonly SPINE_02: "Spine02";
|
|
66
|
+
readonly CLAVICLE_L: "L_Clavicle";
|
|
67
|
+
readonly CLAVICLE_R: "R_Clavicle";
|
|
68
|
+
readonly HAND_L: "L_Hand";
|
|
69
|
+
readonly HAND_R: "R_Hand";
|
|
70
|
+
readonly FOOT_L: "L_Foot";
|
|
71
|
+
readonly FOOT_R: "R_Foot";
|
|
72
|
+
readonly TOEBASE_L: "L_ToeBase";
|
|
73
|
+
readonly TOEBASE_R: "R_ToeBase";
|
|
64
74
|
};
|
|
65
75
|
declare const CC4_EYE_MESH_NODES: {
|
|
66
76
|
readonly LEFT: "CC_Base_Eye";
|
|
@@ -740,7 +750,6 @@ interface AnnotationRegion {
|
|
|
740
750
|
parent?: string;
|
|
741
751
|
children?: string[];
|
|
742
752
|
expandAnimation?: 'outward' | 'staggered';
|
|
743
|
-
showChildConnections?: boolean;
|
|
744
753
|
style?: {
|
|
745
754
|
markerColor?: number;
|
|
746
755
|
markerRadius?: number;
|
|
@@ -1842,8 +1851,6 @@ interface Region {
|
|
|
1842
1851
|
children?: string[];
|
|
1843
1852
|
/** Animation style for expand/collapse. Default: 'outward' */
|
|
1844
1853
|
expandAnimation?: ExpandAnimation;
|
|
1845
|
-
/** Show connecting lines to children when expanded. Default: true */
|
|
1846
|
-
showChildConnections?: boolean;
|
|
1847
1854
|
/** Per-marker style overrides */
|
|
1848
1855
|
style?: MarkerStyleOverrides;
|
|
1849
1856
|
/** Marker group ID for fallback behavior */
|
|
@@ -1932,15 +1939,19 @@ declare function mergeRegionsByName(base?: Region[], override?: Region[]): Regio
|
|
|
1932
1939
|
declare function extractProfileOverrides(config: CharacterConfig): Partial<Profile>;
|
|
1933
1940
|
declare function applyCharacterProfileToPreset(config: CharacterConfig): Profile | null;
|
|
1934
1941
|
/**
|
|
1935
|
-
*
|
|
1936
|
-
*
|
|
1942
|
+
* Extend a saved character config with its selected preset so callers get one
|
|
1943
|
+
* canonical runtime object.
|
|
1937
1944
|
*
|
|
1938
1945
|
* Precedence:
|
|
1939
1946
|
* 1. preset defaults
|
|
1940
1947
|
* 2. flattened top-level profile overrides
|
|
1941
1948
|
* 3. legacy nested `config.profile` overrides (compatibility only)
|
|
1942
1949
|
* 4. top-level saved `config.regions` overrides by region name
|
|
1943
|
-
|
|
1950
|
+
*/
|
|
1951
|
+
declare function extendCharacterConfigWithPreset(config: CharacterConfig): CharacterConfig;
|
|
1952
|
+
/**
|
|
1953
|
+
* Backward-compatible alias for older integrations. Prefer
|
|
1954
|
+
* `extendCharacterConfigWithPreset(...)` at new call sites.
|
|
1944
1955
|
*/
|
|
1945
1956
|
declare function resolveCharacterConfig(config: CharacterConfig): CharacterConfig;
|
|
1946
1957
|
|
|
@@ -2382,4 +2393,4 @@ declare function detectFacingDirection(model: THREE.Object3D, eyeBoneNames?: {
|
|
|
2382
2393
|
right: string[];
|
|
2383
2394
|
}): 'forward' | 'backward' | 'unknown';
|
|
2384
2395
|
|
|
2385
|
-
export { type AUInfo, type AUSelector, AU_INFO, AU_MAPPING_CONFIG, AU_MIX_DEFAULTS, AU_TO_MORPHS, type AnalyzeModelOptions, type Animation, type AnimationActionHandle, type AnimationAnalysis, type AnimationBlendMode, type AnimationClipInfo, type AnimationEasing, type AnimationInfo, type AnimationPlayOptions, type AnimationSource, type AnimationState, AnimationThree, BETTA_FISH_PRESET, BLENDING_MODES, BONE_AU_TO_BINDINGS, type BlendingMode, type BoneBinding, type BoneInfo, type BoneKey, CC4_BONE_NODES, CC4_BONE_PREFIX, CC4_EYE_MESH_NODES, CC4_MESHES, CC4_PRESET, CC4_SUFFIX_PATTERN, COMPOSITE_ROTATIONS, CONTINUUM_LABELS, CONTINUUM_PAIRS_MAP, type CharacterConfig, type CharacterRegistry, type ClipHandle, type ClipOptions, type CompositeRotation, type CompositeRotationState, type CurvePoint, type CurvesMap, DEFAULT_HAIR_PHYSICS_CONFIG, type ExpandAnimation, type ExpandedRegionState, FISH_AU_MAPPING_CONFIG, type FaceCenterResult, type FallbackConfig, type FindFaceCenterOptions, type Hair, type HairMorphAxis, type HairMorphOutput$1 as HairMorphOutput, type HairMorphTargetMapping, type HairMorphTargetValueMapping, type HairMorphTargetsConfig, type HairObjectRef, type HairObjectState, HairPhysics, type HairPhysicsConfig$1 as HairPhysicsConfig, type HairPhysicsDirectionConfig, type HairPhysics$1 as HairPhysicsInterface, type HairMorphOutput as HairPhysicsMorphOutput, type HairPhysicsProfileConfig, type HairPhysicsRuntimeConfig, type HairPhysicsRuntimeConfigUpdate, type HairPhysicsState, type HairState, type HairStrand, type HeadState$1 as HeadState, type LineConfig, type LineCurve, type LineStyle, Loom3, type Loom3Config, Loom3 as Loom3Three, type LoomLarge, type LoomLargeConfig, Loom3 as LoomLargeThree, MORPH_TO_MESH, type MappingConsistencyResult, type MappingCorrection, type MappingCorrectionOptions, type MappingCorrectionResult, type MappingIssue, type MarkerGroup, type MarkerStyle, type MarkerStyleOverrides, type MeshCategory, type MeshInfo, type MeshMaterialSettings, type MixerLoopMode, type ModelAnalysisReport, type ModelData, type ModelMeshInfo, type MorphCategory, type MorphInfo, type MorphTargetRef, type MorphTargetsBySide, type NamedDirection, type PresetType, type Profile, type ReadyPayload, type Region, type RotationAxis, type RotationsState, type Snippet, type TrackInfo, type TransitionHandle, VISEME_JAW_AMOUNTS, VISEME_KEYS, type ValidateMappingOptions, type ValidationResult, analyzeModel, applyCharacterProfileToPreset, applyProfileToPreset, collectMorphMeshes, detectFacingDirection, extractFromGLTF, extractModelData, extractProfileOverrides, findFaceCenter, fuzzyNameMatch, generateMappingCorrections, getModelForwardDirection, hasLeftRightMorphs, isMixedAU, isPresetCompatible, mergeRegionsByName as mergeCharacterRegionsByName, resolveBoneName, resolveBoneNames, resolveCharacterConfig, resolveFaceCenter, resolvePreset, resolvePresetWithOverrides, resolveProfile, suggestBestPreset, validateMappingConfig, validateMappings };
|
|
2396
|
+
export { type AUInfo, type AUSelector, AU_INFO, AU_MAPPING_CONFIG, AU_MIX_DEFAULTS, AU_TO_MORPHS, type AnalyzeModelOptions, type Animation, type AnimationActionHandle, type AnimationAnalysis, type AnimationBlendMode, type AnimationClipInfo, type AnimationEasing, type AnimationInfo, type AnimationPlayOptions, type AnimationSource, type AnimationState, AnimationThree, BETTA_FISH_PRESET, BLENDING_MODES, BONE_AU_TO_BINDINGS, type BlendingMode, type BoneBinding, type BoneInfo, type BoneKey, CC4_BONE_NODES, CC4_BONE_PREFIX, CC4_EYE_MESH_NODES, CC4_MESHES, CC4_PRESET, CC4_SUFFIX_PATTERN, COMPOSITE_ROTATIONS, CONTINUUM_LABELS, CONTINUUM_PAIRS_MAP, type CharacterConfig, type CharacterRegistry, type ClipHandle, type ClipOptions, type CompositeRotation, type CompositeRotationState, type CurvePoint, type CurvesMap, DEFAULT_HAIR_PHYSICS_CONFIG, type ExpandAnimation, type ExpandedRegionState, FISH_AU_MAPPING_CONFIG, type FaceCenterResult, type FallbackConfig, type FindFaceCenterOptions, type Hair, type HairMorphAxis, type HairMorphOutput$1 as HairMorphOutput, type HairMorphTargetMapping, type HairMorphTargetValueMapping, type HairMorphTargetsConfig, type HairObjectRef, type HairObjectState, HairPhysics, type HairPhysicsConfig$1 as HairPhysicsConfig, type HairPhysicsDirectionConfig, type HairPhysics$1 as HairPhysicsInterface, type HairMorphOutput as HairPhysicsMorphOutput, type HairPhysicsProfileConfig, type HairPhysicsRuntimeConfig, type HairPhysicsRuntimeConfigUpdate, type HairPhysicsState, type HairState, type HairStrand, type HeadState$1 as HeadState, type LineConfig, type LineCurve, type LineStyle, Loom3, type Loom3Config, Loom3 as Loom3Three, type LoomLarge, type LoomLargeConfig, Loom3 as LoomLargeThree, MORPH_TO_MESH, type MappingConsistencyResult, type MappingCorrection, type MappingCorrectionOptions, type MappingCorrectionResult, type MappingIssue, type MarkerGroup, type MarkerStyle, type MarkerStyleOverrides, type MeshCategory, type MeshInfo, type MeshMaterialSettings, type MixerLoopMode, type ModelAnalysisReport, type ModelData, type ModelMeshInfo, type MorphCategory, type MorphInfo, type MorphTargetRef, type MorphTargetsBySide, type NamedDirection, type PresetType, type Profile, type ReadyPayload, type Region, type RotationAxis, type RotationsState, type Snippet, type TrackInfo, type TransitionHandle, VISEME_JAW_AMOUNTS, VISEME_KEYS, type ValidateMappingOptions, type ValidationResult, analyzeModel, applyCharacterProfileToPreset, applyProfileToPreset, collectMorphMeshes, detectFacingDirection, extendCharacterConfigWithPreset, extractFromGLTF, extractModelData, extractProfileOverrides, findFaceCenter, fuzzyNameMatch, generateMappingCorrections, getModelForwardDirection, hasLeftRightMorphs, isMixedAU, isPresetCompatible, mergeRegionsByName as mergeCharacterRegionsByName, resolveBoneName, resolveBoneNames, resolveCharacterConfig, resolveFaceCenter, resolvePreset, resolvePresetWithOverrides, resolveProfile, suggestBestPreset, validateMappingConfig, validateMappings };
|
package/dist/index.d.ts
CHANGED
|
@@ -61,6 +61,16 @@ declare const CC4_BONE_NODES: {
|
|
|
61
61
|
readonly NECK_TWIST: "NeckTwist02";
|
|
62
62
|
readonly JAW: "JawRoot";
|
|
63
63
|
readonly TONGUE: "Tongue01";
|
|
64
|
+
readonly SPINE_01: "Spine01";
|
|
65
|
+
readonly SPINE_02: "Spine02";
|
|
66
|
+
readonly CLAVICLE_L: "L_Clavicle";
|
|
67
|
+
readonly CLAVICLE_R: "R_Clavicle";
|
|
68
|
+
readonly HAND_L: "L_Hand";
|
|
69
|
+
readonly HAND_R: "R_Hand";
|
|
70
|
+
readonly FOOT_L: "L_Foot";
|
|
71
|
+
readonly FOOT_R: "R_Foot";
|
|
72
|
+
readonly TOEBASE_L: "L_ToeBase";
|
|
73
|
+
readonly TOEBASE_R: "R_ToeBase";
|
|
64
74
|
};
|
|
65
75
|
declare const CC4_EYE_MESH_NODES: {
|
|
66
76
|
readonly LEFT: "CC_Base_Eye";
|
|
@@ -740,7 +750,6 @@ interface AnnotationRegion {
|
|
|
740
750
|
parent?: string;
|
|
741
751
|
children?: string[];
|
|
742
752
|
expandAnimation?: 'outward' | 'staggered';
|
|
743
|
-
showChildConnections?: boolean;
|
|
744
753
|
style?: {
|
|
745
754
|
markerColor?: number;
|
|
746
755
|
markerRadius?: number;
|
|
@@ -1842,8 +1851,6 @@ interface Region {
|
|
|
1842
1851
|
children?: string[];
|
|
1843
1852
|
/** Animation style for expand/collapse. Default: 'outward' */
|
|
1844
1853
|
expandAnimation?: ExpandAnimation;
|
|
1845
|
-
/** Show connecting lines to children when expanded. Default: true */
|
|
1846
|
-
showChildConnections?: boolean;
|
|
1847
1854
|
/** Per-marker style overrides */
|
|
1848
1855
|
style?: MarkerStyleOverrides;
|
|
1849
1856
|
/** Marker group ID for fallback behavior */
|
|
@@ -1932,15 +1939,19 @@ declare function mergeRegionsByName(base?: Region[], override?: Region[]): Regio
|
|
|
1932
1939
|
declare function extractProfileOverrides(config: CharacterConfig): Partial<Profile>;
|
|
1933
1940
|
declare function applyCharacterProfileToPreset(config: CharacterConfig): Profile | null;
|
|
1934
1941
|
/**
|
|
1935
|
-
*
|
|
1936
|
-
*
|
|
1942
|
+
* Extend a saved character config with its selected preset so callers get one
|
|
1943
|
+
* canonical runtime object.
|
|
1937
1944
|
*
|
|
1938
1945
|
* Precedence:
|
|
1939
1946
|
* 1. preset defaults
|
|
1940
1947
|
* 2. flattened top-level profile overrides
|
|
1941
1948
|
* 3. legacy nested `config.profile` overrides (compatibility only)
|
|
1942
1949
|
* 4. top-level saved `config.regions` overrides by region name
|
|
1943
|
-
|
|
1950
|
+
*/
|
|
1951
|
+
declare function extendCharacterConfigWithPreset(config: CharacterConfig): CharacterConfig;
|
|
1952
|
+
/**
|
|
1953
|
+
* Backward-compatible alias for older integrations. Prefer
|
|
1954
|
+
* `extendCharacterConfigWithPreset(...)` at new call sites.
|
|
1944
1955
|
*/
|
|
1945
1956
|
declare function resolveCharacterConfig(config: CharacterConfig): CharacterConfig;
|
|
1946
1957
|
|
|
@@ -2382,4 +2393,4 @@ declare function detectFacingDirection(model: THREE.Object3D, eyeBoneNames?: {
|
|
|
2382
2393
|
right: string[];
|
|
2383
2394
|
}): 'forward' | 'backward' | 'unknown';
|
|
2384
2395
|
|
|
2385
|
-
export { type AUInfo, type AUSelector, AU_INFO, AU_MAPPING_CONFIG, AU_MIX_DEFAULTS, AU_TO_MORPHS, type AnalyzeModelOptions, type Animation, type AnimationActionHandle, type AnimationAnalysis, type AnimationBlendMode, type AnimationClipInfo, type AnimationEasing, type AnimationInfo, type AnimationPlayOptions, type AnimationSource, type AnimationState, AnimationThree, BETTA_FISH_PRESET, BLENDING_MODES, BONE_AU_TO_BINDINGS, type BlendingMode, type BoneBinding, type BoneInfo, type BoneKey, CC4_BONE_NODES, CC4_BONE_PREFIX, CC4_EYE_MESH_NODES, CC4_MESHES, CC4_PRESET, CC4_SUFFIX_PATTERN, COMPOSITE_ROTATIONS, CONTINUUM_LABELS, CONTINUUM_PAIRS_MAP, type CharacterConfig, type CharacterRegistry, type ClipHandle, type ClipOptions, type CompositeRotation, type CompositeRotationState, type CurvePoint, type CurvesMap, DEFAULT_HAIR_PHYSICS_CONFIG, type ExpandAnimation, type ExpandedRegionState, FISH_AU_MAPPING_CONFIG, type FaceCenterResult, type FallbackConfig, type FindFaceCenterOptions, type Hair, type HairMorphAxis, type HairMorphOutput$1 as HairMorphOutput, type HairMorphTargetMapping, type HairMorphTargetValueMapping, type HairMorphTargetsConfig, type HairObjectRef, type HairObjectState, HairPhysics, type HairPhysicsConfig$1 as HairPhysicsConfig, type HairPhysicsDirectionConfig, type HairPhysics$1 as HairPhysicsInterface, type HairMorphOutput as HairPhysicsMorphOutput, type HairPhysicsProfileConfig, type HairPhysicsRuntimeConfig, type HairPhysicsRuntimeConfigUpdate, type HairPhysicsState, type HairState, type HairStrand, type HeadState$1 as HeadState, type LineConfig, type LineCurve, type LineStyle, Loom3, type Loom3Config, Loom3 as Loom3Three, type LoomLarge, type LoomLargeConfig, Loom3 as LoomLargeThree, MORPH_TO_MESH, type MappingConsistencyResult, type MappingCorrection, type MappingCorrectionOptions, type MappingCorrectionResult, type MappingIssue, type MarkerGroup, type MarkerStyle, type MarkerStyleOverrides, type MeshCategory, type MeshInfo, type MeshMaterialSettings, type MixerLoopMode, type ModelAnalysisReport, type ModelData, type ModelMeshInfo, type MorphCategory, type MorphInfo, type MorphTargetRef, type MorphTargetsBySide, type NamedDirection, type PresetType, type Profile, type ReadyPayload, type Region, type RotationAxis, type RotationsState, type Snippet, type TrackInfo, type TransitionHandle, VISEME_JAW_AMOUNTS, VISEME_KEYS, type ValidateMappingOptions, type ValidationResult, analyzeModel, applyCharacterProfileToPreset, applyProfileToPreset, collectMorphMeshes, detectFacingDirection, extractFromGLTF, extractModelData, extractProfileOverrides, findFaceCenter, fuzzyNameMatch, generateMappingCorrections, getModelForwardDirection, hasLeftRightMorphs, isMixedAU, isPresetCompatible, mergeRegionsByName as mergeCharacterRegionsByName, resolveBoneName, resolveBoneNames, resolveCharacterConfig, resolveFaceCenter, resolvePreset, resolvePresetWithOverrides, resolveProfile, suggestBestPreset, validateMappingConfig, validateMappings };
|
|
2396
|
+
export { type AUInfo, type AUSelector, AU_INFO, AU_MAPPING_CONFIG, AU_MIX_DEFAULTS, AU_TO_MORPHS, type AnalyzeModelOptions, type Animation, type AnimationActionHandle, type AnimationAnalysis, type AnimationBlendMode, type AnimationClipInfo, type AnimationEasing, type AnimationInfo, type AnimationPlayOptions, type AnimationSource, type AnimationState, AnimationThree, BETTA_FISH_PRESET, BLENDING_MODES, BONE_AU_TO_BINDINGS, type BlendingMode, type BoneBinding, type BoneInfo, type BoneKey, CC4_BONE_NODES, CC4_BONE_PREFIX, CC4_EYE_MESH_NODES, CC4_MESHES, CC4_PRESET, CC4_SUFFIX_PATTERN, COMPOSITE_ROTATIONS, CONTINUUM_LABELS, CONTINUUM_PAIRS_MAP, type CharacterConfig, type CharacterRegistry, type ClipHandle, type ClipOptions, type CompositeRotation, type CompositeRotationState, type CurvePoint, type CurvesMap, DEFAULT_HAIR_PHYSICS_CONFIG, type ExpandAnimation, type ExpandedRegionState, FISH_AU_MAPPING_CONFIG, type FaceCenterResult, type FallbackConfig, type FindFaceCenterOptions, type Hair, type HairMorphAxis, type HairMorphOutput$1 as HairMorphOutput, type HairMorphTargetMapping, type HairMorphTargetValueMapping, type HairMorphTargetsConfig, type HairObjectRef, type HairObjectState, HairPhysics, type HairPhysicsConfig$1 as HairPhysicsConfig, type HairPhysicsDirectionConfig, type HairPhysics$1 as HairPhysicsInterface, type HairMorphOutput as HairPhysicsMorphOutput, type HairPhysicsProfileConfig, type HairPhysicsRuntimeConfig, type HairPhysicsRuntimeConfigUpdate, type HairPhysicsState, type HairState, type HairStrand, type HeadState$1 as HeadState, type LineConfig, type LineCurve, type LineStyle, Loom3, type Loom3Config, Loom3 as Loom3Three, type LoomLarge, type LoomLargeConfig, Loom3 as LoomLargeThree, MORPH_TO_MESH, type MappingConsistencyResult, type MappingCorrection, type MappingCorrectionOptions, type MappingCorrectionResult, type MappingIssue, type MarkerGroup, type MarkerStyle, type MarkerStyleOverrides, type MeshCategory, type MeshInfo, type MeshMaterialSettings, type MixerLoopMode, type ModelAnalysisReport, type ModelData, type ModelMeshInfo, type MorphCategory, type MorphInfo, type MorphTargetRef, type MorphTargetsBySide, type NamedDirection, type PresetType, type Profile, type ReadyPayload, type Region, type RotationAxis, type RotationsState, type Snippet, type TrackInfo, type TransitionHandle, VISEME_JAW_AMOUNTS, VISEME_KEYS, type ValidateMappingOptions, type ValidationResult, analyzeModel, applyCharacterProfileToPreset, applyProfileToPreset, collectMorphMeshes, detectFacingDirection, extendCharacterConfigWithPreset, extractFromGLTF, extractModelData, extractProfileOverrides, findFaceCenter, fuzzyNameMatch, generateMappingCorrections, getModelForwardDirection, hasLeftRightMorphs, isMixedAU, isPresetCompatible, mergeRegionsByName as mergeCharacterRegionsByName, resolveBoneName, resolveBoneNames, resolveCharacterConfig, resolveFaceCenter, resolvePreset, resolvePresetWithOverrides, resolveProfile, suggestBestPreset, validateMappingConfig, validateMappings };
|
package/dist/index.js
CHANGED
|
@@ -1866,7 +1866,17 @@ var CC4_BONE_NODES = {
|
|
|
1866
1866
|
NECK: "NeckTwist01",
|
|
1867
1867
|
NECK_TWIST: "NeckTwist02",
|
|
1868
1868
|
JAW: "JawRoot",
|
|
1869
|
-
TONGUE: "Tongue01"
|
|
1869
|
+
TONGUE: "Tongue01",
|
|
1870
|
+
SPINE_01: "Spine01",
|
|
1871
|
+
SPINE_02: "Spine02",
|
|
1872
|
+
CLAVICLE_L: "L_Clavicle",
|
|
1873
|
+
CLAVICLE_R: "R_Clavicle",
|
|
1874
|
+
HAND_L: "L_Hand",
|
|
1875
|
+
HAND_R: "R_Hand",
|
|
1876
|
+
FOOT_L: "L_Foot",
|
|
1877
|
+
FOOT_R: "R_Foot",
|
|
1878
|
+
TOEBASE_L: "L_ToeBase",
|
|
1879
|
+
TOEBASE_R: "R_ToeBase"
|
|
1870
1880
|
};
|
|
1871
1881
|
var CC4_EYE_MESH_NODES = {
|
|
1872
1882
|
LEFT: "CC_Base_Eye",
|
|
@@ -2104,74 +2114,73 @@ var CC4_PRESET = {
|
|
|
2104
2114
|
},
|
|
2105
2115
|
{
|
|
2106
2116
|
name: "head",
|
|
2107
|
-
bones: ["
|
|
2117
|
+
bones: ["HEAD", "JAW"],
|
|
2108
2118
|
paddingFactor: 1.5,
|
|
2109
2119
|
children: ["face", "left_eye", "right_eye", "mouth"],
|
|
2110
|
-
expandAnimation: "staggered"
|
|
2111
|
-
showChildConnections: true
|
|
2120
|
+
expandAnimation: "staggered"
|
|
2112
2121
|
},
|
|
2113
2122
|
{
|
|
2114
2123
|
name: "face",
|
|
2115
|
-
bones: ["
|
|
2124
|
+
bones: ["HEAD"],
|
|
2116
2125
|
// meshes: populated by user selection in wizard - varies per character
|
|
2117
2126
|
paddingFactor: 1.3,
|
|
2118
2127
|
parent: "head"
|
|
2119
2128
|
},
|
|
2120
2129
|
{
|
|
2121
2130
|
name: "left_eye",
|
|
2122
|
-
bones: ["
|
|
2131
|
+
bones: ["EYE_L"],
|
|
2123
2132
|
paddingFactor: 0.9,
|
|
2124
2133
|
parent: "head"
|
|
2125
2134
|
},
|
|
2126
2135
|
{
|
|
2127
2136
|
name: "right_eye",
|
|
2128
|
-
bones: ["
|
|
2137
|
+
bones: ["EYE_R"],
|
|
2129
2138
|
paddingFactor: 0.9,
|
|
2130
2139
|
parent: "head"
|
|
2131
2140
|
},
|
|
2132
2141
|
{
|
|
2133
2142
|
name: "mouth",
|
|
2134
|
-
bones: ["
|
|
2143
|
+
bones: ["JAW"],
|
|
2135
2144
|
paddingFactor: 1.5,
|
|
2136
2145
|
parent: "head"
|
|
2137
2146
|
},
|
|
2138
2147
|
{
|
|
2139
2148
|
name: "upper_body",
|
|
2140
2149
|
bones: [
|
|
2141
|
-
"
|
|
2142
|
-
"
|
|
2143
|
-
"
|
|
2144
|
-
"
|
|
2150
|
+
"SPINE_02",
|
|
2151
|
+
"HEAD",
|
|
2152
|
+
"CLAVICLE_L",
|
|
2153
|
+
"CLAVICLE_R"
|
|
2145
2154
|
],
|
|
2146
2155
|
paddingFactor: 1.6
|
|
2147
2156
|
},
|
|
2148
2157
|
{
|
|
2149
2158
|
name: "back",
|
|
2150
|
-
bones: ["
|
|
2159
|
+
bones: ["SPINE_01", "SPINE_02"],
|
|
2151
2160
|
paddingFactor: 1.8,
|
|
2152
2161
|
cameraAngle: 180
|
|
2153
2162
|
},
|
|
2154
2163
|
{
|
|
2155
2164
|
name: "left_hand",
|
|
2156
|
-
bones: ["
|
|
2165
|
+
bones: ["HAND_L"],
|
|
2157
2166
|
paddingFactor: 1.3,
|
|
2158
2167
|
cameraAngle: 270
|
|
2159
2168
|
},
|
|
2160
2169
|
{
|
|
2161
2170
|
name: "right_hand",
|
|
2162
|
-
bones: ["
|
|
2171
|
+
bones: ["HAND_R"],
|
|
2163
2172
|
paddingFactor: 1.3,
|
|
2164
2173
|
cameraAngle: 90
|
|
2165
2174
|
},
|
|
2166
2175
|
{
|
|
2167
2176
|
name: "left_foot",
|
|
2168
|
-
bones: ["
|
|
2177
|
+
bones: ["FOOT_L", "TOEBASE_L"],
|
|
2169
2178
|
paddingFactor: 2.5,
|
|
2170
2179
|
cameraAngle: 270
|
|
2171
2180
|
},
|
|
2172
2181
|
{
|
|
2173
2182
|
name: "right_foot",
|
|
2174
|
-
bones: ["
|
|
2183
|
+
bones: ["FOOT_R", "TOEBASE_R"],
|
|
2175
2184
|
paddingFactor: 2.5,
|
|
2176
2185
|
cameraAngle: 90
|
|
2177
2186
|
}
|
|
@@ -5426,13 +5435,6 @@ function mergeRegion(base, override) {
|
|
|
5426
5435
|
} : void 0
|
|
5427
5436
|
};
|
|
5428
5437
|
}
|
|
5429
|
-
function mergeStringRecord(base, override) {
|
|
5430
|
-
if (!base && !override) return void 0;
|
|
5431
|
-
return {
|
|
5432
|
-
...base ? { ...base } : {},
|
|
5433
|
-
...override ? { ...override } : {}
|
|
5434
|
-
};
|
|
5435
|
-
}
|
|
5436
5438
|
function mergeRegionsByName(base, override) {
|
|
5437
5439
|
if (!base && !override) return void 0;
|
|
5438
5440
|
const merged = /* @__PURE__ */ new Map();
|
|
@@ -5498,7 +5500,7 @@ function orderResolvedRegions(resolvedRegions, prioritizedLists) {
|
|
|
5498
5500
|
}
|
|
5499
5501
|
return orderedNames.map((name) => resolvedByName.get(name)).filter((region) => Boolean(region));
|
|
5500
5502
|
}
|
|
5501
|
-
function
|
|
5503
|
+
function extendCharacterConfigWithPreset(config) {
|
|
5502
5504
|
const presetType = config.auPresetType;
|
|
5503
5505
|
if (!presetType || presetType === "custom") {
|
|
5504
5506
|
return config;
|
|
@@ -5516,13 +5518,13 @@ function resolveCharacterConfig(config) {
|
|
|
5516
5518
|
);
|
|
5517
5519
|
return {
|
|
5518
5520
|
...config,
|
|
5519
|
-
|
|
5520
|
-
boneSuffix: config.boneSuffix ?? presetResolvedProfile.boneSuffix,
|
|
5521
|
-
boneNodes: mergeStringRecord(presetResolvedProfile.boneNodes, config.boneNodes),
|
|
5522
|
-
suffixPattern: config.suffixPattern ?? presetResolvedProfile.suffixPattern,
|
|
5521
|
+
...presetResolvedProfile,
|
|
5523
5522
|
regions: resolvedRegions ?? config.regions
|
|
5524
5523
|
};
|
|
5525
5524
|
}
|
|
5525
|
+
function resolveCharacterConfig(config) {
|
|
5526
|
+
return extendCharacterConfigWithPreset(config);
|
|
5527
|
+
}
|
|
5526
5528
|
var DEFAULT_HEAD_BONE_NAMES = ["CC_Base_Head", "Head", "head", "Bip01_Head"];
|
|
5527
5529
|
var DEFAULT_REFERENCE_HEIGHT = 1.8;
|
|
5528
5530
|
var DEFAULT_FORWARD_OFFSET = 0.08;
|
|
@@ -5710,23 +5712,32 @@ function detectFacingDirection(model, eyeBoneNames = {
|
|
|
5710
5712
|
function normalizeLooseName(value) {
|
|
5711
5713
|
return value.replace(/\./g, "");
|
|
5712
5714
|
}
|
|
5713
|
-
function
|
|
5714
|
-
if (!config) return semanticName;
|
|
5715
|
+
function resolveBoneNameCandidates(semanticName, config) {
|
|
5716
|
+
if (!config) return [semanticName];
|
|
5715
5717
|
const { bonePrefix, boneSuffix, boneNodes } = config;
|
|
5716
5718
|
if (!boneNodes || !boneNodes[semanticName]) {
|
|
5717
|
-
return semanticName;
|
|
5719
|
+
return [semanticName];
|
|
5718
5720
|
}
|
|
5719
5721
|
const baseName = boneNodes[semanticName];
|
|
5720
|
-
if (baseName.includes("_") || baseName.includes(".")) {
|
|
5721
|
-
return baseName;
|
|
5722
|
-
}
|
|
5723
5722
|
const prefix = bonePrefix || "";
|
|
5724
5723
|
const suffix = boneSuffix || "";
|
|
5725
|
-
|
|
5724
|
+
if (!prefix && !suffix) {
|
|
5725
|
+
return [baseName];
|
|
5726
|
+
}
|
|
5727
|
+
const prefixedBase = prefix && baseName.startsWith(prefix) ? baseName : prefix + baseName;
|
|
5728
|
+
const fullyAffixed = suffix && !prefixedBase.endsWith(suffix) ? `${prefixedBase}${suffix}` : prefixedBase;
|
|
5729
|
+
return Array.from(/* @__PURE__ */ new Set([fullyAffixed, baseName]));
|
|
5730
|
+
}
|
|
5731
|
+
function resolveBoneName(semanticName, config) {
|
|
5732
|
+
return resolveBoneNameCandidates(semanticName, config)[0] ?? semanticName;
|
|
5726
5733
|
}
|
|
5727
5734
|
function resolveBoneNames(names, config) {
|
|
5728
5735
|
if (!names || names.length === 0) return [];
|
|
5729
|
-
return
|
|
5736
|
+
return Array.from(
|
|
5737
|
+
new Set(
|
|
5738
|
+
names.flatMap((name) => resolveBoneNameCandidates(name, config))
|
|
5739
|
+
)
|
|
5740
|
+
);
|
|
5730
5741
|
}
|
|
5731
5742
|
function fuzzyNameMatch(objectName, targetName, suffixPattern) {
|
|
5732
5743
|
if (objectName === targetName) return true;
|
|
@@ -6832,6 +6843,6 @@ async function analyzeModel(options) {
|
|
|
6832
6843
|
};
|
|
6833
6844
|
}
|
|
6834
6845
|
|
|
6835
|
-
export { AU_INFO, AU_MAPPING_CONFIG, AU_MIX_DEFAULTS, AU_TO_MORPHS, AnimationThree, BETTA_FISH_PRESET, BLENDING_MODES, BONE_AU_TO_BINDINGS, CC4_BONE_NODES, CC4_BONE_PREFIX, CC4_EYE_MESH_NODES, CC4_MESHES, CC4_PRESET, CC4_SUFFIX_PATTERN, COMPOSITE_ROTATIONS, CONTINUUM_LABELS, CONTINUUM_PAIRS_MAP, DEFAULT_HAIR_PHYSICS_CONFIG, FISH_AU_MAPPING_CONFIG, HairPhysics, Loom3, Loom3 as Loom3Three, Loom3 as LoomLargeThree, MORPH_TO_MESH, VISEME_JAW_AMOUNTS, VISEME_KEYS, analyzeModel, applyCharacterProfileToPreset, applyProfileToPreset, collectMorphMeshes, detectFacingDirection, extractFromGLTF, extractModelData, extractProfileOverrides, findFaceCenter, fuzzyNameMatch, generateMappingCorrections, getModelForwardDirection, hasLeftRightMorphs, isMixedAU, isPresetCompatible, mergeRegionsByName as mergeCharacterRegionsByName, resolveBoneName, resolveBoneNames, resolveCharacterConfig, resolveFaceCenter, resolvePreset, resolvePresetWithOverrides, resolveProfile, suggestBestPreset, validateMappingConfig, validateMappings };
|
|
6846
|
+
export { AU_INFO, AU_MAPPING_CONFIG, AU_MIX_DEFAULTS, AU_TO_MORPHS, AnimationThree, BETTA_FISH_PRESET, BLENDING_MODES, BONE_AU_TO_BINDINGS, CC4_BONE_NODES, CC4_BONE_PREFIX, CC4_EYE_MESH_NODES, CC4_MESHES, CC4_PRESET, CC4_SUFFIX_PATTERN, COMPOSITE_ROTATIONS, CONTINUUM_LABELS, CONTINUUM_PAIRS_MAP, DEFAULT_HAIR_PHYSICS_CONFIG, FISH_AU_MAPPING_CONFIG, HairPhysics, Loom3, Loom3 as Loom3Three, Loom3 as LoomLargeThree, MORPH_TO_MESH, VISEME_JAW_AMOUNTS, VISEME_KEYS, analyzeModel, applyCharacterProfileToPreset, applyProfileToPreset, collectMorphMeshes, detectFacingDirection, extendCharacterConfigWithPreset, extractFromGLTF, extractModelData, extractProfileOverrides, findFaceCenter, fuzzyNameMatch, generateMappingCorrections, getModelForwardDirection, hasLeftRightMorphs, isMixedAU, isPresetCompatible, mergeRegionsByName as mergeCharacterRegionsByName, resolveBoneName, resolveBoneNames, resolveCharacterConfig, resolveFaceCenter, resolvePreset, resolvePresetWithOverrides, resolveProfile, suggestBestPreset, validateMappingConfig, validateMappings };
|
|
6836
6847
|
//# sourceMappingURL=index.js.map
|
|
6837
6848
|
//# sourceMappingURL=index.js.map
|