Inflearn コミュニティ Q&A
[질문] Component 이름 관련해서 질문이 있습니다.
解決済みの質問
作成
·
116
0
안녕하세요.
강의를 듣다보면
애니메이션 상태값이나 GameObject 이름등을
참조할대 매번
[이름 오탈자에 주의해 주세요]
라는 말씀을 하고 계시는데요.
유니티 외 다른 프로그래밍을 할때는 이러한 문제를 막고자
이름을 상수로 고정 선언해두고, 해당 값을 참조하고 있는데,
유니티에서는 이러한 접근은 할 수 없는 것일까요?
const val SPAWN_POINT_GROUP = "SpawnPointGroup"
같은 느낌으로 말이죠.
C#unity
回答 1
1
indiegamemaker
インストラクター
안녕하세요.
처음 하시는 분들을 위해 오탈자에 대한 주의사항을 말씀드렸습니다. 조금 과했나봅니다.ㅎ
말씀하신데로 C#도 당연히 상수가 존재합니다. 변경되지않는 문자열을 다음과 같이 선언하고 사용하셔도 좋습니다.
const string SPAWN_POINT_GROUP = "SpawnPointGroup";
readonly string SPAWN_POINT_GROUP = "SpawnPointGroup";문자열을 여러곳에서 접근한다면 아래와 같이 상수로 선언하고 접근하시는것이 바람직합니다.
indiegamemaker
インストラクター
네, 위 코드는 스크립트에서 게임오브젝트 이름을 상수로 정의하시고 사용하는 방법입니다.
제가 질문을 정확히 이해했는지 모르겠지만, 생성한 오브젝트의 이름을 런타입(실행 중)에 변경하시고자 한다면 다음과 같이 하시면 되세요.
const string SPAWN_POINT_GROUP = "SpawnPointGroup";
var spawnPointGroup = new GameObject(SPAWN_POINT_GROUP);
또는
spawnPointGroup.name = SPAWN_POINT_GROUP;paehwang
質問者
좋은 말씀 감사합니다.
제가 글을 쓰는 재주가 없나봐요.
에디터 인스펙터에 있는 Game Object 이름 을 어딘가 Resource 에 정의한 값을 쓰고,
해당 값을 인스펙터도 쓰고 스크립트에서도 쓰면,
이름으로 정보를 찾을 때 오타를 걱정할 필요가
없을거 같아서 문의드렸던겁니다.
실시간으로 무언가를 바꾸고자하는건 아니었구요.






아 저 값은 스크립트에서만 사용할 수 있고 실제 에디터에서 생성한 오브젝트의 인스펙터에서는 해당 오브젝트의 이름으로 지정할때 사용할 수는 없는 것이죠?