🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

Plane 뒷면 안보임 및 충돌 감지가 안됩니다.

21.05.16 17:45 작성 조회수 691

0

안녕하세요. 루키즈님 콜리전 관련해 질문이 생겨 연락드립니다. 아래 영상 처럼 윗면만 메테리얼이 지정되고, 게임을 실행시켰을 때 유니티 짱을 벽 근처에 가까이 가면 충돌하는 모션이 생기지만, 아래의 plane바닥과는 다르게 통과할 수 있습니다. 이유를 알수 있을까요?? 감사합니다.

--

------

추가 적으로 유니티 짱의 Capsule Collider에서 Direction 부분을 X-Axis 인것을 하나 더 추가했더니 벽은 충돌 감지를 하나, 처음부터 가만히 서있어도 떼굴떼굴 구르네요...

답변 1

답변을 작성해보세요.

0

뒷면이 안보이는건 자연스러운 현상인데
그래픽스에서 기본적으로 뒷면(정확히는 시계 역방향 순서의 정점으로로 정의된 삼각형)은
그리지 않기 때문입니다.
플레이어나 몬스터나 일반 물체도 몸 내부로 들어가서(?) 살펴보면
아무것도 보이지 않는 것과 유사합니다.
Shader를 이용해서 양면을 그리도록 조절할 수 있긴 하지만
2D 온라인 게임이 목표인 C# 시리즈에서는 다루는 내용은 아닙니다.

두번째로 유니티 물리를 적용받는 경우
UnityChan 안에 있는 RigidBody의 속성이 적용되어
밀치고 넘어지고 온갖 이상한 행동이 일어날 수 있습니다.
Collider 위치에 따라 초근접하면 강하게 밀기 때문에 밀리면서 넘어나는 것이죠.
RigidBody의 IsKinematic을 켜면 물리 적용을 받지 않게 되며
그렇게 엉뚱하게 넘어지는 것도 사라집니다.
RPG 기준으로는 사실 굳이 유니티 물리를 적용할 이유가 없기 때문에
(그리고 최종 게임도 2D로 만들기 때문에) 관련 내용은 깊이 들어가지 않습니다.

채널톡 아이콘