CREATE YOUR WORLD
Scripting
Tag & Layer
7min
unity의 태그 및 레이어 기능을 사용하여 월드를 개발할 수 있습니다 태그 unity에서 사용했던 것과 동일한 방식으로 태그 기능을 사용할 수 있습니다 ❗️ 주의 최대 64개의 태그를 사용할 수 있습니다 아래는 zepeto 캐릭터에 태그를 설정하는 예제 코드입니다 import { zepetoscriptbehaviour } from 'zepeto script'; import { zepetocharacter, zepetoplayer, zepetoplayers } from 'zepeto character controller'; export default class playertag extends zepetoscriptbehaviour { private zepetocharacter \ zepetocharacter; start() { zepetoplayers instance onaddedlocalplayer addlistener(() => { this zepetocharacter = zepetoplayers instance localplayer zepetoplayer character; // 플레이어 태그 설정 this zepetocharacter gameobject tag = "player"; }); } } 아래는 tag 함수를 사용하는 예제 코드입니다 import { zepetoscriptbehaviour } from 'zepeto script'; import { gameobject } from 'unityengine'; export default class tagexample extends zepetoscriptbehaviour { start() { let findobj = gameobject findgameobjectwithtag("customtag"); if (findobj != null) { console log(`name ${findobj name}`); } } } 📘 유니티 태그 정보 https //docs unity3d com/manual/tags html https //docs unity3d com/manual/tags html 레이어 unity에서 사용했던 것과 같은 방식으로 layer 기능을 사용할 수 있습니다 ❗️ 주의 layers 번호 20에서 27을 사용할 수 있습니다 다음은 zepeto 캐릭터의 레이어를 설정하는 예제 코드입니다 import { zepetoscriptbehaviour } from 'zepeto script'; import { zepetocharacter, zepetoplayer, zepetoplayers } from 'zepeto character controller'; export default class playerlayer extends zepetoscriptbehaviour { private zepetocharacter \ zepetocharacter; start() { zepetoplayers instance onaddedlocalplayer addlistener(() => { this zepetocharacter = zepetoplayers instance localplayer zepetoplayer character; // 플레이어 레이어 설정 this zepetocharacter gameobject layer = 20; }); } } 다음은 layer 함수를 사용하는 예제 코드입니다 import { zepetoscriptbehaviour } from 'zepeto script'; import { camera, input, physics, raycasthit } from 'unityengine'; export default class layerexample extends zepetoscriptbehaviour { update() { if (input getmousebuttondown(0)) { let ray = camera main screenpointtoray(input mouseposition); let ref = $ref\<raycasthit>(); let layermask = 1 << 20; if (physics raycast(ray, ref, 100, layermask)) { let hitinfo = $unref(ref); console log(`name ${hitinfo collider gameobject name}`); } } } } 📘 유니티 레이어 정보 https //docs unity3d com/manual/layers html https //docs unity3d com/manual/layers html