Unity/기초 예제

유니티 Physics Materials 물리 재질 간단한 예제 유니티 기초

최애뎡 2021. 5. 26. 19:54
728x90
반응형

Cube(Black)

 

좌: Cube(Black), 우: Physics Materials 설정값

이번 예제는 간단하게 3D Object인 Plane과 Cube를 사용하였으며 스크립트는 없습니다.

(사실 이렇게 글 시작 전 이미지 하나 띄우는 게 생각보다 꼭 봐야 할 이미지인데 이번엔 봐야 할 게 더 생기다 보니 이렇게 이미지가 많아졌습니다.. 흠.. 가독성을 위해 다음부턴 더 보기 좋게 올려보도록 하겠습니다.. 저게 뭔지도 모르는데 일단 보고 하라는 느낌이라 ..ㅠ)

-Physics Materials-
물리 재질은 게임 오브젝트의 모습이 아니라 오브젝트가 물리 엔진에 반응하는 방식에 영향을 줍니다.
농구공과 볼링공의 탄성의 차이를 생각하면 될 것 같습니다.
둘은 질량에도 차이가 있지만 표면이 매우 달라 다른 표면에 다르게 반응합니다
물리 재질은 프로젝트에서 Create 버튼을 눌러 만들 수 있습니다.
만든 물리 재질을 클릭하여 인스펙터 창을 보면
표면이 다른 표면에 어떻게 반응할지를 제어할 수 있습니다.
--------------------------------------------------------------------------------------------------------
    Dynamic Friction -> 오브젝트가 움직이면서 마찰하는 정도
    Static Friction -> 고정 위치에서 오브젝트가 이동하기 위해 가해야 하는 힘의 크기
    Bounciness(탄력성) -> 오브젝트가 튀는 방식 제어 높을수록 오브젝트가 쉽게 튀어 오름
    Friction Combine -> 특정 재질로 다른 오브젝트에 마찰이 결합되는 방법을 결정
    Bounce Combine -> 특정 재질로 다른 오브젝트에 탄력이 결합되는 방법을 결정
    Combine.Average -> 두 충돌하는 재료의 마찰, 탄력의 평균
    Combine.Maximum -> 두 충돌하는 재료의 마찰, 탄력 중 큰 것을 사용
    Combine.Minimum -> 두 충돌하는 재료의 마찰, 탄력 중 작은 것을 사용
    Combine.Multiply -> 두 충돌하는 재료의 마찰, 탄력의 곱
--------------------------------------------------------------------------------------------------------
여기서 물리 재질은 주어진 게임 오브젝트에서 충돌체(Collider -> Material)에 적용됩니다!

일단 지금 예제에서 간단히 보여주고자 하는 부분을 알기 위해 실행 화면 바로 보도록 하겠습니다!

!? Cube가 자연스럽게 미끄러지는 게 보이시나요 !?
Dynamic Friction,  Static Friction을 모두 0으로 한 Physics Materials을
Player(Cube)와 Cube(Black)에 적용하였기 때문에 그렇습니다.
이번 예제에서 Friction Combine Minimum으로 해두었는데
사실 Dynamic Friction이 둘 다 0이기 때문에 큰 의미는 없다고 보셔도 됩니다.
여기서 Bounciness의 값을 최댓값인 1로 
올려보면

이렇게 통통 튀는 Cube를 보시게 될 겁니다. 여기서 주체 못 하고 튀게 되는 건 아무래도
Dynamic Friction이 0인데 반해 Bounciness 값이 1이기 때문일 겁니다.
그리고 Friction Combine,  Bounce Combine의 경우에는
다른 두 오브젝트에 다른 설정의 Physics Materials을 적용하였을 때 사용하시기 좋습니다.
아무래도 역시 가장 좋은 것은 직접 해보는 거겠죠?!

이 포스팅은

https://unity3d.com/kr/learn/tutorials/topics/physics/physics-materials?playlist=17120

을 참고하였습니다.

반응형