added Diana, modified css file

This commit is contained in:
2024-09-21 10:59:35 +02:00
parent fc6ab1c588
commit 01cc22360b
29 changed files with 49046 additions and 564 deletions

View File

@@ -44763,22 +44763,6 @@
});
}
function draggable(model) {
model.buttonMode = true;
model.on("pointerdown", (e) => {
model.dragging = true;
model._pointerX = e.data.global.x - model.x;
model._pointerY = e.data.global.y - model.y;
});
model.on("pointermove", (e) => {
if (model.dragging) {
model.position.x = e.data.global.x - model._pointerX;
model.position.y = e.data.global.y - model._pointerY;
}
});
model.on("pointerupoutside", () => (model.dragging = false));
model.on("pointerup", () => (model.dragging = false));
}
const model = await Live2DModel.from(jsonpath);
app.stage.addChild(model);
@@ -44791,21 +44775,23 @@
);
model.scale.set(ratio, ratio);
// Align bottom and center horizontally
model.x = (parentWidth - model.width) / 2;
model.x = 0;
model.y = parentHeight - model.height;
draggable(model);
// draggable(model);
// read json file to find motion groups
let modelJson = await readJSON(`${jsonpath}`);
// change expression after click on model
// change expression and motion after click on model
model.on("pointerdown", () => {
model.expression();
if (modelJson.motions) {
const motionGroup = Object.keys(modelJson.motions)[Math.floor(Math.random() * Object.keys(modelJson.motions).length)];
model.motion(motionGroup);
}
if (modelJson.FileReferences.Motions) {
const motionGroup = Object.keys(modelJson.FileReferences.Motions)[Math.floor(Math.random() * Object.keys(modelJson.FileReferences.Motions).length)];
model.motion(motionGroup);
}
});
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 KiB

Binary file not shown.

View File

@@ -0,0 +1,764 @@
{
"Version": 3,
"Meta": {
"PhysicsSettingCount": 5,
"TotalInputCount": 14,
"TotalOutputCount": 30,
"VertexCount": 16,
"EffectiveForces": {
"Gravity": {
"X": 0,
"Y": -1
},
"Wind": {
"X": 0,
"Y": 0
}
},
"PhysicsDictionary": [
{
"Id": "PhysicsSetting1",
"Name": "高光"
},
{
"Id": "PhysicsSetting2",
"Name": "角发"
},
{
"Id": "PhysicsSetting3",
"Name": "测头发"
},
{
"Id": "PhysicsSetting4",
"Name": "头发2段"
},
{
"Id": "PhysicsSetting5",
"Name": "yifu"
}
]
},
"PhysicsSettings": [
{
"Id": "PhysicsSetting1",
"Input": [
{
"Source": {
"Target": "Parameter",
"Id": "ParamEyeLOpen"
},
"Weight": 50,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamEyeROpen"
},
"Weight": 50,
"Type": "X",
"Reflect": false
}
],
"Output": [
{
"Destination": {
"Target": "Parameter",
"Id": "Param27"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param23"
},
"VertexIndex": 1,
"Scale": 10,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param44"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
}
],
"Vertices": [
{
"Position": {
"X": 0,
"Y": 0
},
"Mobility": 1,
"Delay": 1,
"Acceleration": 1,
"Radius": 0
},
{
"Position": {
"X": 0,
"Y": 5
},
"Mobility": 0.95,
"Delay": 1,
"Acceleration": 1,
"Radius": 5
}
],
"Normalization": {
"Position": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
},
"Angle": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
}
}
},
{
"Id": "PhysicsSetting2",
"Input": [
{
"Source": {
"Target": "Parameter",
"Id": "ParamEyeLOpen"
},
"Weight": 50,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamEyeROpen"
},
"Weight": 50,
"Type": "X",
"Reflect": false
}
],
"Output": [
{
"Destination": {
"Target": "Parameter",
"Id": "Param23"
},
"VertexIndex": 1,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param28"
},
"VertexIndex": 1,
"Scale": 5,
"Weight": 100,
"Type": "Angle",
"Reflect": false
}
],
"Vertices": [
{
"Position": {
"X": 0,
"Y": 0
},
"Mobility": 1,
"Delay": 1,
"Acceleration": 1,
"Radius": 0
},
{
"Position": {
"X": 0,
"Y": 6
},
"Mobility": 0.8,
"Delay": 0.9,
"Acceleration": 1,
"Radius": 6
},
{
"Position": {
"X": 0,
"Y": 11
},
"Mobility": 0.8,
"Delay": 1,
"Acceleration": 0.8,
"Radius": 5
}
],
"Normalization": {
"Position": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
},
"Angle": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
}
}
},
{
"Id": "PhysicsSetting3",
"Input": [
{
"Source": {
"Target": "Parameter",
"Id": "ParamAngleX"
},
"Weight": 60,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamAngleZ"
},
"Weight": 60,
"Type": "Angle",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamBodyAngleX"
},
"Weight": 40,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamBodyAngleZ"
},
"Weight": 40,
"Type": "Angle",
"Reflect": false
}
],
"Output": [
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation"
},
"VertexIndex": 1,
"Scale": 5,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation2"
},
"VertexIndex": 2,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation3"
},
"VertexIndex": 3,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation4"
},
"VertexIndex": 4,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation5"
},
"VertexIndex": 1,
"Scale": 5,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation6"
},
"VertexIndex": 2,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation7"
},
"VertexIndex": 3,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param_Angle_Rotation8"
},
"VertexIndex": 4,
"Scale": 15,
"Weight": 100,
"Type": "Angle",
"Reflect": false
}
],
"Vertices": [
{
"Position": {
"X": 0,
"Y": 0
},
"Mobility": 1,
"Delay": 1,
"Acceleration": 1,
"Radius": 0
},
{
"Position": {
"X": 0,
"Y": 10
},
"Mobility": 0.85,
"Delay": 0.9,
"Acceleration": 1,
"Radius": 10
},
{
"Position": {
"X": 0,
"Y": 20
},
"Mobility": 0.9,
"Delay": 0.9,
"Acceleration": 1,
"Radius": 10
},
{
"Position": {
"X": 0,
"Y": 28
},
"Mobility": 0.9,
"Delay": 0.9,
"Acceleration": 0.8,
"Radius": 8
},
{
"Position": {
"X": 0,
"Y": 36
},
"Mobility": 0.9,
"Delay": 0.9,
"Acceleration": 0.8,
"Radius": 8
}
],
"Normalization": {
"Position": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
},
"Angle": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
}
}
},
{
"Id": "PhysicsSetting4",
"Input": [
{
"Source": {
"Target": "Parameter",
"Id": "ParamAngleX"
},
"Weight": 60,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamAngleZ"
},
"Weight": 60,
"Type": "Angle",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamBodyAngleX"
},
"Weight": 40,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamBodyAngleZ"
},
"Weight": 40,
"Type": "Angle",
"Reflect": false
}
],
"Output": [
{
"Destination": {
"Target": "Parameter",
"Id": "Param42"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param13"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param14"
},
"VertexIndex": 2,
"Scale": 70,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param15"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param16"
},
"VertexIndex": 2,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param17"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param18"
},
"VertexIndex": 2,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param19"
},
"VertexIndex": 1,
"Scale": 60,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param20"
},
"VertexIndex": 2,
"Scale": 60,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param21"
},
"VertexIndex": 1,
"Scale": 60,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param22"
},
"VertexIndex": 2,
"Scale": 60,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param31"
},
"VertexIndex": 1,
"Scale": 40,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param33"
},
"VertexIndex": 2,
"Scale": 40,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param34"
},
"VertexIndex": 1,
"Scale": 80,
"Weight": 100,
"Type": "Angle",
"Reflect": false
}
],
"Vertices": [
{
"Position": {
"X": 0,
"Y": 0
},
"Mobility": 1,
"Delay": 1,
"Acceleration": 1,
"Radius": 0
},
{
"Position": {
"X": 0,
"Y": 10
},
"Mobility": 0.9,
"Delay": 0.8,
"Acceleration": 1.5,
"Radius": 10
},
{
"Position": {
"X": 0,
"Y": 18
},
"Mobility": 0.8,
"Delay": 0.8,
"Acceleration": 1.5,
"Radius": 8
}
],
"Normalization": {
"Position": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
},
"Angle": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
}
}
},
{
"Id": "PhysicsSetting5",
"Input": [
{
"Source": {
"Target": "Parameter",
"Id": "ParamBodyAngleX"
},
"Weight": 100,
"Type": "X",
"Reflect": false
},
{
"Source": {
"Target": "Parameter",
"Id": "ParamBodyAngleZ"
},
"Weight": 100,
"Type": "Angle",
"Reflect": false
}
],
"Output": [
{
"Destination": {
"Target": "Parameter",
"Id": "Param25"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param26"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
},
{
"Destination": {
"Target": "Parameter",
"Id": "Param24"
},
"VertexIndex": 1,
"Scale": 50,
"Weight": 100,
"Type": "Angle",
"Reflect": false
}
],
"Vertices": [
{
"Position": {
"X": 0,
"Y": 0
},
"Mobility": 1,
"Delay": 1,
"Acceleration": 1,
"Radius": 0
},
{
"Position": {
"X": 0,
"Y": 10
},
"Mobility": 0.9,
"Delay": 0.7,
"Acceleration": 1.4,
"Radius": 10
},
{
"Position": {
"X": 0,
"Y": 20
},
"Mobility": 0.9,
"Delay": 0.7,
"Acceleration": 1.4,
"Radius": 10
}
],
"Normalization": {
"Position": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
},
"Angle": {
"Minimum": -10,
"Default": 0,
"Maximum": 10
}
}
}
]
}

View File

@@ -0,0 +1,212 @@
{
"Version": 3,
"FileReferences": {
"Moc": "Diana.moc3",
"Textures": [
"Diana.4096/texture_00.png"
],
"Physics": "Diana.physics3.json",
"PhysicsV2": {
"File": "Diana.physics3.json"
},
"Motions": {
"Idle": [{
"File": "motions/Diana_idle.motion3.json"
}],
"Tap生气 -领结": [{
"File": "motions/Diana_tap01.motion3.json",
"Text": "嘉心糖屁用没有",
"TextDelay": 2000,
"TextDuration": 3000
}],
"Tap= = 左蝴蝶结": [{
"File": "motions/Diana_tap02.motion3.json",
"Text": "有人急了,但我不说是谁~",
"TextDelay": 1000,
"TextDuration": 4000
}],
"Tap笑- 脸": [{
"File": "motions/Diana_tap03.motion3.json",
"Text": "hi嘉心糖",
"TextDelay": 2200,
"TextDuration": 2300
}],
"Tap哭 -眼角": [{
"File": "motions/Diana_tap04.motion3.json",
"Text": "呜呜...呜呜呜....",
"TextDelay": 3200,
"TextDuration": 4000
}],
"Shake": [{
"File": "motions/Diana_tap05.motion3.json",
"Text": "别摇啦!",
"TextDelay": 1000,
"TextDuration": 2000
}],
"Tap害羞-中间刘海": [{
"File": "motions/Diana_tap06.motion3.json",
"Text": "想然然了没有呀~",
"TextDelay": 1500,
"TextDuration": 3000
}],
"Tap抱阿草-左手": [{
"File": "motions/Diana_tap07.motion3.json",
"Text": "阿草好软呀~",
"TextDelay": 3000,
"TextDuration": 2500
}],
"Tap摇头- 身体": [{
"File": "motions/Diana_tap05.motion3.json",
"Text": "不要再戳啦!好痒!",
"TextDelay": 800,
"TextDuration": 2500
}],
"Tap耳朵-发卡": [{
"File": "motions/Diana_tap08.motion3.json",
"Text": "嗷呜~~~",
"TextDelay": 1500,
"TextDuration": 3000
}],
"Tap打瞌睡- 呆毛": [{
"File": "motions/Diana_tap09.motion3.json",
"Text": "啊",
"TextDelay": 7500,
"TextDuration": 800
}],
"Leave": [{
"File": "motions/Diana_tap09.motion3.json",
"Text": "zzZ。。。",
"TextDelay": 4000,
"TextDuration": 4000
}],
"Tap左头发": [{
"File": "motions/Diana_tap10.motion3.json"
}],
"Tap右头发": [{
"File": "motions/Diana_tap11.motion3.json",
"Text": "哇!好吃的!",
"TextDelay": 500,
"TextDuration": 3000
}]
}
},
"Controllers": {
"ParamHit": {},
"ParamLoop": {},
"KeyTrigger": {},
"EyeBlink": {
"MinInterval": 500,
"MaxInterval": 6000,
"Enabled": true
},
"LipSync": {
"Gain": 5.0
},
"MouseTracking": {
"SmoothTime": 0.15,
"Items": [{
"Id": "ParamBodyAngleX",
"Min": -10.0,
"Max": 10.0,
"DefaultValue": 0.0,
"Weight": 0.76343286,
"BlendMode": 1,
"Input": 1
}, {
"Id": "ParamAngleX",
"Min": -30.0,
"Max": 30.0,
"DefaultValue": 0.0,
"Weight": 0.798328757,
"BlendMode": 1,
"Input": 1
}, {
"Id": "ParamBodyAngleZ",
"Min": -10.0,
"Max": 10.0,
"DefaultValue": 0.0,
"Weight": 0.6260679,
"BlendMode": 1,
"Input": 1
}, {
"Id": "ParamBodyAngleY",
"Min": -10.0,
"Max": 10.0,
"DefaultValue": 0.0,
"Weight": 0.8907613,
"BlendMode": 1,
"Axis": 1,
"Input": 2
}, {
"Id": "ParamAngleY",
"Min": -30.0,
"Max": 30.0,
"DefaultValue": 0.0,
"Weight": 0.7521123,
"BlendMode": 1,
"Axis": 1,
"Input": 2
}],
"Enabled": true
},
"AutoBreath": {
"Enabled": true
},
"ExtraMotion": {
"Enabled": true
},
"Accelerometer": {
"Enabled": true
},
"Microphone": {},
"Transform": {},
"FaceTracking": {
"Enabled": true
},
"ParamValue": {},
"PartOpacity": {},
"ArtmeshOpacity": {},
"ArtmeshColor": {},
"ArtmeshCulling": {
"DefaultMode": 0
},
"IntimacySystem": {}
},
"HitAreas": [{
"Name": "= = 左蝴蝶结",
"Id": "ArtMesh15"
}, {
"Name": "笑- 脸",
"Id": "ArtMesh51"
}, {
"Name": "哭 -眼角",
"Id": "ArtMesh48"
}, {
"Name": "生气 -领结",
"Id": "ArtMesh56"
}, {
"Name": "害羞-中间刘海",
"Id": "ArtMesh10"
}, {
"Name": "抱阿草-左手",
"Id": "L4"
}, {
"Name": "打瞌睡- 呆毛",
"Id": "ArtMesh9"
}, {
"Name": "耳朵-发卡",
"Id": "L3"
}, {
"Name": "摇头- 身体",
"Id": "jiaran"
}, {
"Name": "左头发",
"Id": "L5"
}, {
"Name": "右头发",
"Id": "R5"
}],
"Options": {
"TexFixed": true
}
}

View File

@@ -0,0 +1,544 @@
{
"Version": 3,
"Meta": {
"Duration": 7.667,
"Fps": 30.0,
"Loop": true,
"AreBeziersRestricted": true,
"CurveCount": 48,
"TotalSegmentCount": 48,
"TotalPointCount": 96,
"UserDataCount": 0,
"TotalUserDataSize": 0
},
"Curves": [
{
"Target": "Parameter",
"Id": "Param2",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param35",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param3",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param4",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param5",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param41",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param46",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param45",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param8",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param9",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param10",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param6",
"Segments": [
0,
-29,
0,
7.667,
-29
]
},
{
"Target": "Parameter",
"Id": "Param7",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "ParamBodyAngleX",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBodyAngleY",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBodyAngleZ",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamAngleX",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamAngleY",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamAngleZ",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamEyeLOpen",
"Segments": [
0,
1,
0,
7.667,
1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeLSmile",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamEyeROpen",
"Segments": [
0,
1,
0,
7.667,
1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeRSmile",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamEyeBallX",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamEyeBallY",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLY",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRY",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLX",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRX",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLAngle",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRAngle",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRForm",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLForm",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamMouthForm",
"Segments": [
0,
0.1,
0,
7.667,
0.1
]
},
{
"Target": "Parameter",
"Id": "ParamMouthOpenY",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "Param47",
"Segments": [
0,
-1,
0,
7.667,
-1
]
},
{
"Target": "Parameter",
"Id": "ParamCheek",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "Param48",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param49",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param29",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param30",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "Param37",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param32",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param36",
"Segments": [
0,
0,
0,
7.667,
0
]
},
{
"Target": "Parameter",
"Id": "Param38",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param39",
"Segments": [
0,
-30,
0,
7.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param12",
"Segments": [
0,
-30,
0,
7.667,
-30
]
}
]
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,924 @@
{
"Version": 3,
"Meta": {
"Duration": 6.667,
"Fps": 30.0,
"Loop": true,
"AreBeziersRestricted": true,
"CurveCount": 25,
"TotalSegmentCount": 120,
"TotalPointCount": 319,
"UserDataCount": 0,
"TotalUserDataSize": 0
},
"Curves": [
{
"Target": "Parameter",
"Id": "Param3",
"Segments": [
0,
-30,
0,
1.933,
-30,
1,
2.444,
-30,
2.956,
30,
3.467,
30,
1,
3.956,
30,
4.444,
-30,
4.933,
-30,
1,
5.356,
-30,
5.778,
10,
6.2,
10,
0,
6.667,
10
]
},
{
"Target": "Parameter",
"Id": "Param4",
"Segments": [
0,
-30,
0,
6.667,
-30
]
},
{
"Target": "Parameter",
"Id": "Param5",
"Segments": [
0,
-30,
0,
6.667,
-30
]
},
{
"Target": "Parameter",
"Id": "ParamBodyAngleX",
"Segments": [
0,
0,
1,
0.333,
0,
0.667,
-2,
1,
-2,
1,
1.267,
-2,
1.533,
-0.247,
1.8,
4,
1,
2.033,
7.716,
2.267,
10,
2.5,
10,
1,
2.711,
10,
2.922,
3,
3.133,
3,
1,
3.378,
3,
3.622,
8,
3.867,
8,
1,
4.111,
8,
4.356,
-1,
4.6,
-1,
1,
5.078,
-1,
5.556,
2,
6.033,
2,
0,
6.667,
2
]
},
{
"Target": "Parameter",
"Id": "ParamBodyAngleY",
"Segments": [
0,
0,
1,
0.333,
0,
0.667,
1,
1,
1,
1,
1.267,
1,
1.533,
-4.759,
1.8,
-5,
1,
2.733,
-5.845,
3.667,
-6,
4.6,
-6,
0,
6.667,
-6
]
},
{
"Target": "Parameter",
"Id": "ParamBodyAngleZ",
"Segments": [
0,
0,
1,
0.333,
0,
0.667,
-1,
1,
-1,
1,
1.267,
-1,
1.533,
7,
1.8,
7,
1,
2.733,
7,
3.667,
5,
4.6,
5,
1,
5.078,
5,
5.556,
8,
6.033,
8,
0,
6.667,
8
]
},
{
"Target": "Parameter",
"Id": "ParamAngleX",
"Segments": [
0,
0,
1,
0.333,
0,
0.667,
-0.078,
1,
2,
1,
1.267,
3.662,
1.533,
11,
1.8,
11,
1,
2.733,
11,
3.667,
-6,
4.6,
-6,
1,
5.078,
-6,
5.556,
2,
6.033,
2,
0,
6.667,
2
]
},
{
"Target": "Parameter",
"Id": "ParamAngleY",
"Segments": [
0,
1,
1,
0.333,
1,
0.667,
0.162,
1,
-6,
1,
1.267,
-10.929,
1.533,
-19,
1.8,
-19,
1,
2.733,
-19,
3.667,
-18.745,
4.6,
-15,
1,
5.078,
-13.083,
5.556,
0,
6.033,
0,
0,
6.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamAngleZ",
"Segments": [
0,
0,
1,
0.6,
0,
1.2,
19,
1.8,
19,
1,
2.733,
19,
3.667,
-25,
4.6,
-25,
1,
5.078,
-25,
5.556,
-4,
6.033,
-4,
0,
6.667,
-4
]
},
{
"Target": "Parameter",
"Id": "ParamEyeLOpen",
"Segments": [
0,
1,
0,
0.5,
1,
1,
0.544,
1,
0.589,
0,
0.633,
0,
1,
0.678,
0,
0.722,
1,
0.767,
1,
1,
0.811,
1,
0.856,
0,
0.9,
0,
1,
0.944,
0,
0.989,
1,
1.033,
1,
1,
1.333,
1,
1.633,
1,
1.933,
1,
1,
2.044,
1,
2.156,
0,
2.267,
0,
1,
2.589,
0,
2.911,
0,
3.233,
0,
1,
3.389,
0,
3.544,
1,
3.7,
1,
1,
4.078,
1,
4.456,
1,
4.833,
1,
1,
4.878,
1,
4.922,
0,
4.967,
0,
1,
5.011,
0,
5.056,
1,
5.1,
1,
1,
5.144,
1,
5.189,
0,
5.233,
0,
1,
5.278,
0,
5.322,
1,
5.367,
1,
0,
6.667,
1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeROpen",
"Segments": [
0,
1,
0,
0.5,
1,
1,
0.544,
1,
0.589,
0,
0.633,
0,
1,
0.678,
0,
0.722,
1,
0.767,
1,
1,
0.811,
1,
0.856,
0,
0.9,
0,
1,
0.944,
0,
0.989,
1,
1.033,
1,
1,
1.333,
1,
1.633,
1,
1.933,
1,
1,
2.044,
1,
2.156,
0,
2.267,
0,
1,
2.589,
0,
2.911,
0,
3.233,
0,
1,
3.389,
0,
3.544,
1,
3.7,
1,
1,
4.078,
1,
4.456,
1,
4.833,
1,
1,
4.878,
1,
4.922,
0,
4.967,
0,
1,
5.011,
0,
5.056,
1,
5.1,
1,
1,
5.144,
1,
5.189,
0,
5.233,
0,
1,
5.278,
0,
5.322,
1,
5.367,
1,
0,
6.667,
1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeBallX",
"Segments": [
0,
0,
0,
1.033,
0,
1,
1.3,
0,
1.567,
-1,
1.833,
-1,
0,
6.667,
-1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeBallY",
"Segments": [
0,
-0.1,
0,
1.033,
-0.1,
1,
1.3,
-0.1,
1.567,
1,
1.833,
1,
0,
6.667,
1
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLY",
"Segments": [
0,
0,
0,
6.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRY",
"Segments": [
0,
0,
0,
6.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLX",
"Segments": [
0,
0,
0,
6.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRX",
"Segments": [
0,
0,
0,
6.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLAngle",
"Segments": [
0,
0.1,
1,
0.611,
0.1,
1.222,
0.4,
1.833,
0.4,
0,
6.667,
0.4
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRAngle",
"Segments": [
0,
0,
1,
0.611,
0,
1.222,
0.4,
1.833,
0.4,
0,
6.667,
0.4
]
},
{
"Target": "Parameter",
"Id": "ParamBrowRForm",
"Segments": [
0,
0,
1,
0.611,
0,
1.222,
-0.6,
1.833,
-0.6,
0,
6.667,
-0.6
]
},
{
"Target": "Parameter",
"Id": "ParamBrowLForm",
"Segments": [
0,
0,
1,
0.611,
0,
1.222,
-0.4,
1.833,
-0.4,
0,
6.667,
-0.4
]
},
{
"Target": "Parameter",
"Id": "ParamMouthForm",
"Segments": [
0,
0.1,
0,
1.267,
0.1,
1,
1.389,
0.1,
1.511,
-0.5,
1.633,
-0.5,
1,
1.656,
-0.5,
1.678,
-0.047,
1.7,
0,
1,
1.744,
0.095,
1.789,
0.1,
1.833,
0.1,
1,
1.9,
0.1,
1.967,
-0.3,
2.033,
-0.3,
1,
2.1,
-0.3,
2.167,
0.4,
2.233,
0.4,
1,
2.322,
0.4,
2.411,
0,
2.5,
0,
1,
2.578,
0,
2.656,
0.1,
2.733,
0.1,
1,
2.811,
0.1,
2.889,
0,
2.967,
0,
1,
3.056,
0,
3.144,
0.2,
3.233,
0.2,
1,
3.311,
0.2,
3.389,
0.196,
3.467,
0.1,
1,
3.578,
-0.038,
3.689,
-0.2,
3.8,
-0.2,
1,
4.389,
-0.2,
4.978,
0.3,
5.567,
0.3,
0,
6.667,
0.3
]
},
{
"Target": "Parameter",
"Id": "ParamMouthOpenY",
"Segments": [
0,
0,
0,
1.267,
0,
1,
1.389,
0,
1.511,
0.7,
1.633,
0.7,
1,
1.656,
0.7,
1.678,
0,
1.7,
0,
1,
1.744,
0,
1.789,
0.7,
1.833,
0.7,
1,
1.9,
0.7,
1.967,
0.707,
2.033,
0.6,
1,
2.1,
0.493,
2.167,
0.2,
2.233,
0.2,
1,
2.322,
0.2,
2.411,
0.6,
2.5,
0.6,
1,
2.578,
0.6,
2.656,
0.4,
2.733,
0.4,
1,
2.811,
0.4,
2.889,
0.6,
2.967,
0.6,
1,
3.056,
0.6,
3.144,
0.4,
3.233,
0.4,
1,
3.311,
0.4,
3.389,
0.5,
3.467,
0.5,
1,
3.578,
0.5,
3.689,
0,
3.8,
0,
1,
4.389,
0,
4.978,
0,
5.567,
0,
0,
6.667,
0
]
},
{
"Target": "Parameter",
"Id": "ParamCheek",
"Segments": [
0,
0,
0,
1.067,
0,
1,
1.333,
0,
1.6,
1,
1.867,
1,
0,
6.667,
1
]
},
{
"Target": "Parameter",
"Id": "Param30",
"Segments": [
0,
0,
1,
0.322,
0,
0.644,
-16,
0.967,
-16,
1,
1.3,
-16,
1.633,
28,
1.967,
28,
0,
6.667,
28
]
}
]
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,317 @@
{
"Version": 3,
"Meta": {
"Duration": 4.4,
"Fps": 30.0,
"Loop": true,
"AreBeziersRestricted": true,
"CurveCount": 9,
"TotalSegmentCount": 43,
"TotalPointCount": 102,
"UserDataCount": 0,
"TotalUserDataSize": 0
},
"Curves": [
{
"Target": "Parameter",
"Id": "Param2",
"Segments": [
0,
-30,
0,
1.1,
-30,
1,
1.3,
-30,
1.5,
30,
1.7,
30,
1,
2.389,
30,
3.078,
30,
3.767,
30,
1,
3.9,
30,
4.033,
-30,
4.167,
-30,
0,
4.4,
-30
]
},
{
"Target": "Parameter",
"Id": "ParamAngleX",
"Segments": [
0,
0,
0,
1.1,
0,
1,
1.333,
0,
1.567,
-1,
1.8,
-1,
1,
2.567,
-1,
3.333,
0,
4.1,
0,
0,
4.4,
0
]
},
{
"Target": "Parameter",
"Id": "ParamAngleY",
"Segments": [
0,
0,
0,
1.1,
0,
1,
1.333,
0,
1.567,
4,
1.8,
4,
1,
2.567,
4,
3.333,
0,
4.1,
0,
0,
4.4,
0
]
},
{
"Target": "Parameter",
"Id": "ParamEyeLOpen",
"Segments": [
0,
1,
0,
1.1,
1,
1,
1.333,
1,
1.567,
0,
1.8,
0,
1,
2.467,
0,
3.133,
0,
3.8,
0,
1,
3.944,
0,
4.089,
1,
4.233,
1,
0,
4.4,
1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeLSmile",
"Segments": [
0,
0,
0,
1.1,
0,
1,
1.333,
0,
1.567,
1,
1.8,
1,
1,
2.467,
1,
3.133,
1,
3.8,
1,
1,
3.944,
1,
4.089,
0,
4.233,
0,
0,
4.4,
0
]
},
{
"Target": "Parameter",
"Id": "ParamEyeROpen",
"Segments": [
0,
1,
0,
1.1,
1,
1,
1.333,
1,
1.567,
0,
1.8,
0,
1,
2.467,
0,
3.133,
0,
3.8,
0,
1,
3.944,
0,
4.089,
1,
4.233,
1,
0,
4.4,
1
]
},
{
"Target": "Parameter",
"Id": "ParamEyeRSmile",
"Segments": [
0,
0,
0,
1.1,
0,
1,
1.333,
0,
1.567,
1,
1.8,
1,
1,
2.467,
1,
3.133,
1,
3.8,
1,
1,
3.944,
1,
4.089,
0,
4.233,
0,
0,
4.4,
0
]
},
{
"Target": "Parameter",
"Id": "ParamMouthForm",
"Segments": [
0,
-0.2,
0,
1.1,
-0.2,
1,
1.311,
-0.2,
1.522,
0.3,
1.733,
0.3,
1,
2.444,
0.3,
3.156,
0.3,
3.867,
0.3,
1,
4.022,
0.3,
4.178,
-0.2,
4.333,
-0.2,
0,
4.4,
-0.2
]
},
{
"Target": "Parameter",
"Id": "ParamMouthOpenY",
"Segments": [
0,
0,
0,
1.1,
0,
1,
1.311,
0,
1.522,
1,
1.733,
1,
1,
2.444,
1,
3.156,
1,
3.867,
1,
1,
4.022,
1,
4.178,
0,
4.333,
0,
0,
4.4,
0
]
}
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,16 @@
{
"type": "STM_1_0",
"name": "嘉然BY木果",
"id": "1618880670036",
"encrypt": "true",
"version": "1.0",
"list": [{
"id": "",
"character": "character",
"avatar": "4a301072dec6b6a49050e5b294cd7983",
"costume": [{
"name": "costume",
"path": "39561a673b6fe68918affd77d3ad8ae2.bin3"
}]
}]
}

View File

@@ -0,0 +1,210 @@
{
"Version": 3,
"FileReferences": {
"Moc": "8c4420bd232902f08f41b59bbc36462f.bin3",
"Textures": ["4df2dbd71a468fc2f91b62afcb63f994.bin3"],
"Physics": "2b5fa038da3354fd73a58456408f27e9.bin3",
"PhysicsV2": {
"File": "2b5fa038da3354fd73a58456408f27e9.bin3"
},
"Motions": {
"Idle": [{
"File": "8251a6de2a03ea12eaf8c1f879d759b9.bin3"
}],
"Tap生气 -领结": [{
"File": "18624d01175dda6605c3eafa341bac02.bin3",
"Text": "嘉心糖屁用没有",
"TextDelay": 2000,
"TextDuration": 3000
}],
"Tap= = 左蝴蝶结": [{
"File": "be67f42e9c965290406d52b64fb878bd.bin3",
"Text": "有人急了,但我不说是谁~",
"TextDelay": 1000,
"TextDuration": 4000
}],
"Tap笑- 脸": [{
"File": "d1cf83c4f56a2d02a8f0a3ae2f46028f.bin3",
"Text": "hi嘉心糖",
"TextDelay": 2200,
"TextDuration": 2300
}],
"Tap哭 -眼角": [{
"File": "721720d60a83a9f4b7f2b1065b49d6c8.bin3",
"Text": "呜呜...呜呜呜....",
"TextDelay": 3200,
"TextDuration": 4000
}],
"Shake": [{
"File": "a475c108ed9162233c132446a237c700.bin3",
"Text": "别摇啦!",
"TextDelay": 1000,
"TextDuration": 2000
}],
"Tap害羞-中间刘海": [{
"File": "f6123a070d9897ef1e6475e740b13e08.bin3",
"Text": "想然然了没有呀~",
"TextDelay": 1500,
"TextDuration": 3000
}],
"Tap抱阿草-左手": [{
"File": "e31f07da7854f78c21a271ada7416412.bin3",
"Text": "阿草好软呀~",
"TextDelay": 3000,
"TextDuration": 2500
}],
"Tap摇头- 身体": [{
"File": "a475c108ed9162233c132446a237c700.bin3",
"Text": "不要再戳啦!好痒!",
"TextDelay": 800,
"TextDuration": 2500
}],
"Tap耳朵-发卡": [{
"File": "fa1918fc04af73a1a08aaac6e2556fbb.bin3",
"Text": "嗷呜~~~",
"TextDelay": 1500,
"TextDuration": 3000
}],
"Tap打瞌睡- 呆毛": [{
"File": "d9be6b6f1b3bc23ef6539025acedd923.bin3",
"Text": "啊",
"TextDelay": 7500,
"TextDuration": 800
}],
"Leave": [{
"File": "d9be6b6f1b3bc23ef6539025acedd923.bin3",
"Text": "zzZ。。。",
"TextDelay": 4000,
"TextDuration": 4000
}],
"Tap左头发": [{
"File": "ec36cfef1f589764902d770d0cca2e9e.bin3"
}],
"Tap右头发": [{
"File": "0aeecad899bb18f93a519617dfe76f26.bin3",
"Text": "哇!好吃的!",
"TextDelay": 500,
"TextDuration": 3000
}]
}
},
"Controllers": {
"ParamHit": {},
"ParamLoop": {},
"KeyTrigger": {},
"EyeBlink": {
"MinInterval": 500,
"MaxInterval": 6000,
"Enabled": true
},
"LipSync": {
"Gain": 5.0
},
"MouseTracking": {
"SmoothTime": 0.15,
"Items": [{
"Id": "ParamBodyAngleX",
"Min": -10.0,
"Max": 10.0,
"DefaultValue": 0.0,
"Weight": 0.76343286,
"BlendMode": 1,
"Input": 1
}, {
"Id": "ParamAngleX",
"Min": -30.0,
"Max": 30.0,
"DefaultValue": 0.0,
"Weight": 0.798328757,
"BlendMode": 1,
"Input": 1
}, {
"Id": "ParamBodyAngleZ",
"Min": -10.0,
"Max": 10.0,
"DefaultValue": 0.0,
"Weight": 0.6260679,
"BlendMode": 1,
"Input": 1
}, {
"Id": "ParamBodyAngleY",
"Min": -10.0,
"Max": 10.0,
"DefaultValue": 0.0,
"Weight": 0.8907613,
"BlendMode": 1,
"Axis": 1,
"Input": 2
}, {
"Id": "ParamAngleY",
"Min": -30.0,
"Max": 30.0,
"DefaultValue": 0.0,
"Weight": 0.7521123,
"BlendMode": 1,
"Axis": 1,
"Input": 2
}],
"Enabled": true
},
"AutoBreath": {
"Enabled": true
},
"ExtraMotion": {
"Enabled": true
},
"Accelerometer": {
"Enabled": true
},
"Microphone": {},
"Transform": {},
"FaceTracking": {
"Enabled": true
},
"ParamValue": {},
"PartOpacity": {},
"ArtmeshOpacity": {},
"ArtmeshColor": {},
"ArtmeshCulling": {
"DefaultMode": 0
},
"IntimacySystem": {}
},
"HitAreas": [{
"Name": "= = 左蝴蝶结",
"Id": "ArtMesh15"
}, {
"Name": "笑- 脸",
"Id": "ArtMesh51"
}, {
"Name": "哭 -眼角",
"Id": "ArtMesh48"
}, {
"Name": "生气 -领结",
"Id": "ArtMesh56"
}, {
"Name": "害羞-中间刘海",
"Id": "ArtMesh10"
}, {
"Name": "抱阿草-左手",
"Id": "L4"
}, {
"Name": "打瞌睡- 呆毛",
"Id": "ArtMesh9"
}, {
"Name": "耳朵-发卡",
"Id": "L3"
}, {
"Name": "摇头- 身体",
"Id": "jiaran"
}, {
"Name": "左头发",
"Id": "L5"
}, {
"Name": "右头发",
"Id": "R5"
}],
"Options": {
"TexFixed": true
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 793 KiB

View File

@@ -1,165 +0,0 @@
{
"Version": 3,
"Parameters": [
{
"Id": "ParamAngleX",
"GroupId": "",
"Name": "角度 X"
},
{
"Id": "ParamAngleY",
"GroupId": "",
"Name": "角度 Y"
},
{
"Id": "ParamAngleZ",
"GroupId": "",
"Name": "角度 Z"
},
{
"Id": "ParamEyeLOpen",
"GroupId": "",
"Name": "左目 開閉"
},
{
"Id": "ParamEyeLSmile",
"GroupId": "",
"Name": "左目 笑顔"
},
{
"Id": "ParamEyeROpen",
"GroupId": "",
"Name": "右目 開閉"
},
{
"Id": "ParamEyeRSmile",
"GroupId": "",
"Name": "右目 笑顔"
},
{
"Id": "ParamEyeBallX",
"GroupId": "",
"Name": "目玉 X"
},
{
"Id": "ParamEyeBallY",
"GroupId": "",
"Name": "目玉 Y"
},
{
"Id": "ParamBrowLY",
"GroupId": "",
"Name": "左眉 上下"
},
{
"Id": "ParamBrowRY",
"GroupId": "",
"Name": "右眉 上下"
},
{
"Id": "ParamBrowLX",
"GroupId": "",
"Name": "左眉 左右"
},
{
"Id": "ParamBrowRX",
"GroupId": "",
"Name": "右眉 左右"
},
{
"Id": "ParamBrowLAngle",
"GroupId": "",
"Name": "左眉 角度"
},
{
"Id": "ParamBrowRAngle",
"GroupId": "",
"Name": "右眉 角度"
},
{
"Id": "ParamBrowLForm",
"GroupId": "",
"Name": "左眉 変形"
},
{
"Id": "ParamBrowRForm",
"GroupId": "",
"Name": "右眉 変形"
},
{
"Id": "ParamMouthForm",
"GroupId": "",
"Name": "口 変形"
},
{
"Id": "ParamMouthOpenY",
"GroupId": "",
"Name": "口 開閉"
},
{
"Id": "ParamCheek",
"GroupId": "",
"Name": "照れ"
},
{
"Id": "ParamBodyAngleX",
"GroupId": "",
"Name": "体の回転 X"
},
{
"Id": "ParamBodyAngleY",
"GroupId": "",
"Name": "体の回転 Y"
},
{
"Id": "ParamBodyAngleZ",
"GroupId": "",
"Name": "体の回転 Z"
},
{
"Id": "ParamBreath",
"GroupId": "",
"Name": "呼吸"
},
{
"Id": "ParamHairFront",
"GroupId": "",
"Name": "髪揺れ 前"
},
{
"Id": "ParamHairSide",
"GroupId": "",
"Name": "髪揺れ 横"
},
{
"Id": "ParamHairBack",
"GroupId": "",
"Name": "髪揺れ 後"
}
],
"ParameterGroups": [],
"Parts": [
{
"Id": "Part",
"Name": "顔"
},
{
"Id": "Part2",
"Name": "首輪"
},
{
"Id": "Part3",
"Name": "からだ"
}
],
"CombinedParameters": [
[
"ParamAngleX",
"ParamAngleY"
],
[
"ParamMouthForm",
"ParamMouthOpenY"
]
]
}

Binary file not shown.

View File

@@ -1,338 +0,0 @@
{
"Version": 1,
"Name": "chapome",
"ModelID": "be8628870c1c4f35b001e50f3afadfcf",
"FileReferences": {
"Icon": "",
"Model": "chapome.model3.json",
"IdleAnimation": ""
},
"ModelSaveMetadata": {
"LastSavedVTubeStudioVersion": "1.11.0",
"LastSavedDateUTC": "Sunday, 10 October 2021, 22:01:47",
"LastSavedDateLocalTime": "Monday, 11 October 2021, 07:01:47",
"LastSavedDateUnixMillisecondTimestamp": "1633903307083"
},
"SavedModelPosition": {
"Position": {
"x": -22.0,
"y": 5.555556297302246,
"z": 0.0
},
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0,
"w": 1.0
},
"Scale": {
"x": 1.0580604076385499,
"y": 1.0580604076385499,
"z": 1.0
}
},
"ModelPositionMovement": {
"Use": true,
"X": 6,
"Y": 8,
"Z": 11,
"SmoothingX": 10,
"SmoothingY": 10,
"SmoothingZ": 10
},
"PhysicsSettings": {
"Use": true,
"UseLegacyPhysics": false,
"PhysicsStrength": 50,
"WindStrength": 0
},
"ParameterSettings": [
{
"Name": "Face Left/Right Rotation",
"Input": "FaceAngleX",
"InputRangeLower": -30.0,
"InputRangeUpper": 30.0,
"OutputRangeLower": -30.0,
"OutputRangeUpper": 30.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamAngleX",
"Smoothing": 15
},
{
"Name": "Face Up/Down Rotation",
"Input": "FaceAngleY",
"InputRangeLower": -20.0,
"InputRangeUpper": 20.0,
"OutputRangeLower": -30.0,
"OutputRangeUpper": 30.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamAngleY",
"Smoothing": 15
},
{
"Name": "Face Lean Rotation",
"Input": "FaceAngleZ",
"InputRangeLower": -30.0,
"InputRangeUpper": 30.0,
"OutputRangeLower": -30.0,
"OutputRangeUpper": 30.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamAngleZ",
"Smoothing": 30
},
{
"Name": "Eye Open Left",
"Input": "EyeOpenLeft",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.0,
"OutputRangeUpper": 1.899999976158142,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamEyeLOpen",
"Smoothing": 10
},
{
"Name": "Eye Smile Left",
"Input": "MouthSmile",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamEyeLSmile",
"Smoothing": 10
},
{
"Name": "Eye Open Right",
"Input": "EyeOpenRight",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.0,
"OutputRangeUpper": 1.899999976158142,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamEyeROpen",
"Smoothing": 10
},
{
"Name": "Eye Smile Right",
"Input": "MouthSmile",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamEyeRSmile",
"Smoothing": 10
},
{
"Name": "Eye X",
"Input": "EyeRightX",
"InputRangeLower": -1.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 1.0,
"OutputRangeUpper": -1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamEyeBallX",
"Smoothing": 8
},
{
"Name": "Eye Y",
"Input": "EyeRightY",
"InputRangeLower": -1.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": -1.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamEyeBallY",
"Smoothing": 8
},
{
"Name": "Brow Height Left",
"Input": "Brows",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": -1.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBrowLY",
"Smoothing": 10
},
{
"Name": "Brow Height Right",
"Input": "Brows",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": -1.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBrowRY",
"Smoothing": 10
},
{
"Name": "Brow Form Left",
"Input": "Brows",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": -1.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBrowLForm",
"Smoothing": 15
},
{
"Name": "Brow Form Right",
"Input": "Brows",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": -1.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBrowRForm",
"Smoothing": 15
},
{
"Name": "Mouth Smile",
"Input": "MouthSmile",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": -1.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamMouthForm",
"Smoothing": 0
},
{
"Name": "Mouth Open",
"Input": "MouthOpen",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.0,
"OutputRangeUpper": 2.0999999046325685,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamMouthOpenY",
"Smoothing": 0
},
{
"Name": "Blush when smiling",
"Input": "MouthSmile",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.5,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamCheek",
"Smoothing": 45
},
{
"Name": "Body Rotation X",
"Input": "FaceAngleX",
"InputRangeLower": -30.0,
"InputRangeUpper": 30.0,
"OutputRangeLower": -10.0,
"OutputRangeUpper": 10.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBodyAngleX",
"Smoothing": 20
},
{
"Name": "Body Rotation Y",
"Input": "FaceAngleY",
"InputRangeLower": -30.0,
"InputRangeUpper": 30.0,
"OutputRangeLower": -10.0,
"OutputRangeUpper": 10.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBodyAngleY",
"Smoothing": 20
},
{
"Name": "Body Rotation Z",
"Input": "FaceAngleZ",
"InputRangeLower": -30.0,
"InputRangeUpper": 30.0,
"OutputRangeLower": -10.0,
"OutputRangeUpper": 10.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": false,
"OutputLive2D": "ParamBodyAngleZ",
"Smoothing": 20
},
{
"Name": "Auto Breath",
"Input": "",
"InputRangeLower": 0.0,
"InputRangeUpper": 1.0,
"OutputRangeLower": 0.0,
"OutputRangeUpper": 1.0,
"ClampInput": false,
"ClampOutput": false,
"UseBlinking": false,
"UseBreathing": true,
"OutputLive2D": "ParamBreath",
"Smoothing": 0
}
],
"Hotkeys": [],
"HotkeySettings": {
"UseOnScreenHotkeys": false,
"UseKeyboardHotkeys": false,
"SendOnScreenHotkeysToPC": false,
"OnScreenHotkeyAlpha": 75
}
}

View File

@@ -1,10 +0,0 @@
{
"Version": 3,
"FileReferences": {
"Moc": "chapome.moc3",
"Textures": [
"chapome.2048/texture_00.png"
],
"DisplayInfo": "chapome.cdi3.json"
}
}

View File

@@ -5,7 +5,7 @@
"kesyoban/index.json",
"pichu/index3.json",
"pikachu/index3.json",
"pome/index3.json"
"Diana/index.json"
],
"messages": [
@@ -14,6 +14,6 @@
"嘤嘤嘤 ~",
"Hi·OuO",
"PikaPika ~",
"汪汪 ~"
]
"这里是嘉然 `(*∩_∩*)"
]
}

View File

@@ -13,6 +13,7 @@
display: block;
}
</style>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
</head>
<body>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>

View File

@@ -243,22 +243,6 @@ function loadWidget() {
});
}
function draggable(model) {
model.buttonMode = true;
model.on("pointerdown", (e) => {
model.dragging = true;
model._pointerX = e.data.global.x - model.x;
model._pointerY = e.data.global.y - model.y;
});
model.on("pointermove", (e) => {
if (model.dragging) {
model.position.x = e.data.global.x - model._pointerX;
model.position.y = e.data.global.y - model._pointerY;
}
});
model.on("pointerupoutside", () => (model.dragging = false));
model.on("pointerup", () => (model.dragging = false));
}
const model = await Live2DModel.from(jsonpath);
app.stage.addChild(model);
@@ -271,21 +255,23 @@ function loadWidget() {
);
model.scale.set(ratio, ratio);
// Align bottom and center horizontally
model.x = (parentWidth - model.width) / 2;
model.x = 0;
model.y = parentHeight - model.height;
draggable(model);
// draggable(model);
// read json file to find motion groups
let modelJson = await readJSON(`${jsonpath}`);
// change expression after click on model
// change expression and motion after click on model
model.on("pointerdown", () => {
model.expression();
if (modelJson.motions) {
const motionGroup = Object.keys(modelJson.motions)[Math.floor(Math.random() * Object.keys(modelJson.motions).length)];
model.motion(motionGroup);
}
if (modelJson.FileReferences.Motions) {
const motionGroup = Object.keys(modelJson.FileReferences.Motions)[Math.floor(Math.random() * Object.keys(modelJson.FileReferences.Motions).length)];
model.motion(motionGroup);
}
});
}
}

View File

@@ -49,7 +49,7 @@
/* waifu */
#waifu {
bottom: 10px; /* 设置一个固定的 bottom */
left: 0;
left: 0%;
line-height: 0;
position: fixed;
transform: translateY(0); /* 保证其保持在原来的位置 */
@@ -63,13 +63,13 @@
transform: translateY(0);
}
@media (max-width: 500px) {
@media (max-width: 768px) {
#waifu {
display: none;
}
}
@media (max-width: 1400px) {
@media (max-width: 1300px) {
#waifu-tool {
opacity: 1 !important; /* 手机和平板设备上始终显示 */
transition: none; /* 去掉渐变效果,工具栏立即显示 */
@@ -105,7 +105,7 @@
#waifu-tips {
position: absolute; /* 相对waifu进行定位 */
bottom: 100%; /* 对话框出现在waifu上方 */
left: 0;
left: 5%;
animation: shake 50s ease-in-out 5s infinite;
background-color: rgba(255, 255, 255, .62);
border-radius: 12px;
@@ -160,8 +160,8 @@
color: #aaa;
opacity: 0;
position: absolute;
left: 10px;
bottom: 70px;
left: 200px;
bottom: 24%;
transition: opacity 1s;
}