王俊潔 劉輝

摘要 粒子特效在虛擬現實校園漫游系統中的應用使得整個校園環境更加真實。本文結合某校園為實際開發,介紹了粒子特效在校園漫游系統中的應用。對粒子的碰撞,基礎設置,以及通過表達式讓粒子自旋,發射出來粒子的隨機大小進行研究。
【關鍵詞】虛擬校園 粒子特效 particalnpartical
虛擬現實(Virtual Reality,簡稱VR,也可譯為靈境技術、幻真技術)是近年來出現的高新技術,亦稱靈境技術或人工環境。本文在maya軟件下實現了三維校園的可視化過程。通過數據信息采集、數據信息處理、三維模型建模、漫游系統創建等相關過程,構建出了一個效果逼真的三維可視化校園場景。虛擬校園是為學生提供一個三維的虛擬環境,支持環境規劃、學校發展、資源管理以及遠程訪問等,成為了校園數字化管理的重要發展方向。
粒子系統作為三維動畫軟件中最為強大的特效系統之一,使用Maya的粒子及動力學可以最大程度的模擬自然界的現象。運用Maya粒子特效等效果來對虛擬現實進行修飾,達到引人入勝的視覺效果。通過對Maya粒子技術運動的研究分析,本文結合某校園為實際開發,通過實踐制作虛擬校園漫游中的粒子特效。對Maya粒子特效進行理論上與技術上的探討。
1 MAYA 粒子簡介
粒子本身是相互獨立的,它們之間相互作用很小,一般我們在研究的過程中忽略它們之間的相互作用力,而粒子本身比較微小,也不會與周圍場景的變化相互產生相互作用,因此,在粒子運動的過程中,粒子的屬性值并不岡為它周圍粒子的變化而變化,而是在時間的推動下不斷變化。
近年來,諸如雨雪、龍卷風、煙霧、火焰、爆炸等自然景物的模擬一直是計算機圖形學中最具挑戰性的課題之一,其模擬在計算機游戲、影視、廣告、視景仿真等各種領域中有著廣泛的用途。1983年,W.T.Reeves首次提出了粒子系統,其優點在于可以用簡單的體素來構造復雜的物體,從而為自然景物的造型提供了強有力的技術手段。
Maya的粒子系統有兩大特點,一方面是它可以通過MEL (Maya埋入式語言)控制粒子的運動;另一方面是與各種不同場、關鍵幀以及表達式等結合運用。
在Maya中粒子系統通過渲染方式的不同分為軟件渲染粒子和硬件渲染粒子。軟件粒子( cloud、blobby、tube)適用于制作云和液態的效果,它可以渲染出陰影、反射和折射;硬件粒子(point、spheres、multi-point等)通過硬件渲染可以表現更加有規律的效果,例如雨、沙等。
2 粒子特效的技術實現
為了增強虛擬校園漫游系統的逼真程度,我們使用了Maya粒子系統功能模擬出虛擬校園中的噴泉和櫻花特效。粒子特效可以模擬現實中的水、霧、火、氣等效果,其原理是將無數個粒子組成固定形態。為了模擬出真實的效果,用控制器和腳本來控制粒子系統的運動。大多數刺激人類視覺的特效畫面,都是由粒子特效制作出來的。所以粒子特效的存在給虛擬現實帶來了諸多便利。
2.1 partical粒子與npartical粒子
Maya中存在兩種粒子,分別是partical粒子與npartical粒子。新建的partical粒子,不受任何場的影響,而且粒子之間不存在碰撞;新建的npartical粒子擁有智能大腦,自身帶有重力,粒子之間存在相互碰撞。兩種粒子同樣可以在Maya粒子系統下進行goal運算、幾何體替代、以及精靈替代特效。
2.2 虛擬校園漫游系統中的噴泉效果制作
噴泉特效的原理:在噴泉底座的管口創建發射器,讓發射器延天空方向發射成千上萬的小水珠粒子,水珠粒子受到重力和碰撞力的影響而發生運動變化,最后形成水珠歡騰跳躍的噴泉特效。
首先,在制作好的噴泉底座中創建一個particles粒子發射器,修改屬性面板中發射器的類型(方向),然后讓粒子延y軸方向發射;給粒子一個重力場,調整發射器的擴散與發射的速率,提高發射器的初始速度,使粒子向外擴散;將粒子渲染類型改為多條紋,通過修改顏色、不透明度、多點半徑、每秒發射的粒子數,調整粒子的基本形態。
在噴泉特效中,一共創建了兩套粒子,一套是發射出的主體粒子,一套是濺起的水花粒子,并設置了兩次粒子碰撞事件,一次是與池底發生碰撞濺起水花事件,一次是水花與池壁發生碰撞死亡事件。我們通過MAYA粒子系統的碰撞編輯器解決兩個碰撞問題。當第一套粒子與池底發生碰撞(修改池底彈性與摩擦力讓粒子濺起來)產生第二套粒子。第二套粒子濺起來與池壁又產生一次碰撞,給第二套粒子一個重力,修改粒子的渲染類型、顏色與不透明度。粒子系統表達的物體越真實,粒子的數量就越多,其代
價是代碼量大。為了減輕電腦的負擔,當第二套粒子與池底發生碰撞時需要讓第二套粒子消亡,就需要創建另一個事件,把粒子碰撞編輯器的粒子數設置為O。最后調整第二套粒子的彈性、摩擦力、發射器發射的粒子數,得到想要的效果。圖1是噴泉特效展示圖。
2.3 虛擬校園漫游中櫻花飄落效果的制作
櫻花飄落特效原理:在半空創建隱形發射器,讓發射器延任意方向發射成千上萬的櫻花花瓣粒子,櫻花花瓣粒子受到重力和空氣的影響而發生運動變化隨意飄落,最后形成漫天飛花的特效。
我們運用創建partical粒子,利用粒子實例化器(替換)實現了櫻花的飄落。首先創建一個平面發射器,讓粒子通過平面發射。將發射擺放到合適的位置,修改發射器類型為方向,給粒子一個重力,調整粒子的發射速率。再創建一個櫻花花瓣面片,通過渲染編輯器的Hypershade賦給面片一個材質。在顏色屬性中,通過文件類型將準備好的櫻花的圖案附加于面片上,最終制作出櫻花花瓣的粒子圖案,然后使用粒子下的粒子實例化器(替換),將櫻花面片替換成粒子。
在此,需要解決以下幾個問題。
(1)改變粒子在空中的狀態;在動態屬性中點擊常規面板,點擊添加粒子rotatianPP(旋轉),在表達式編輯器中添加表達式(讓粒子在O到360度之間旋轉)。將旋轉選項的目標方向選擇rotationPP,使其看上去角度各異。再添加一個表達式,讓粒子在運動中自旋。
(2)櫻花面片的大小太統一,太死板。選擇粒子,通過添加屬性新建一個SuofangPP,創建表達式,(小的就是原來的0 8倍,大的就是它的1.2倍),在常規選項的比例找到sufangpp,讓粒子根據表達式而改變大小。partical粒子之間不存在碰撞,粒子之間會出現交叉的現象,由于粒子數量大,體積小,可以忽略。
櫻花粒子特效中主要是利用了粒子替換,解決粒子自旋與比例的大小,需要注意每創建一個表達式,要將表達式賦給粒子,才能達到預期效果。圖2是櫻花飄落效果展示圖。
3 小結
本文通過實踐制作虛擬校園漫游中的粒子特效,對Maya粒子特效進行理論上與技術上的探討。認識到粒子特效的制作方法多種多樣,不同的環境和需要可以采取不同的解決方式。軟件僅僅提供的是方法與技術的手段,想要做好粒子特效,還需要我們多看,多想,有好奇心。
參考文獻
[1]肖春英,譚振英.虛擬校園漫游系統建模方法及關鍵技術的研究[J].計算機光盤軟件與應用,2013.
[2]秦愛梅,梁思懿.虛擬校園建模與場景漫游技術研究[J].信息與電腦(理論版),2017 (21):19-21.
[3]鐵海彬,汪豪,淺析.Maya粒子特效在動畫短片中的運用[J].2015.
[4]蔣道琛,基于粒子系統的虛擬戰場環境模擬[D].安徽大學,2012.
[5]賀瞿,基于動力學原理的Maya粒子特效插件[D],上海交通大學,2011.
[6]吳繼承,江南,虛擬現實中粒子系統的設計與應用[D].中科院研究生院,2004.