안녕하세요 맥파이입니다.
하고 싶은게 많아서 이것저것 만지작 거리는데, 유니티는 아주 오래전부터 관심을 가지고
공부를 하다가도 잠깐 놓게 되면 다시 만지기가 쉽지 않은 언어였습니다.
맥으로하기에도 좀 무겁고, 맥에서는 버그도 많아서... 자동완성이 안된다거나 등등
몇달전에 다시 열심히 하다가.. 또 놓았다가 다시 시작하는데
매번 볼때마다 새롭게 느껴지네요 ㅋㅋ
그래서 이번엔 정리하면서 익혀보는 중입니다.
저처럼 가끔씩 경제적 자유를 꿈꾸며. '언젠가는 멋진 게임을 만들어서 부자가 될꺼야'라고
꿈을 꾸는 분들은 이 글들이 도움이 될수도 있겠죠
transform.position
일단 위치를 설정하는 소스입니다.
아래 코드는 카메라 포지션을 달아주는 코드였고, person은 gameObject로 주인공을 나타냅니다.
transform.position = person.transform.position + new Vector3(0,0,-10);
결론적으로 주인공의 transform에서 position을 가지고 와서 Vector3(0, 0, -10)만큼 합한 position을 저장한다는 의미입니다.
이게 무슨 말일까요?
주인공의 포지션에 카메라가 지켜볼수 있도록 z축으로 -10만큼 떨어진 position을 구한다.
그리고 이 포지션은 카메라의 position이다라는 의미입니다.
즉, 주인공을 따라가면서 카메라 위치를 잡아주어라라는 의미입니다.
주인공의 포지션에 카메라 시점을 더해서 실시간으로 업데이트를 진행해주면, 카메라가 주인공을 따라다니게 되겠지요?
SerializeField
SerializeField를 알아봅시다.
특정 변수를 시리얼라이즈하여 별도의 컴파일 없이 툴에서 바로 적용하여 테스트 할수 있다.
뭔말인지 모르겠지요? 코드를 먼저 보시죠.
[SerializeField]
private float destroyTime = 0.5f;
지금은 윈도우 피씨라 해당 화면을 캡쳐하긴 어렵네요.
유니티를 사용함에 따라 특정 코드값을 수정하며, 테스트하기가 힘듭니다.
2022년 맥북프로임에도 불구하고, 한번 테스트를 하려고 run 시키면, 맥북프로는 제트기로 변신을 합니다.
"슈우우------------------------웅, 위이이이이------------------잉"
이런경우에 우리는 SerializeField를 선언하고 개발툴 컴포넌트쪽에 해당 변수를 수정가능하도록 활성화 시킬수 있습니다.
Destroy
gameObject를 삭제해버리는 방법은 아래와 같습니다.
Destroy(other.gameObject, destroyTime
위 Destroy함수를 통해서 제거할수가 있습니다.
제거는 뭐 굳이 설명할 필요가 없을것 같습니다.
다음에 학습할 내용은 유니티 라이프사이클인데요, 언제 할지는 잘 모르겠어요.
링크로 사전 예고를 미리 합니다.
https://docs.unity3d.com/Manual/ExecutionOrder.html
Unity - Manual: Order of execution for event functions
Instantiating Prefabs at run time Order of execution for event functions Running a Unity script executes a number of event functions in a predetermined order. This page describes those event functions and explains how they fit into the execution sequence.
docs.unity3d.com
바로 한다는건 아니에요...
하고 싶은거 할껍니다.
또 만나요!!
'개발 관련 > Unity' 카테고리의 다른 글
[Unity] 01 - 설정부터 (0) | 2023.07.15 |
---|---|
[Unity] window와 MAC에서 GIT 연동해서 사용하기 (0) | 2023.05.03 |
[Unity] transform.Translate(), Rotate() 학습 (0) | 2022.10.11 |
[Unity] Visual Studio Code 자동완성 안될 경우 대처 방법 (mono) (0) | 2022.10.10 |