Away3D是flash或flex上的一個功能強大且實時的3D引擎,具有快速、高效、API清楚等優點。但是三角型消失的問題讓人頭疼。away3d世界由:view 視口、scene 場景、camera 攝像機和3D物體四部分組成,也稱Away3D的四大基本構件。
基本介紹
- 中文名:away3d
- 優點:快速、高效、API清楚
- 組成:view 視口、scene 場景
- 平台:flash或flex
基本構件,一般步驟,優點,缺點,代碼形式,
基本構件
3D物體就是那些我們想要在三維世界裡顯示的內容;
場景(scene)相當於3D的世界,類似與一個展示元件的舞台(其作用相當於Flash/Flex中的Stage)。可以加入3D對象和3D容器對象,其繼承自3D容器對象;
攝像機(camera )起到把場景里的3D物體“錄”下來的作用。
視口(view)作為3D內容轉換成2D之後用於顯示的界面,繼承自Sprite,可以看作顯示物體的螢幕。
一般步驟
一、新建四大基本構件。
二、顯示view與3D物體
與flash里一樣,必須把要顯示的對象實例添加到各級顯示列表里。view添加到舞台、3D物體(本例是球sphere)添加到場景。
三、渲染視口
電腦里的“三維”其實不是真的三維。
實質是通過“透視法”將三維物體“投影”到二維螢幕。在視口沒有用其方法(view.render();)之前,所有數據都是三維數據,渲染就是將三維數據“透視“成二維以便能顯示在二維的螢幕上。
優點
快速、高效、API清楚等。
缺點
新版本與舊版本接口不兼容,造成原有的教材幾乎都沒用了,而新版本還沒穩定,學習資料目前正在青黃不接的檔口
代碼形式
最簡單的Away3d如下所示:
import away3d.containers.View3D;
import away3d.primitives.Sphere;
import flash.display.Sprite;
public class Basic01 extends Sprite {
public function Basic01() {
// 創建一個視口
var View:View3D = new View3D({x:250,y:200});
addChild(View);
// 在三維舞台中創建一個球體
var sphere:Sphere = new Sphere();
View.scene.addChild(sphere);
// 渲染視角
View.render();
}
}
}
Away3D 的套用
一、所表現的產品直觀,形象。3D技術能模擬出任何複雜的工業產品模型。現代的工業產品,大到航空母艦,小到一顆螺絲釘,均能夠在3D中完美的表現出來。近日,應客戶要求製作一款閥門,根據客戶提供的技術參數和圖片,實現了閥門的結 構形態。真實的模擬出閥門不鏽鋼材質。根據閥門的技術要求製作出不同角度,剖面、截面等多角度的畫面,並在各個不同的角度中做出動畫,模擬水流,閥門的工作原理,甚至模擬出特種閥門在工作中對抗酸鹼腐蝕 的動態畫面。
二、多角度,全方位,
實現現實生活中無法拍攝的角度,在宣傳中更能夠吸引客戶的需求。產品拍攝,可以取多角度,產生多個畫面,但是無法產生動態的畫面,更不能表現出內部結構以及產品截面和剖面,甚至產品內部的工作原理,更不用說閥門工作原理的狀態。在眾多工業品廠商網頁中的產品畫面,目前大量的放置靜態的圖片,很多情況僅限於讓產品圖片在網頁中移動,無法突出宣傳的重點,單一角度的觀察產品,不能很好的吸引客戶眼球。眾所周知,人眼總是對動態的物體產生極強的注意力。而3D技術恰恰滿足人眼這一特點。把產品做出一段完整的視頻,放在網頁中,客戶可以看到產品全方位的形象,甚至是工作原理。無疑,這對於引起客戶的注意,這是有著極大的優勢。利用3D技術實現的視頻配以音樂,解說詞,來講解產品功能,展示產品。對於銷售人員來說,無需為一個產品每天不斷反覆的闡述,只需對客戶看完視頻後的問題稍作補充即可。
三、在高技術工業產品中更能夠體現出3D技術的優點。工業產品自動化程度越來越高,利用感測器檢測,計算機自動控制使得產品複雜,控制精確。這些問題在視頻技術中,完全可以表現出自動控制的工作原理。更可以根據產品的特點,強化突出產品的優越性,來滿足推廣的需要。僅憑圖片提供的信息已經無法滿足顧客的要求,冗長的文字介紹,使得客戶硬著頭皮去閱讀。一段數分鐘的產品3D視頻,一邊觀看,一邊聽著解說詞,很好的滿足客戶對產品外觀到內在的工作原理的了解。3D視頻其載體僅是一張光碟,也可是隨身碟,視頻可以不斷複製,使用成本低,攜帶方便。播放可以是一台計算機,也可以是家用DVD,也可以用於投影儀。