[AS3] APE에 추가된 클래스

Programming/Physics Engine 2007. 8. 8. 18:25
APE의 code repository에 보니 다운로드로 제공하고 있는 소스 파일 이외에 3개의 클래스가 은근슬적 추가된 것을 알게 되었다. 3개의 클래스는 IForce, VectorForce, CollsionEvent 이 세개의 클래스다. Force관련 추가된 클래스는 장력에 관련된 클래스를 제공하기 위해 만들어 놓았는데 기존에는
APEngine.addMasslessForce(new Vector(0,3));
형태로 Vector 클래스를 사용하였으나 이와 구분되는 VectorForce를 통해서
APEngine.addForce(new VectorForce(false,0,3));
이러한 형태로 사용하게 되었다. 추가된 VectorForce는 APEngine 클래스의 internal static Array 변수 forces에 등록됨으로써 중력에 관련하여 복합적으로 적용이 가능하게 되었다.  

CollsionEvent 클래스는 충돌을 체크하기 위해 Event 클래스를 확장하여 만들어 놓았다. 이는 AbstractItem 클래스를 확장하고 있는 클래스에 대한 충돌을 이벤트처리하기 위해 만들어져 있다. 실제로 code repository에 있는 AbstractItem 클래스는 EventDispatcher를 상속하고 있다. CollsionEvent에는 아래와 같은 이벤트타입이 있다.
public static const COLLIDE:String = "collide";
public static const FIRST_COLLIDE:String = "firstCollide";
COLLIDE는 충돌이 발생할 때마다 매번 dispatch 하며 FIRST_COLLIDE는 처음 충돌이 발생한 시점에서 한번만 dispatch하게 된다.

이 이벤트 처리는 Flade에서 지원하던 충돌 관련 기능을 추가한 것이다. 이로서 Flade에서 지원하던 대부분의 기능은 APE에 포함된 것으로 보이며 앞으로 오브젝트에 관련된 클래스들이 추가 될 것으로 기대된다.

    

설정

트랙백

댓글