[질문] Component 이름 관련해서 질문이 있습니다.
안녕하세요.
강의를 듣다보면
애니메이션 상태값이나 GameObject 이름등을
참조할대 매번
[이름 오탈자에 주의해 주세요]
라는 말씀을 하고 계시는데요.
유니티 외 다른 프로그래밍을 할때는 이러한 문제를 막고자
이름을 상수로 고정 선언해두고, 해당 값을 참조하고 있는데,
유니티에서는 이러한 접근은 할 수 없는 것일까요?
const val SPAWN_POINT_GROUP = "SpawnPointGroup"
같은 느낌으로 말이죠.
답변 1
1
안녕하세요.
처음 하시는 분들을 위해 오탈자에 대한 주의사항을 말씀드렸습니다. 조금 과했나봅니다.ㅎ
말씀하신데로 C#도 당연히 상수가 존재합니다. 변경되지않는 문자열을 다음과 같이 선언하고 사용하셔도 좋습니다.
const string SPAWN_POINT_GROUP = "SpawnPointGroup";
readonly string SPAWN_POINT_GROUP = "SpawnPointGroup";문자열을 여러곳에서 접근한다면 아래와 같이 상수로 선언하고 접근하시는것이 바람직합니다.
1
네, 위 코드는 스크립트에서 게임오브젝트 이름을 상수로 정의하시고 사용하는 방법입니다.
제가 질문을 정확히 이해했는지 모르겠지만, 생성한 오브젝트의 이름을 런타입(실행 중)에 변경하시고자 한다면 다음과 같이 하시면 되세요.
const string SPAWN_POINT_GROUP = "SpawnPointGroup";
var spawnPointGroup = new GameObject(SPAWN_POINT_GROUP);
또는
spawnPointGroup.name = SPAWN_POINT_GROUP;
1
좋은 말씀 감사합니다.
제가 글을 쓰는 재주가 없나봐요.
에디터 인스펙터에 있는 Game Object 이름 을 어딘가 Resource 에 정의한 값을 쓰고,
해당 값을 인스펙터도 쓰고 스크립트에서도 쓰면,
이름으로 정보를 찾을 때 오타를 걱정할 필요가
없을거 같아서 문의드렸던겁니다.
실시간으로 무언가를 바꾸고자하는건 아니었구요.
Dictionary Key를 int에서 string으로 변경한 이유에 대한 문의
0
12
1
프로젝트 질문 문의
0
41
1
UI 기능 관련 질문이 있습니다!
0
31
2
03-01 (16. CharacterController)
0
27
2
TLS 질문드립니다.
0
39
2
prefab 관련 문의
0
66
1
Bullet이 방향 문제가 있어요.
0
108
3
딜레이를 주고 싶을 때 코루틴을 사용하는 이유
0
106
2
Spider 사망 시 두 번 폭발관련
0
101
2
Player에 Event 연결 관련 질문
0
94
2
Barrel에 IDamagable 적용 관련 질문
0
74
2
Stun 로직 관련해서 문제가 발생합니다.
0
189
2
Bullet, AimDot 코드 질문
1
135
2
안녕하세요 이벤트 버스 패턴에 대해서 궁금한게 있어서요
0
210
2
선생님 궁금한게 있는데요
0
166
2
비헤이비어 그래프 방식이요
1
136
2
콜백 함수, garbage colleection에 대해
0
119
1
스크립터블 오브젝트에 대해 질문이 있습니다
0
125
1
오디오 관련해서 질문 있습니다.
0
150
2
[질문] ScriptableObject 를 활용한 이벤트 버스 관련 질문이 있습니다.
0
279
1
[질문] Custom NavMesh Link 관련해서 궁금한게 있습니다.
0
104
2
[질문] Scriptable Object르 이용한 메모리 최적화 관련 질문이 있습니다.
0
216
2
강사님~ 오디오 파일 관련해서 질문있습니다!
0
180
2
IDamagable 활용
0
167
1





