2023. 12. 8. 03:13, Unity
개체들끼리 물리적인 접촉이 일어날 시에 순간적으로 빠르게 접촉하고 벗어나는 경우 의도하던 효과가 발생하지 않는 경우에(예를들어 oncollisionstay2d 등을 활용하였는데 순간적으로 지나쳐가며 해당 동작이 제대로 동작하지 않을때), Project Settings 의 Physics 2D 설정에서 Auto Sync Transforms 설정을 생각해볼것.
해당 내용에 대해서는 아래 GPT 답변을 참고할것.
Unity Physics 2D 옵션 중 "Auto Sync Transforms"는 Rigidbody2D 컴포넌트의 옵션 중 하나입니다. 이 옵션이 체크되면 Rigidbody2D의 변환(Transform) 변경이 물리 시스템과 동기화됩니다. 이 옵션의 동작에 대한 설명은 다음과 같습니다:
- Auto Sync Transforms (자동 동기화):
- Rigidbody2D의
transform.position,transform.rotation,transform.localScale등의 속성이 변경될 때, 이 옵션이 체크되어 있으면 이 변화가 물리 시스템에 즉시 반영됩니다. - Rigidbody2D의 위치, 회전, 크기 등이 변경되면 이를 즉시 물리 엔진에게 알려주어 해당 변화가 다음 물리 업데이트에서 고려됩니다.
- Rigidbody2D의
- Auto Sync Transforms 체크 시의 동작:
- Rigidbody2D의
transform속성이 변경되면 Unity는 해당 변화를 즉시 물리 시스템에 전파합니다. - 이는 주로 Rigidbody2D를 직접 제어하거나 외부 스크립트 등에서 transform을 조작할 때 사용됩니다.
- Rigidbody2D의
- Auto Sync Transforms 체크하지 않은 경우:
- Rigidbody2D의
transform속성이 변경되어도 물리 시스템에 즉시 반영되지 않습니다. - 대신, 다음 물리 업데이트 사이클에서 해당 변화가 고려됩니다. 이 경우, 물리 시뮬레이션의 업데이트 주기에 따라 지연이 발생할 수 있습니다.
- Rigidbody2D의
- 사용 사례:
- Auto Sync Transforms를 체크하면 Rigidbody2D를 직접 제어하거나, 특정 조건에서 transform을 변경하는 상황에서 물리 시스템과의 동기화를 보장할 수 있습니다.
이 옵션을 적절히 활용하면 Rigidbody2D의 변환을 보다 정확하게 제어할 수 있습니다. 하지만 과도한 빈번한 변환 업데이트는 성능 문제를 일으킬 수 있으므로 주의가 필요합니다.
+++++++
하지만 이에 대해서 ,

위와 같이 퍼포먼스에 영향을 미쳐서 권장되지 않는 설정으로 보여짐.
'Unity' 카테고리의 다른 글
| FindObjectsOfType<T>() 함수와 FindObjectsByType<T>() 함수의 차이점 (0) | 2023.12.08 |
|---|---|
| rigidbody2d 에서 Sleeping Mode 에 관하여. (0) | 2023.12.08 |
| interpolate 옵션에 관하여. 물리력에 의해 개체를 움직일 때 고려할 것 (0) | 2023.12.08 |
| 터치를 인식해서 bool 값을 변경해서 경우를 나누고자 할 때 사용할만한 방법 (0) | 2023.12.07 |
| Frame Timing Stats 의 설정 위치. (0) | 2023.12.07 |
Comments, Trackbacks
