Unity - Physics

[TOC]

참고 : “유니티 2D 디펜스 게임은 이렇게 만든다”

참고 : http://www.iforce2d.net/embox2d/testbed.html

리지드바디(Rigid body)

Physics2DSettings

물리 컴포넌트

리지드바디 컴포넌트

파라미터의 종류 기능 \ 바디 타입 Static Kinematic Dynamic
물리 엔진 머티리얼 O O O
물리 엔진 시뮬레이티드 O O O
다이나믹 자동 질량     O
다이나믹 질량     O
다이나믹 위치 이동에 대한 항력     O
다이나믹 회전 동작에 대한 항력     O
다이나믹 중력 스케일     O
물리 엔진 모든 키네마틱 접촉 사용 O O  
키네마틱 충돌 감지   O O
물리 엔진 슬리핑 모드   O O
물리 엔진 보간   O O
키네마틱 제약   O O
키네마틱 위치 동결   O O
키네마틱 회전 동결   O O
물리 엔진 정보 O O O

리지드바디 프로퍼티

리지드바디 움직이기

콜라이더

콜라이더 검출

볼륨 트리거를 위한 함수

OnTriggerEnter, OnTriggerStay, OnTriggerExit

충돌 정보를 위한 함수

OnCollisionEnter, OnCollisionStay, OnCollisionExit

조인트 컴포넌트

조인트

이펙터

다른 곳과는 다른 물리 법칙이 적용되는 특별한 영역을 지정

Physics Material 2D

충돌 시 생기는 마찰과 반발을 조정할 수 있는 머티리얼

Physics2D의 주요 함수

리지드바디의 Simulated

리지드바디 컴포넌트가 추가, 삭제, Enable, Disable 될 때 마다 물리 엔진의 내부 메모리에 오브젝트를 생성, 삭제하므로 메모리와 프로세서 파워 비용이 발생한다.

Simulated를 켜고 끄는 것은 메모리를 변경하지 않고 단순히 물리 연산 대상에서 제외하므로 오버헤드가 발생하지 않는다.

Physics 2D Raycaster

물리와 관련된 이벤트가 트리거될 때 호출될 함수를 작성할 수 있다.

물리 설정