물리 머티리얼(Physics Material)
물리 머티리얼(Physics Material)은 충돌하는 오브젝트의 마찰 또는 바운스 효과를 조정하는데 사용된다. 물리 머티리얼을 만들고, 물리 오브젝트의 Collider에 넣으면 오브젝트에 마찰, 탄력성을 구현할 수 있다.
물리 머티리얼 만들기 : Assets > Create > Physic Material

📌 프로퍼티
- Dynamic Friction (동적 마찰) : 오브젝트가 움직이고 있을때 사용되는 마찰력으로 0~1 사이의 값.
(0이면 얼음처럼 미끄러워지고, 1이면 오브젝트가 큰 힘이나 중력에 밀리지 않는 한 빨리 정지한다.) - Static Friction (정적 마찰) : 오브젝트가 움직이지 않고 표면 위에 가만히 놓여있을 때 사용되는 마찰력으로 0~1사이의 값.
(0이면 얼음처럼 미끄러워지고, 1이면 경사진 곳에 놓여있어도 오브젝트가 미끄러지지 않는다.) - Bounciness (탄력성) : 표면의 탄력성으로 0~1 사이의 값.
(0이면 오브젝트가 바운스하지 않고 1이면 오브젝트가 에너지 손실 없이 바운스한다.) - Friction Combine (마찰 결합) : 충돌하는 두 오브젝트의 마찰력을 합치는 방법
-> Average, Minimum, Maximum, Multiply - Bounce Combine (탄력 결합) : 충돌하는 두 오브젝트의 탄력성을 합치는 방법
-> Average, Minimum, Maximum, Multiply
📌 Combine 우선순위

물리 머티리얼 수치값이 다른 두 오브젝트가 충돌했을 때 한 오브젝트는 Average방식, 다른 한 오브젝트는 Maximum이라면 과연 두 오브젝트의 마찰, 탄력값은 Combine 우선순위에 따라 결정된다.
Average < Minimum < Multiply < Maximum
maximum의 우선순위가 가장 높으며 Average의 우선순위가 가장 낮다.
따라서 위 경우에는 Maximum의 값이 마찰, 탄력을 계산하는데 사용된다.
💡 직접 테스트 해보기
Q. 경사진 곳에서 가만히 있는 오브젝트가 미끄러져 내려가게 하려면?
A. Dynamic Friction과 Static Friction을 0 또는 0에 가깝게 설정한다.
Static Friction은 아직 움직이기 전, 버티는 힘이기 때문에 오브젝트가 미끄러지기 시작할 수 있도록 0 또는 0에 가깝게 지정하고, 움직이기 시작한 오브젝트의 마찰(Dynamic Friction)도 낮게 설정하여 오브젝트가 계속해서 미끄러질 수 있도록 한다.

Q. 오브젝트의 바운스를 구현하려면?
A. Bounciness를 0보다 큰 값으로 설정하면 된다. 1에 가까울 수록 에너지 손실이 적은 바운스가 구현된다.

끝!
물리 머티리얼 - Unity 매뉴얼
Physic Material 은 충돌하는 오브젝트의 마찰 또는 바운스 효과를 조정하는 데 사용합니다.
docs.unity3d.com
wooj22 - Overview
🎮 Game Programmer. wooj22 has 22 repositories available. Follow their code on GitHub.
github.com
양우정
www.youtube.com
'Game Engine > Unity' 카테고리의 다른 글
| [Unity] 전역 조명(GI)과 라이트 매핑, 라이프 프로브 개념 (0) | 2025.04.08 |
|---|---|
| [Unity] 고정 조인트(Fixed Joint) (0) | 2025.04.08 |
| [Unity] PlayerPrefs 클래스를 활용한 데이터 저장 (0) | 2025.04.08 |
| [Unity] 터널링(Tunneling)과 Collision Detection (0) | 2025.04.08 |
| [Unity] 유용하게 활용되는 유니티 어트리뷰트(Attribute) 모음 (0) | 2025.04.08 |