ps:第一次翻譯的,錯的請指出。
這裡我簡單的對3d投影做了解釋,首先我們看看3d完美運用的**:
[url=
------
最基礎的3d投影公式是:
scale=fl/(fl+z);
//這裡我理解scale為投影比例
fl是焦點距離(也就是眼睛到螢幕的距離)
z是物體在螢幕裡的深度;
---------------
看看下面的剖面圖:
[img]/files/beyondpic/2006-9/19/focalpointdiagram.gif[/img]
你可以知道焦距f1和(z+f1);
scale=fl/(fl+z);
這裡定義f1=150;
如果z=0,你可以得出:
scale = 150/(150+0);
再看下面:
如果z=100,你可以得出:
scale = 150/(150+100);
投影比例將為0.6。
如果 z=500(離螢幕很遠很遠...)
scale = 150/(150+500);
投影比例將大約為0.23;
從上面你可以看出當你不斷增加z時,投影比例scale將會越來越小,不斷接近0,當z剛好為0的或者剛好在螢幕上,投影比例將會為1.
[img]/files/beyondpic/2006-9/19/distancediagram.gif[/img]
但要怎樣運用投影比例?你會從上面的**發現,當距離螢幕的距離不斷變大時,有兩樣東西會減少:
1.物體的大小;
2.越來月接近中點或者消失點;
但在flash語言中僅僅和_xscale 和 _yscale 和 _x 和 _y.有關;
下面你會得知如何運用它,首先你要定義你的x,y和z的值,你可以這樣寫:
scale=fl/(fl+z);
_x=x*scale;
_y=y*scale;
_xscale = _yscale = scale*100;
你可以從中看出地平線或者消失點是在(0,0)點。總的來說,當物體離你越來越遠,它們將會接近消失點(0,0),而在flash中,就是主舞台左上角的點,如果你要使你的物體放在螢幕的中間,你可以像下面這樣寫:
xcenter=275;
ycenter=200;
scale=fl/(fl+z);
_x=x*scale+xcenter;
_y=y*scale+ycenter;
_xscale = _yscale = scale*100;
你現在要了解在中心的左邊是x軸的負方向,正方向是中心點的右邊,y軸的負方向在你視線的上方,下方是y軸的正方向.
3D 投影矩陣學習1
先看一下名詞 在矩陣數學中,也有乙個名詞叫投影矩陣,其定義為 若矩陣a既是對稱矩陣,又是冪等矩陣,則稱a為投影矩陣。這裡說的是3d世界中的投影矩陣 其作用是幫助把3d物體顯示在2維計算機平面。什麼是投影 計算機顯示器是乙個二維表面,所以如果你想顯示三維影象,你需要一種方法把3d幾何體轉換成一種可作為...
3D全息投影的應用優勢
隨著3d全息投影技術的日漸火熱,其在各個行業中的應用也變得越來越多,同時也有更多的人對著項多 技術產生了好奇。下面就由黑火石科技帶大家去了解一下3d全息。全息投影技術屬於3d技術的一種,原指利用干涉原理記錄並再現物體真實的三維影象的技術。而後隨著科幻電影與商業宣傳的引導,全息投影的概念逐漸延伸到舞台...
Flash如何實現3D應用
flash如何實現3d?我想很多人用flash這麼久了,都還不一定嘗試過,vision就是乙個3d的引擎,它能幫您實現,而且快open source囉。其實這概念來自用movieclips來達成3d的錯覺,藉由改變它的位置 尺寸,包含旋轉 扭曲等,您就可以感覺到3d的存在。不過最新的版本是以flas...