2012-02-10 2 views
1

저는 Ogre에서 그래픽 프로그래밍을 시작했습니다. 왜 분리 된 절두체 클래스와 별도의 카메라 클래스가 있는지 이해할 수 없습니다.
현실 세계에서 모든 카메라에는 자체 뷰잉 절두체가 있습니다. 뷰잉 절두체의 속성이 카메라 클래스에 있어야하지 않습니까?뷰잉 절두체가 카메라와 다른 이유는 무엇입니까?

별도로 지정하면 어떤 이점이 있습니까? 나는 그 점을 보지 못했다.

답변

0

separation of concerns이라고합니다. 기본적으로 클래스는 한 가지만하고 한 가지만 수행해야합니다.

+0

나는 동의하지만, 어떻게 든 나는 대답이 그만큼 간단하지 않다고 느낍니다. 뷰 프러스 텀은 카메라의 필수적인 부분으로 보입니다. 최소한 그것은 카메라로부터 상속 받아야합니다. 그러나 그것은 완전히 별개입니다. 기묘한. – Nav

+1

예 카메라에는 절두체가 필요하지만 "a"관계가 아니라 "is"관계입니다. 상속은 단지 "관계"에 대해서만 의미가 있습니다. –

1

카메라가 Frustum에서 상속 받고 반대가 아닌가요? Frustum은 공간에 위치한 단지 피라미드이며 스포트라이트, 그림자 계산, 가시성 등과 같은 많은 것들에 사용될 수 있습니다.

카메라는 추가 카메라 이벤트 처리, 요/피치/롤 방법, 렌더링 모드/LOD 설정, 가시성 검사 등 ...

+0

오 ... 절두체 클래스가 모든 기능에 사용될 수 있다는 것을 알지 못했습니다 ... – Nav