国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

UE5 Niagara | 官方小案例練習(xí)1.4 控制粒子的朝向

2021-07-03 13:55 作者:那個人真狗  | 我要投稿

實(shí)現(xiàn)Sprite朝向

創(chuàng)建粒子系統(tǒng)

  • 創(chuàng)建粒子系統(tǒng) eif_1_4

  • **發(fā)射器更新(Emitter Update)**模塊 生成速率(SpawnRate)

  • 調(diào)整一個數(shù)值—-表示每秒生成 30個粒子

創(chuàng)建SineWave變量

  • 發(fā)射器屬性(Emitter Attributes)增加一個 float類型的變量

  • 命名SineWabe

  • 選擇這個變量 ?拖到粒子發(fā)射器更新(Emitter Update)模塊

理解:

  1. 創(chuàng)建這個數(shù)值是想控制每一個粒子的旋轉(zhuǎn)角度,

  2. 發(fā)射器更新(Emitter Update)是在發(fā)射器層面計(jì)算的,而不是按粒子計(jì)算的,所以每一個引用它的粒子都會得到相同的值,在這種情況下,它們可以同時旋轉(zhuǎn)

  3. 這個變量拖到發(fā)射器更新階段,就是每一幀都可以修改這個數(shù)值

  • 設(shè)置SineWave數(shù)值類型是 浮點(diǎn)數(shù)范圍(Clamp Float)

  • 限制計(jì)算 ?范圍(0-1)

  • Flaot 設(shè)置 ?Sine輸入

  • 設(shè)置 ?標(biāo)準(zhǔn)化角度(Normalized Angle)的值類型為浮點(diǎn)數(shù)相乘(Multiply Float)

  • A設(shè)置綁定粒子的生命周期Age

  • 設(shè)置B ? 0. 25 ? ? ? 乘粒子的生命周期

初始化粒子

  • 設(shè)置粒子的存活時間(Lifetime) ?顏色 ? ? 粒子的大小

  • 需要注意的是隨機(jī)獨(dú)立通道(Random Individual Channels)

擴(kuò)展
隨機(jī)獨(dú)立通道(Random Individual Channels)

創(chuàng)建球體發(fā)射器

  • 粒子生成(Particles Spawn) 部分的添加 球體位置(Sphere Location)模塊

  • 效果

  • 設(shè)置發(fā)射器的半徑(SphereRadius)

  • 點(diǎn)擊上面的參數(shù)小按鈕,顯示出所有的

  • 臨時階段(Stage Transients) 增加一個 變量 設(shè)置成向量類型

  • 命名—FacingCenter

注意

  • 粒子屬性(Particle Attributes)

    寫在粒子階段的屬性,可以在粒子階段讀取。

  • 階段臨時(Stage Transients)

    臨時變量可以寫到任何模塊,也可以從任何模塊讀取。臨時變量不會在幀與幀之間或階段之間持久化,例如發(fā)射器到粒子,或生成到更新。

  • 把這個變量拖到粒子更新(Particles Update)

  • 設(shè)置這個變量的類型 向量減法(Subtract Vector)—表示倆個向量減

  • A 點(diǎn)設(shè)置粒子的現(xiàn)在位置,——-注意選擇下面這個,上面那個是初始位置。

  • B 點(diǎn)設(shè)置 模擬位置(Simulation Position)

擴(kuò)展模擬位置(Simulation Position)

  • 根據(jù)發(fā)射器上的 局部空間(Local Space) 標(biāo)志,返回 Engine.Owner.Position 或本地(0,0,0)????


  • 粒子屬性中增加一個 ——變量 ——向量(Vector)類型????


  • 命名

  • 拖到粒子更新(Particles Update)

  • 設(shè)置 這個變量類型為旋轉(zhuǎn)向量(RotateVector)

  • 把控制旋轉(zhuǎn)的VectorToRotate ?變量設(shè)置為FacingCenter變量(一開始創(chuàng)建的)

  • 變成這樣

  • 設(shè)置 Yaw 軸 ? Pitch ?軸 ?Roll旋轉(zhuǎn) ? ?的值 ? ? 60.

  • 時間增量(Delta Time) ?的值 ?設(shè)置成粒子的 年齡(Age)

再次SpiteFacing變量拖入粒子更新模塊

  • 設(shè)置SpriteFacing 的類型 向量插值(Lerp Vector)

    表示倆個位置的數(shù)值插值計(jì)算

  • A點(diǎn) ? 設(shè)置 ?FacingCenter ? B點(diǎn)設(shè)置 SpriteFacing ? Alpha 設(shè)置 ?Sinewave

  • Particles.SpriteFacing 是控制粒子面對那個方向的變量 ?,這一步操作的是,控制粒子不斷的旋轉(zhuǎn)向量和球體發(fā)射器中心之間的向量進(jìn)行混合,

控制粒子的旋轉(zhuǎn)軸

  • 粒子更新階段(Particle Update) ? ?增加 ? 漩渦力(VortexVelocity)

  • 效果

  • 設(shè)置 漩渦力(VortexVelocity)

  • 設(shè)置 速度量(Velocity Amount) ?的隨機(jī)值

  • 設(shè)置 ? 最小值 ? ?最大值

  • 設(shè)置 漩渦軸(Vortex Axis) 的值類型為 向量插值(Lerp Vector)。

  • 設(shè)置 漩渦軸(Vortex Axis) 的 A 向量(A Vector) 的值為 隨機(jī)向量(Random Vector)。

  • B點(diǎn)也設(shè)置 ? ? ?隨機(jī)向量(Random Vector)

注意:使用的是點(diǎn)向量 ? ? 不是上面的 RabdomRange Vector

  • 設(shè)置 ?B點(diǎn)的Alpha設(shè)置成粒子的(Normalized Age) ?標(biāo)準(zhǔn)化年齡

  • 效果

設(shè)置粒子的大小優(yōu)化

  • 在粒子粒子更新(Particles Update) ?增加一個 縮放精靈大小(Scale Sprite Size)

  • 編輯縮放大小數(shù)值 ?為 float類型

  • 這個是轉(zhuǎn)換成單變量——在設(shè)置成功曲線

  • 根據(jù)個人設(shè)置數(shù)值

  • 效果

    從小變大

設(shè)置粒子的朝向模式

  • 選擇渲染器(Sprite Randerer) 然后設(shè)置面向模式(Facing Mode) 為自定義面向向量(Custom Facing Vector)

  • 效果

注意:

這樣設(shè)置后,精靈廣告牌(Sprite Billboard)會面向 Particles.SpriteFacing 向量屬性,如果沒有這個屬性,則會倒退為 FaceCamera 模式.

FaceCamera 模式: 精靈廣告牌(Sprite Billboard)原點(diǎn)會一直"看著"攝像頭原點(diǎn),嘗試把它的向上軸(up axis)和攝像頭保持一致。

  • 在設(shè)置一些渲染組件下的 排列模式 ?排序模式(Sorting Mode)視距(View Distance)

  • 這會給渲染設(shè)置優(yōu)先條件:根據(jù)到攝像頭原點(diǎn)的距離排序

綁定

  • Particles.SpriteFacing 并不是唯一一個有特殊的意義、 由模擬自動處理的渲染器綁定(Renderer Binding)。點(diǎn)擊一個渲染器,本例中是堆棧底部的 精靈渲染器(Sprite Renderer),然后向下滾動到 Bindings(綁定)

  • 你會看到一個粒子屬性的列表,這些屬性對引用它們的渲染器有特殊意義。如果需要的話,每個屬性都可以用其他屬性覆蓋。

完成

總結(jié)

  1. 開始創(chuàng)建SineWave變量是控制每個一個粒子的旋轉(zhuǎn)角度的 ,設(shè)置成Sine輸入類型

    • Sine 曲線是(-1 到1 )的范圍,所以要限制最大值和最小值(0-1)范圍

    • 公式y(tǒng) = sine(x) ? ?這里的X ? ?是由粒子的生命周期Age乘一個數(shù)得到了。

    • 使用材質(zhì)節(jié)點(diǎn)模擬了一下效果

2. 變量 FacingCenter 是得到每一個粒子的向量,使用粒子的位置(Position)減去模擬位置(Simulation Position)


    • 模擬位置就是粒子局部空間 (0,0,0)的位置

  1. 設(shè)置 ?FacingCenter ? B點(diǎn)設(shè)置 SpriteFacing ? Alpha 設(shè)置 ?Sinewave

    Particles.SpriteFacing 是控制粒子面對那個方向的變量 ? , 這一步操作的是,控制粒子不斷的旋轉(zhuǎn)向量和球體發(fā)射器中心之間的向量進(jìn)行混合,

  2. 使用SineWave 進(jìn)行混合,就是曲線混合方法

資料

  • https://www.cyanhall.com/cn/tutorial/4.niagara-sprite-facing/


UE5 Niagara | 官方小案例練習(xí)1.4 控制粒子的朝向的評論 (共 條)

分享到微博請遵守國家法律
吉木乃县| 科技| 邯郸市| 双辽市| 古交市| 金溪县| 渝北区| 浠水县| 高邑县| 江北区| 贵定县| 邹城市| 武安市| 临夏县| 济源市| 旬阳县| 大冶市| 韶山市| 怀远县| 舟山市| 蓬莱市| 衡南县| 灵台县| 柳林县| 翁牛特旗| 嘉义县| 嘉善县| 青河县| 右玉县| 上杭县| 泰来县| 镇原县| 江陵县| 义乌市| 集贤县| 措勤县| 邹平县| 禄劝| 绵阳市| 利辛县| 常宁市|