본문 바로가기

Unity/Unity3D_Quater

Unity3D_Quater - 마우스에 의한 회전 및 공격 구현, 물리문제 해결

1.마우스에 의한 회전 구현(raycast 활용)

 - 스크린에서 마우스클릭으로 Ray를 발사하기

*camera.ScreanPointToRay() -> 스크린에서 월드로 ray를 쏘는 함수

*out -> return처럼 반환값을 주어진 변수에 저장하는 키워드

*rayHit.Point -> Ray가 닿았던 지점의 위치

*참고) raycast out에 관한.. 

ssabi.tistory.com/29

 

[Unity3D] 레이캐스트(Raycast)

레이캐스트(Raycast) 레이캐스트는 광선을 쏘는 것을 의미합니다. 여기서는 레이를 쏜다 라고 표현하겠습니다. 레이캐스트를 사용하면 광선에 충돌되는 콜라이더(Collider)에 대한 거리, 위치 등의

ssabi.tistory.com

2. 물리문제 해결

  1) 총알 및 총알케이스와 플레이어가 충돌하지 않도록 레이어충돌설정

 - 먼저 캐릭터 및 총알 바닥에 각각의 Layer를 설정해준다

 - Edit - Project Settings - Physics에서 각 충돌관계 그래프에 체크해제를 해준다(콜라이더와 관련된 충돌, 트리거 모두 무효화 시켜줌)

 

2) 아이템과 캐릭터간의 충돌 없애기

* 하나의 오브젝트에 콜라이더가 2개인경우 GetComponent<>()를 하면 해당 오브젝트의 콜라이더중 상단에 있는 콜라이더의 컴포넌트를 가져온다(프리팹에서 이 콜라이더 컴포넌트의 순서를 조절하려면 open prefab을 열고 올리고 싶은 컴포넌트를 move up 해준다)