UserData (Cocos Creator)
最終更新: 2023年3月14日
此页面适用于Cubism 4.2及更早版本的旧版本。 点击此处查看最新页面
概述
UserData是一个在Cocos Creator上可视化模型图形网格中设置的用户数据的功能。
用户数据是允许您将任意标签添加到图形网格的功能,并且可以在指定对SDK执行特殊处理的图形网格等时使用。
参考此处了解有关用户数据的详细信息。
要在Cocos Creator上使用用户数据,请按照以下步骤操作。
- 解析.userdata3.json
- 在图形网格中设置UserData
1. 解析.userdata3.json
使用CubismUserData3Json解析.userdata3.json。
关于CubismUserData3Json,请参考此处。
const userData3Json = CubismUserData3Json.loadFrom(jsonString);
.userdata3.json的路径也可以使用CubismModel3Json从.model3.json中获取。
可以获取的路径是来自.model3.json的相对路径。
const userDataPath = modelJson.fileReferences.userData; const userData3Json = await this.loadJson(this.fileReferences.userData);
参考此处了解有关CubismModel3Json的更多信息。
从解析的.userdata3.json中获取图形网格数据。
const drawableBodies = userData3Json.toBodyArray(CubismUserDataTargetType.ArtMesh);
2. 在图形网格中设置UserData
将从.userdata3.json获得的用户数据应用到Prefab的图形网格。
使用CubismUserDataTag将用户数据信息添加到图形网格。
const drawableBodies = userData3Json.toBodyArray(CubismUserDataTargetType.ArtMesh); for (let i = 0; i < drawables.length; i++) { const index = model3.getBodyIndexById(drawableBodies, drawables[i].id); if (index >= 0) { const tag = drawables[i].getComponent(CubismUserDataTag) ?? drawables[i].addComponent(CubismUserDataTag); tag!.initialize(drawableBodies[index]); } }
请问这篇文章对您有帮助吗?
是否