-
07장. 닷지_탄알제작Unity/레트로의 유니티 게임 프로그래밍 에센스 2020. 9. 2. 14:49
Collider - is Trigger : 충돌 감지
프리팹 : 언제든지 재사용할 수 있는 미리 만들어진 게임 오브젝트 에셋(파일). 파일로 저장되기 때문에 현재 씬뿐만 아니라 다른 씬에서도 사용 가능.
게임 오브젝트를 하이어라키 창에서 프로젝트 창으로 드래그&드롭하여 프리팹 생성.
반대로 프로젝트 창에서 하이어라키 창으로 드래그&드롭하면 복제.
Destroy() 는 비동기성 파괴.
MonoBehaviour 클래스의 멤버로 GetComponent(), gameObject, transform 가 있음. -> this를 붙여도 됨.
OnTriggerEnter, OnCollisionEnter 메시지를 리지드바디 컴포넌트. 충돌 메시지를 사용하려면 최소 하나의 게임 오브젝트는 리지드바디 컴포넌트를 가지고 있어야함.
OnCollisionEnter/Stay/Exit : 충돌하는 두 게임 오브젝트가 일반적인 콜라이더를 가진 경우.
메서드의 입력으로 충돌 관련 정보가 Collision 타입으로 들어옴. 입력으로 들어온 collision을 통해 충돌한 상대방 게임 오브젝트, 충돌 지점, 충돌 표면의 방향 등을 알 수 있음. 서로 밀어냄
OnTriggerEnter/Stay/Exit : 충돌하는 두 게임 오브젝트 중 최소 하나가 트리거 콜라이더인 경우. 양쪽 모두 실행됨. 충돌한 상대방 게임 오브젝트의 콜라이더 컴포넌트가 Collider 타입으로 들어옴. 상세한 충돌 정보가 필요 없는 경우. 서로 통과함.
OnCollision과 OnTrigger 둘 중 하나만 실행되고, 트리거 콜라이더가 하나라도 있는 경우, OnTrigger.
프리팹과 스크립트 : Apply All vs Revert All ?
-> 하이어라키 창에 있는 (원본이 프리팹인) 오브젝트대로 프리팹을 수정할지 아니면 프리팹 설정으로 초기화 할지.
FindObjectOfType() vs FindObjectsOfType() : 전자는 활성화된-로드된 타겟 오브젝트 중에서 첫번째를 반환, 후자는 찾은 오브젝트 여러개를 배열로 반환.
docs.unity3d.com/ScriptReference/Object.html
Instantiate() : 실시간으로 오브젝트를 생성할 때.
.transform.LookAt(target) : 게임 오브젝트(자신)의 정면 방향이 target(transform)을 향하도록 회전.
'Unity > 레트로의 유니티 게임 프로그래밍 에센스' 카테고리의 다른 글
09장. 방향, 크기, 회전 (0) 2020.11.10 08장. 닷지_게임 매니저와 UI, 최종 완성 (0) 2020.09.07 06장. 닷지_플레이어 제작 (0) 2020.08.27 05장. 게임 오브젝트 제어하기 (0) 2020.08.26 04장. C# 프로그래밍 시작하기 (0) 2020.08.25