내일배움캠프 34일차 TIL, Collider

황오영·2024년 6월 4일
0

TIL

목록 보기
34/56
post-thumbnail

Collider..

  • 오늘은 숙련주차 과제하면서 Raycast와 Collider에 관해서 정리해보고 싶은것이 있어서 정리해 보고자한다.

Collider

  • 유니티의 충돌관련 시스템이다. 보통 Box,Sphere,Capsule 3가지가 있고 Rigidbody와 함께 물리 법칙을 이용할때 많이 사용한다.
  • 자료를 찾다가 알게 되었는데 콜라이거다 단순할 수록 성능에 부하를 주지않고 처리 속도가 빨라진다고 한다. Spehere -> Capsule -> Box -> Mesh 순으로 퍼포먼스적으로 성능에 부하가 걸린다고 한다. (특강에서 얼핏들어서 보통 Mesh는 최소한으로 쓰는게 좋다고 했던것이 기억이 난다. Mesh가 정밀하게 탐색은 가능한 부분은 있다!)

Class Tpye 속성들 - Collsion

  • collider : 충돌한 콜라이더
  • contacts : 물리엔진에 의해 생성되는 물체 간의 충돌지점(접점은 여러개가 가능하다.)
  • normal : 충돌지점의 법선
  • point : 충돌 지점
  • separation : 충돌한 콜라이더간의 거리
  • thisCollider : 충돌 지점의 첫 번째 Collider
  • impulse : 충격량
  • relaitveVelocity : 충돌한 두 객체의 상대적인 선속도
    이정도 쓰이고 그외는 평소에 알고있었던 내용 contacts와 normal 같은 경우 이번 프로젝트를 하면서 알게된 내용이라 잘 쓰고있다 특히 normal은 평면의 법선벡터를 구하는 함수라 앞으로 종종 사용이 가능할듯.

충돌 액션 매트릭스

<출처 : 유니티 공식 문서>

  • 어떤 상황에서 감지가 되고 안되는지를 잘 기억해둘것

Ray

  • 보통 이러한 콜라이더들을 감지하는데 사용하는 것이 Ray 구조체이다. 말 그대로 레이저 포인트를 쏜다고 생각하면 되고 충돌 구조체를 저장하기 위해 RaycastHit을 사용 2D와 3D 버전이 다르므로 사용할 때 주의하자.

오늘의 회고

  • 건축시스템 프로토타입 느낌으로 구성을 했는데 생각보다 어렵다. 일단 구현은 했는데 기존 건물이 있을때 충돌감지도 잘 못해서 수정할 것들은 수정해 나가면서 작업 해야겠다. 우선은 마인크래프트 느낌으로 건축하며 벽에 붙이는것 까지는 성공했다. 내일 마저 마무리해야지
  • 주차가 조금 길기는 한데 확실히 3D프로젝트 하는게 재밌어서 몰입감이 좀 더 있는것같다. 열심히 해봐야겠다.(생각보다 기대를 많이받아서 은근 부담이랄까 ;ㅅ;)
profile
게임개발을 꿈꾸는 개발자

0개의 댓글