Vision引擎中粒子編輯器 可視性選項介紹

2021-06-26 12:46:32 字數 1646 閱讀 3960

可視性選項部分負責粒子渲染方式和顯示範圍。

渲染順序組

renderloop hook(渲染迴圈鉤子) 

勾選項定義該層在(預設)渲染迴圈中的渲染入口點。 通常選擇預設的 particles 即可,不必改動。 僅當印渲染順序錯誤導致渲染偽影時,才需要改動勾選項。 

在絕大部分情況下,僅勾選乙個渲染鉤子是正確的選擇,但使用多個鉤子的情況也可能存在(罕見的特殊情況)。 此功能可以使用,但會導致額外的效能負擔! 因此預設禁止多選。 如需啟用,開啟渲染順序組的上下文選單,選擇」toggle multiple hook selection mode」(切換到鉤子多選模式)。

可視性組

visibility bitmask(可視性位元蒙版): 定義逐層可視性的過濾位元蒙版。 該過濾蒙版會與每個對應效果圖形的 visiblebitmask(

可視性位元蒙版)屬性合併(and 邏輯)。

always in foreground(置頂): 如設定,粒子渲染器狀態會忽略 z 快取,所以粒子會始終可見,不會被實心牆壁遮擋。 該功能可用於第一人稱視角的槍口火光粒子。 depth offset(深度補償)值可以讓粒子略微朝鏡頭偏移,以避免毗鄰幾何體的交叉。 如果深度補償設為 0.001,則粒子距離會被乘以 0.999 的因數。

simulate only when visible(僅在可見時模擬):啟用後,僅當該粒子組在鏡頭中實際可見時才執行粒子模擬。 此預設設定適用於大部分效果,但如果要創造**等任何一次性效果,您需要取消勾選該選項。 這是因為**被觸發時,鏡頭不一定正好對準該效果。 在預設啟用的設定下,**效果會暫停(因為它不可見),直到鏡頭返回對準**效果,這不是**應有的狀態。 為確保**或任何其他一次性效果不在鏡頭視野中也能完成模擬迴圈,請保證」僅在可見時模擬」選項處於未勾選狀態。

depth offset(深度補償): 該值定義了粒子朝鏡頭移動的距離,表示為粒子距離的分數(從 -0.5 到 0.5)。

initial bounding box(初始邊界框): 定義了中心周圍的初始可視性邊界框。 這一尺寸應大到足夠容納所有粒子。 但可使用」dynamically update」(動態更新)引數,在執行期間重新計算邊界框。

動態更新:每隔 x 秒重新計算可視性邊界框。 重新計算後的邊界框是非常精確的。 但因為這一計算需要涵蓋所有粒子,重計算的效能負擔是很大的,不可能為每一幀進行。 所以,粒子系統支援每隔 x 秒執行一次重新計算,x 值應謹慎選擇。 例如,尺寸迅速變化的粒子組可設 x 為 1秒,而霧粒子效果組設成 5 秒就足夠。

距離淡出組

粒子可隨距離淡出。 這一方面可以節省效能,因為遠方的粒子組可以被完全剪下,而另一方面可以為場景中的深度霧增加效果。 粒子編輯器提供三種距離淡出模式(粒子應在霧範圍內淡出,而非被霧化):

no distance fade(無距離淡出): 粒子不會淡出。

霧距離淡出: 粒子始終使用場景中定義的霧範圍來淡出。 如果霧被禁用,該選項就等同於」無距離淡出」。

custom fade(自定義淡出): 由可以自行設定的起始和結束距離定義的自定義淡出範圍。

不管使用哪種模式,如果比遠端距離更遠,則粒子組會被剪下(可能也不會再被模擬)。

注: 粒子頂點著色器以粒子的 alpha 值進行淡出。 所以淡出在大部分(非標準)混合模式下無法正常工作。 但可以在疊加和 alpha 混合粒子中正確工作。

**:project anarchy中文社群

粒子編輯器

粒子編輯器 先上圖 從根本上說,粒子編輯器沒有什麼複雜的。我們修改滑動條時,也會修改粒子物件的相應屬性。void editormainwindow changetangentialaccelerationvariance double tangentialaccelerationvariance 值...

Ogre粒子編輯器ParticleUniverse

最近需要使用粒子系統製作一些特效,由於沒有美術人員的幫助,製作難度可想而知。在苦悶中,找到了particleuniverse,這也是torchlight採用的粒子系統。particleuniverse包括particle universe editor和particle universe plugi...

Ogre粒子系統編輯器

在ogre程式中,粒子系統可以利用 實現,但也可以利用指令碼語言。不過,一般情況下,都是利用指令碼語言。在ogre中只要將記事本的字尾名定義為.particle,ogre會自動識別其為粒子指令碼。現在有人製作了乙個particleeditor 可以方便的在其介面中設定我們需要的粒子指令碼,同時將其資...