UserData (Cocos Creator)
업데이트: 2023/03/14
개요
UserData는 모델의 아트메쉬에 설정된 사용자 데이터를 Cocos Creator에서 가시화하는 기능입니다.
사용자 데이터는 아트메쉬에 대해 임의의 태그를 부여할 수 있는 기능으로, SDK상에서 특수한 처리를 실시하는 아트메쉬를 지정하는 경우 등에 활용할 수 있습니다.
사용자 데이터에 대한 자세한 내용은 여기를 참조하십시오.
Cocos Creator에서 사용자 데이터를 사용하려면 다음 절차를 수행하십시오.
- .userdata3.json 파싱
- 아트메쉬에 UserData 설정
1. .userdata3.json 파싱
.userdata3.json을 CubismUserData3Json을 사용하여 파싱합니다.
CubismUserData3Json에 대해서는 여기를 참조하십시오.
const userData3Json = CubismUserData3Json.loadFrom(jsonString);
.userdata3.json의 패스는 .model3.json에서 CubismModel3Json을 사용하여 취득할 수도 있습니다.
취득할 수 있는 패스는 .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]); } }
이 기사가 도움이 되었나요?
네아니요