계속해서 퍼스펙티브 3D에 관한 내용이에요. 이게 파고들면 조금 어렵죠. :)
이번 시간에는 LocalOffsetZ, GlobalOffsetZ를 조절했을 때 오브젝트의 크기가 왜 바뀌는지, 어느 정도 비율로 바뀌는지 파고 들어봤어요. 결론적으로 아주 간단한 '산수' 수준으로도 100% 일치하지는 않더라도 만족스러운 근사식을 만들 수 있었어요.

[Offset Z의 원리를 설명하는 그림]

근사식은 다음과 같이 만들 수 있어요.
오브젝트가 화면에 보이는 크기 = (카메라-스크린의 거리 * 오브젝트의 원래 크기) / (카메라-스크린의 거리 - OffsetZ)
여기에서, 미지수인 카메라-스크린의 거리는 999로 추정할 수 있기 때문에 우리는 OffsetZ의 변화에 따라 오브젝트가 화면에 표시되는 크기를 계산할 수 있는 거죠.
카메라-스크린까지의 거리가 왜 999인지는 동영상을 참고하세요 :D

엄밀히 말해서, 이 식은 사실 아주 정확하지는 않아요. 왜냐면 double형의 연산은 기준을 어떡게 잡았냐에 따라 아주 작은 차이가 결과적으로 큰 차이를 만들 수 있기 때문이죠. 그래도 이 정도면 일반적인 연산을 할 때 큰 오차는 없을 거라고 봐요. 또한 세부 오차는 거리를 998.999로 가정한다거나 하는 식으로 조정이 가능해요. (해보면 알시겠지만 999와 998.999도 차이가 꽤 난답니다)
※참고로 이 플레이어는 더블클릭해야 풀스크린으로 떠요 -_-;
화면이 크니까 어지간하면 다운로드 받아서 보세요.

[자료 다운로드]
[WMV 다운로드]

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
지난 8, 9, 10회에서 다뤘던 내용들은 나중에 좀 더 자세히 설명한다고 했었죠?
첫번째로 퍼스펙티브 3D를 좀 더 자세히 알아봤어요.

아뿔싸! 얘기하다보니 시간이 너무 빨리 가네요.
OffsetZ에 따른 오브젝트 크기의 변화에 관계된 내용은 +2로 가야겠어요.^^;
다음 시간을 기대하시라~

[Live 데모]
[데모 프로젝트 다운로드]
[WMV 다운로드] 버퍼링의 압쀍! 다운로드 받으세요;;

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
공도의 실버라이트 하기 좋은 날. 제 8탄!
이번 회부터 당분간은 디자이너에게도 꼭 필요한 몇몇 기능들을 소개할 예정이에요.
그래서 네이버 익스프레션 카페(http://cafe.naver.com/expressionstudio)를 운영하고 계신 '거북사마'님을 모시고 함께 진행해 봤어요.


퍼스펙티브 3D는 풀 3D에 비해 단순한만큼 간단하게 익혀서 빠르게 적용할 수 있다는 장점이 있죠.
여튼, 개념 정리는 슬라이드와 함께!

예고한 것처럼 좀 더 세부적인 기반 지식과 코드는 +1 시간을 마련해서 따로 소개하도록 할게요. :)
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo


티스토리 툴바