摘 要:為了能將日益應(yīng)用廣泛的Papervision3D、能在Flash Player中播放的目的,采用較為新穎的3D引擎方法,做了三維到二維的轉(zhuǎn)換、Flint粒子系統(tǒng)實(shí)驗(yàn),實(shí)現(xiàn)了平滑拉近物體從遠(yuǎn)處拉近及噴泉的效果。通用開源Flash 3D渲染引擎中Papervision3D是基于ActionScript的開源項(xiàng)目,而Flash在3D領(lǐng)域的應(yīng)用相對貧乏,在Flash Player中播放,則具備體積小、與用戶交互能力強(qiáng)、效果逼真的3D Web應(yīng)用程序特點(diǎn)。
關(guān)鍵詞:Flash 3D; Papervision3D; 3D引擎方法; 開源項(xiàng)目
0 引 言
在Flash中實(shí)現(xiàn)3D的效果有很多種方法,一些傳統(tǒng)的完成Flash三維顯示的方法是通過光影效果、遮罩和使用Actionscript。光影效果比較簡單,主要是利用明暗對比來達(dá)到一種視覺欺騙,大多用在繪制靜態(tài)場景或物體上。遮罩法是指在Flash中,遮罩層的作用就是一扇鏤空的窗戶,在該層中畫出圖形后,當(dāng)它在其他層上移過時,只有遮罩層上面有圖形的區(qū)域才能看到后面層中的圖形,從而產(chǎn)生一些特殊的效果\[1\]。關(guān)于使用Actionscript,此法原理是將三維坐標(biāo)轉(zhuǎn)換為二維坐標(biāo)。首先將三維坐標(biāo)值保存在數(shù)組里,根據(jù)一定規(guī)則對這些數(shù)組進(jìn)行計算轉(zhuǎn)換為二維坐標(biāo),并對這些二維坐標(biāo)渲染,以實(shí)現(xiàn)模擬三維的效果。面對這些老牌的方法,采取較為新穎的3D引擎方法,運(yùn)用和以往不同的手法,創(chuàng)建出美妙的視覺感受。在眾多的3D引擎中,選擇了較為成熟的PV3D引擎。
通過PV3D引擎,實(shí)現(xiàn)了3D場景中兩個玩家交互,通過相機(jī)的平滑拉近實(shí)現(xiàn)了物體從遠(yuǎn)處拉近的效果,除此之外還通過Flint粒子系統(tǒng)實(shí)現(xiàn)了噴泉效果。