Unity/기초 예제

유니티 Joints, Fixed Joint, Spring Joint 간단한 예제 유니티 기초

최애뎡 2021. 5. 31. 19:55
728x90
반응형

유니티에서 제공하는 Joint 중 Fixed Joint_Spring Joint를 알아보도록 하겠습니다.
이번엔 실행 화면을 먼저 보고 진행하도록 하겠습니다.

이번 예제는 간단하게 3D Object인 Plane과 Capsule, Cube, Sphere를 사용하였으며
스크립트는 없습니다.
(수직 하강하는 Cube는 기본 Cube에 Rigidbody가 적용되어있습니다.)

-Fixed Joint-
Fixed Joint는 게임 오브젝트를 Rigidbody를 가지고 있는
게임 오브젝트에 고정시키는데 사용할 수 있습니다.
Fixed Joint의 속성 중
Break Force, Break Torque는 조인트를 분리하는데 필요한 최소한의 힘을 의미합니다.
조인트가 분리되면 게임 오브젝트는 다시 자유롭게 움직일 수 있게 됩니다.
-Spring Joint-
Spring Joint는 게임 오브젝트가 Rigidbody를 가지고 있는 다른 게임 오브젝트에
스프링을 달수 있게 해준다고 보시면 됩니다.
Spring Joint의 속성
Spring -> 스프링의 강도를 측정 높을수록 강도가 센 스프링
Damper -> 움직이는 스프링이 느려지는 정도, 값이 클수록 스프링이 늘고 줄어드는 시간이 상승
Min, Max Distance ->  스프링의 최소, 최대 길이를 설정
모든 Joint는 Rigidbody를 요구합니다!

실행 화면에서 가장 위에 있는 Capsule이 고정되어있는 이유가
바로 Fixed Joint를 사용하였기 때문입니다.
여기서 Fixed Joint 속성 중 첫 번째 속성인 Connected Body 부분이 none으로 아무 오브젝트도 들어가 있지 않음에도 불구하고 또한 Capsule이 Rigidbody로 중력을 적용받고 있음에도 불구하고 뷰상에서 고정되어있는 모습을 보실 수가 있습니다. 즉 굳이 어떠한 오브젝트에 연결하지 않아도
그 오브젝트가 있는 위치에 고정이 된다고 보실 수 있습니다.
물론 다른 오브젝트에 연결하면 연결한 오브젝트에 고정이 됩니다!
가장 위에 있던 Capsule의 아래 있는 Capsule Sphere는 Spring Joint로 연결되어있습니다.

Spring Joint의 Connected Body로 순서를 맞춰 연결하였습니다.
-> Capsule(1)은 Capsule에, Capsule(2)는 Capsule(1)에 Capsule(3)은 Capsule(4) ------
여기서 Anchor는 스프링의 위치 정도로 생각하시면 좋을 것 같습니다.
만약 Connected Body에 아무것도 연결하지 않고 실행을 했다면

이렇게 각자 따로 놀게 됩니다.

Capsule의 위쪽에 작은 주황색 점이 보이시나요?
이게 Anchor이고 여기에 스프링을 다신다고 생각하시면 됩니다.
그러면 이 주황색 점을 기준으로 스프링이 생성되고 중력이 적용하기 때문에
실행 화면처럼 스프링이 아래로 늘어나게 됩니다.

이번 포스팅은 뭐랄까.. 유니티 자습서 내용 영상이 음.. .
약간 번역이 좀 ..  어려워서인지 내용 정리가 아쉬운 것 같습니다..

이 포스팅은

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

 

3D Physics - Unity Learn

Explore the most important topics related to the Unity 3D Physics engine, from Colliders to Raycasting.

learn.unity.com

을 참고하였습니다.

반응형