본문 바로가기

Unity47

충돌처리(Tag, OnTriggerEnter, OnCollisionEnter) 충돌한 상대방을 어떻게 인식하는가? Tag! Tag란? 게임 오브젝트를 분류하는 방법 중 하나. Apply 누르면 같은 게임 오브젝트들에 일괄 적용 가능 충돌은 어떻게 감지하는가? 스크립팅 - 함수 추가(OnTriggerEnter) 트리거인 콜라이더와 충돌할 때 자동으로 실행 유니티가 Trigger인 Collider과 부딪칠 때 OnTriggerEnter라는 메시지를 자동으로 충돌한 물체들에게 뿌림. 따라서 우리는 어떻게 충돌을 캐치할까 고민할 필요가 없음. 철자만 맞춰서 OnTriggerEnter라는 함수만 잘 만들어주면 유니티가 자동으로 이 친구를 발동시켜줌 또 충돌한 상대방을 끼워넣어줌(Collider other) 따라서 함수에 충돌하면 어떤 처리 할것인가만 함수에 넣어주면 됨. Collision은.. 2021. 7. 3.
Transform을 스크립트에서 쓰기, Time.deltaTime Transform 실행 1. 대문자 Transform 2. 소문자 transform ( 쇼트컷) 소문자 transform은 나 자신의 transform으로 바로 들어감! 모든 게임 오브젝트는 무조건 transform을 가지고 있으니까 굳이 찾아가서 쓸 필요 없이 소문자 transform으로 바로 나 자신의 게임 오브젝트에 붙어 있는 Transform으로 바로 들어가게 해둠(오른쪽 그림) 다 그런건 아님. 예외적으로 transform만 소문자 쓰면 바로 쇼트컷 가능한 것임. 매번 말고 1초에 일정 각도로 돌고 싶다 해결 방법: 시간 간격으로 쪼개기 컴퓨터 사양이 달라도 마지막에 한 번 깜빡이는 주기를 넣어주면 원하는 값이 나옴 이걸 지원하는게 Time.deltaTime 2021. 7. 3.
Box Collider- is Trigger Trigger의 역할은 물체에 물리적인 표면은 없지만 충돌 자체는 감지하게 해줌. 즉, 충졸 그 자체는 감지함. 단, 물리적인 표면이 없기 때문에 상대방이 뚫고 지나갈 수 있음. 2021. 6. 29.
Rigidbody-Constraints-Freeze Position, Rotation / Prefab 개념 다른 물체에 의해서 플레이어가 튕겨나가지 않게 해주기 위해 Constranits 사용 Hierachy에 있는 itemBox를 프로젝트 패널에 drag & drop 하면 Prefab이 생김. Prefab은 미리 만들어진 친구라는 뜻으로 프로젝트 세팅에 있는 프리팹인 ItemBox를 다시 하이라키 창으로 드래그 앤 드롭하면 똑같은 친구가 생김. Prefab은 미리 만들어져있어서 다시 노가다 할 필요 없이 재활용 할 수 있음. 프리팹은 재사용 가능한 미리 만들어진 게임 오브젝트. 언제 어디서나 드래그 앤 드롭해서 찍어낼 수 있다. 2021. 6. 29.
유니티 버전 업데이트시 패키지매니저 에러 해결 2021. 6. 29.
GetComponent<> 이렇게 유니티 창에다 Player Rigidbody 같은 변수를 갖다 두면 기획자가 드래그 앤 드롭 하면서 오류를 낼 수 있음. 그래서 이 변수를 숨기고 싶은데 숨기면 또 speed가 Rigidbody를 받아와야하는데 없으니까 에러가 남. 해결책은? 코드로 가져오기! GetComponent는 게임 오브젝트를 뒤져서 안에 명시한 타입을 찾아줌. 드래그 앤 드롭 한 것과 똑같은 효과가 남. 는 Generic이라고 부르는 문법인데 특정 타입에 대해서 함수를 실행함. 즉 Rigidbody에 대해서 GetComponent를 하겠다. 정리 드래그 앤 드롭으로 컴포넌트를 적용해줄 수 있지만 이 방법은 잘못 드래그 하면 실수가 날 수 있음. 그래서 private로 안보이게 한 뒤 코드 상에서 start안에.. 2021. 6. 26.