這幾個demo上星期平安夜做的,感覺效果不錯,就放在出來,分享給大家。
要在二維空間模擬出三維的效果,就需要把三維的坐標轉換成二維坐標。一個最基本依據是:東西越遠,看到大小就越小,坐標越往消失點靠攏。
透視公式:
scale = fl / (fl + z);
scale是大小的比例值,0.0到1.0之間,fl是觀察點到成像面的距離,通常這個值是固定,z就是物件的三維空間中的z軸。
在寫這些代碼之前,我喜歡用面向對象來描述我寫的這些東西,比如我需要一個場景,場景是個空間,空間內是可以容納各種物件的,物件是個對象,物件是是x,y,z三個維度的,場景可以插入任意多的物件,物件就會以它的坐標值,顯示在場景的特定位置,由場景來負責物件的顯示位置。
一些demo,請使用鼠標移動及滾輪來控制。
效果1:
提示:可修改后代碼再運行!
效果2:
提示:可修改后代碼再運行!
效果3:
提示:可修改后代碼再運行!
效果4:
提示:可修改后代碼再運行!
本文來源:博客園 作者:OD BLOG
下一篇 談談新手該如何做點擊網賺