2009-06-18 7 views
-1

저는 카메라 클래스가 있는데,이를 물리 개체를 추적 할 수 있기를 원합니다. 그러나 내 게임 엔진 (카메라 클래스가 포함될 것입니다)에서 다른 물리 엔진을 사용할 수 있습니다 (일부는 개발하지 않은 경우조차도). 내가 사용하는 물리 엔진에 상관없이 카메라가 객체를 추적 할 수있게하려면 어떻게해야합니까? 그것이 도움이된다면, 특정 엔진 물리학 구현을 다루는 구체적인 사항을 추상화하는 데 도움이되는 래퍼 클래스를 갖게 될 것입니다.변수를 추적하는 일반적인 방법

답변

1

개체를 표준 위치 개체 (아마 Vector3)가 포함 된 것으로 감싼다. 그런 다음 객체를 추적 할 수있게 해주는 Camera.LookAt (GameObject) 메서드를 추가하기 만하면됩니다. 또한 엔진의 다른 개체와 함께 사용하면 좋으며 모든 카메라로 어떤 물체도 따라갈 수 있습니다. 이것은 이전 두 게임 응용 프로그램에서 사용한 방법입니다.

+0

그건 내가 원하는 물리 엔진에 대한 래퍼를 원했기 때문에 실제로 작동 할 것이다. ... 감사합니다! – RCIX

+0

기꺼이 도와 드리겠습니다! :) – lkg

0

이것은 완전히 그래픽 엔진이 설정되는 방법에 따라 다릅니다.

대부분의 그래픽 엔진에는 장면 그래프 형식이 있으며 장면 그래프의 노드에 카메라를 연결하는 방법이 있습니다. 이렇게하면 카메라가 부모의 변형을 상속받습니다. 즉, 다른 노드를 쉽게 따라갈 수 있습니다.

물리 시스템이 깔끔하게 통합되면 씬 주변의 객체가 이동하여 노드에 영향을 미칩니다. 그러면 자동으로 카메라로 전파됩니다.

사용중인 게임 엔진 + 피직스 통합 패키지를 지정하려는 경우 잠재적으로 더 많은 세부 사항을 제공 할 수 있습니다.

+0

장면 그래프가 무엇인지 알지 못해서 작동하지 않습니다. 나는 내 엔진을 쓰고 있는데, www.walaber.com의 젤리 물리학 라이브러리와 물리학 적 선택으로 개발 한 커스텀 물리학 라이브러리는 www.codeplex.com/farseerphysics를 사용하게 될 것이다. 기본적으로, 나는 그것을 추적 할 수 있도록 Vector2에 대한 참조를 저장하는 방법이 필요합니다. 어쩌면 내가 그 질문을 했어야 했어? – RCIX

+0

자신 만의 엔진을 작성한다면 씬 그래프를 연구 할 것입니다. 대부분의 물리 라이브러리는 장면 그래프와 잘 어울리는 변형을 수정할 수있는 방법이 있다고 가정합니다. 그렇지 않으면, 개체 자체에 대한 참조 (위치 포함)를 유지하고 주위를 따르십시오. 값 유형이므로 Vector2에 대한 참조를 (쉽게) 유지할 수는 없지만 Vector2가 포함 된 객체에 대한 참조는 유지할 수 있습니다. –

관련 문제