Niagara易混知識
在這里記錄幾個容易混淆的參數(shù)和節(jié)點
Execution Index(節(jié)點):本幀,本階段的執(zhí)行計數(shù)器。
Execution Count(Engine屬性):本幀,本階段將會執(zhí)行多少次
比如此發(fā)射器現(xiàn)有100個粒子,本幀生成5個粒子,那么Particle Spawn階段顯然會在此幀執(zhí)行5次,在Particle Spawn階段,Execution Index會依次取到0~4,Execution Count會是5 。Particle Update階段會更新所有粒子,故會執(zhí)行105次,那么在此階段Execution Index會依次取到0~104,Execution Count取105
Unique ID(粒子屬性):一個從0開始遞增的,在本發(fā)射器內(nèi)唯一的ID,第一個粒子此ID為0,第二個粒子此ID為1,依此類推。
ID(粒子屬性):類型為Niagara ID,由兩個int32組成的結(jié)構(gòu)體,此ID是粒子在本系統(tǒng)內(nèi)的唯一ID,需要勾選Emitter Propertise中的Require persistent id才能使用。
Total Spawn Particles(Engine屬性):此發(fā)射器生成的粒子總數(shù),這個屬性只統(tǒng)計粒子的生成,無論粒子的消亡。如果你在粒子生成段讀取這個值,應當注意,它不是連續(xù)的,如果此幀生成了5個,那么它會一次性增加5 。
Num Particles(Emitter屬性):此時此發(fā)射器有多少活著的粒子。
Position,Simulation Position與Local Space。Position屬性我們再熟悉不過了,是用來記錄粒子位置的屬性,當它與Local Space選項連用的時候可能會有些困惑。
1)當勾選Local Space時,Position屬性中記錄的是粒子相對于粒子系統(tǒng)的位置,如果這個粒子生成在粒子系統(tǒng)正中央,那么他的Position為(0,0,0) 。當不勾選Local Space時則大不相同,Position中記錄的是粒子的世界位置,Position == (0,0,0)的粒子將出現(xiàn)在世界坐標的原點。
2)Simulation Position它始終代表粒子系統(tǒng)原點所在位置。也就是說,如果Position==SimlationPosition,那么此粒子將出現(xiàn)在粒子系統(tǒng)的中心。當勾選LocalSpace時,使用相對坐標,粒子系統(tǒng)中心對應的粒子Position應該是(0,0,0),SimulationPosition也等于(0,0,0)。當不勾選LocalSpase時,使用絕對坐標,粒子系統(tǒng)中心對應的粒子Position為該粒子系統(tǒng)的世界位置,所以此時SimlationPosition也等于該粒子系統(tǒng)的世界位置。
3)LocalSpace本身并不會理睬粒子系統(tǒng)在場景中的旋轉(zhuǎn)和縮放,這個機制本身,只對平移起作用。不過一些模塊會檢測LocalSpace標志,并適配旋轉(zhuǎn)。這一設計大概是出于性能考慮。