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

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

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

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

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

Posted by gongdo

Submit comment.

  1. 오리발 2009.10.09 23:48  comment URL  Edit/Remove  Submit comment.

    쩐다.. 좀 짱이신듯

지난 8, 9, 10회에서 다뤘던 내용들은 나중에 좀 더 자세히 설명한다고 했었죠?
첫번째로 퍼스펙티브 3D를 좀 더 자세히 알아봤어요.

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

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

Posted by gongdo

Submit comment.

  1. Favicon of http://kongpill.tistory.com BlogIcon kongpill 2009.09.10 22:23  comment URL  Edit/Remove  Submit comment.

    왜 전체화면 안되게 해두셨나요 ㅠ

    • Favicon of https://gongdosoft.com BlogIcon gongdo 2009.09.11 10:19 신고  comment URL  Modify/Remove

      아... 플레이어가 제가 만든게 아니고 Streaming에서 기본 지원하는거라서요. 더블클릭하시면 전체화면 됩니다. -_-;;
      이거 진짜 안좋은 UX의 사례죠.
      클릭으로 Play/Pause, 더블클릭으로 전체화면... 뭥미;;;

      그리고 느릴 수도 있으니 그냥 다운로드가 속 편하답니...

  2. mi 2009.11.19 19:24  comment URL  Edit/Remove  Submit comment.

    와 ㅜㅜ감이안잡혀서 포기하고 있었거든요 ㅜ 이게 정말 도움이 될거 같아요!!
    좋은강의 ㄳㄳㄳ해요^^

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


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

예고한 것처럼 좀 더 세부적인 기반 지식과 코드는 +1 시간을 마련해서 따로 소개하도록 할게요. :)
Posted by gongdo

Submit comment.

  1. Favicon of http://uxfactory.com BlogIcon 리거니 2009.08.23 23:28  comment URL  Edit/Remove  Submit comment.

    퍼스펙티브3D의 경우에는 옆으로 뉘어놓은 UI 보다, 앞뒤면 UI에 쓰이면 UX 개선에 아주 효과적일 듯 해요.

    영상 다운로드 해봐야겠다...

    • Favicon of http://gongdosoft.com BlogIcon 공도 2009.08.24 09:48  comment URL  Modify/Remove

      네 그 외에도 의외로 X/Y축 기준으로 회전이 아닌 Z축에 대한 Offset이동으로 오브젝트의 거리를 조절하는데도 편리하더군요.
      전에는 일일이 Scale을 계산했어야 하는데 이제는 그냥 수치만 주면 되니까요. :)