最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

UE5.1_Niagara高級1.6_ Distance Field Traversal

2023-04-26 10:11 作者:Winter惜曦  | 我要投稿
  • 1. 6 Distance Field Traversal【遍歷距離場】

  • Modeling life forms and accurate interactions with geometry can be done but it requires care. At each step along the way we apply constraints to ensure that the insects remain on the surface, do not clip with it, rotate, move and accelerate at appropriate rates for their size.

    The mental state of each insect can be mimicked by representing new behaviour patterns.

    External forces and avoidance modules can produce engaging results.

    Resolving all of your constraints may be involved but the outcome can be quite rewarding :)

    【建模生命形狀和使用幾何進(jìn)行準(zhǔn)確交互是可以實現(xiàn)的,但這過程需要謹(jǐn)慎地進(jìn)行設(shè)計。這個過程中我們每一步施加的限制是為了確保昆蟲停留在表面,避免夾在表面上,并以適合它們大小的速度來旋轉(zhuǎn),移動和加速】

    【通過表現(xiàn)新的行為模式來模仿每只昆蟲的精神狀態(tài)】

    【外力和躲避模組可以產(chǎn)生吸引人的效果】

    【結(jié)算所有的可能涉及的限制可產(chǎn)生非常好的輸出結(jié)果】

  • The light cone transform and the spawn volume dimensions are externally controlled. A number of other important properties are consolidated here as user facing controls as well.

    【光錐轉(zhuǎn)換和生成體積尺寸是由外部控制的。許多其他重要的屬性也一樣被整合到用戶參數(shù)里】

  • Note: using static distance fields textures rather than the global distance can yield a far better results that are stable at any distance.

    【注:使用靜態(tài)距離場紋理替代全局距離可在任何距離都穩(wěn)定獲得更好的結(jié)果】

  • Crawl tangentially to the distance field generates a final position and velocity for each particle. It samples the distance field several times and finds the optimal position for each particle based on its geometry.

    【沿距離場切線爬行給每個粒子生成一個最終位置和速度。多次采樣距離場并基于粒子的幾何尺寸給每個粒子找出最佳的位置】

  • Initial spawn count. The number of actual particles in the simulation will be less after we cull the majority of insects.

    【初始化生成數(shù)量。模擬時實際粒子數(shù)量會在我們剔除大多數(shù)昆蟲后變少】

  • Each Particle will have a different top speed etc.

    【每個粒子會有不同的最高速度等】

  • Randomize the mesh scale and compensate for the models original size

    【隨機(jī)化網(wǎng)格體比例并補(bǔ)償模型原始尺寸】

  • Place particles in a box around in the level system. Move particles to nearest surface and kill them if they're too far away

    【在層級系統(tǒng)的盒子里放置粒子。移動粒子到最近表面,如果它們離得太遠(yuǎn)則清除它們】

  • Calculate the radius and each particle's movement characteristics based off of its size

    【基于粒子的大小計算每個粒子的半徑和移動屬性】

  • align the mesh to the SDF and randomize the z axis rotation.

    Derive the world space forward vector from a transformed mesh space vector. The insects are now randomly placed and oriented.

    【使網(wǎng)格體對齊有符號距離場并隨機(jī)化Z軸旋轉(zhuǎn)】

    【把網(wǎng)格體空間向前向量轉(zhuǎn)換成世界空間向前向量?,F(xiàn)在隨機(jī)放置和定向昆蟲】

  • The insect's pivot point and its center of mass are in two different locations. We define their relationship here.

    【昆蟲的樞軸點和它的重心在不同的位置。我們在這里定義它們的關(guān)系】

  • Various forces are controlled via floats located in the Swarm Force Coordinator. We define how insects should behave when they're alarmed or calm. Additional behaviour patterns can easily be added. As soon as the insects mood shifts we start to lerp to a new set of values over time.

    【通過群力協(xié)調(diào)器模組的浮點數(shù)控制不同的力。我們定義昆蟲在驚恐或鎮(zhèn)靜時應(yīng)該如何行動。額外的行為模式可被容易地添加。一旦昆蟲情緒轉(zhuǎn)換,我們開始隨時間線性插值到一個新的設(shè)置數(shù)值】

  • The distance traveled variable uses a namespace modifier so this precludes from using the previous modifier. To work around this we right the last frames calculated value to a new variable.

    【距離漫游變量使用一個命名空間修飾語而不使用先前的修飾語。為此我們將上一幀的計算值寫進(jìn)一個新的變量】

  • The insects are constantly moving. For that reason, we calculate an updated center of mass world position.

    【昆蟲在不斷地移動。因此,我們計算一個更新的重心所在的世界位置】

  • Flashlight/raytrace: We sphere cast/ray trace the distance field to find out if the insect is getting hit by the light or in the shadow. IF it's in the shadow then we mask the effect of the cone/flashlight. If not, a force is applied to the particles to push them out of the cone. We also FADE it's impact on the insects state over time which pushes the particles into an excited state and allows it to relax over time.

    【閃光燈/光線追蹤:我們球形投射/光線追蹤距離場來找出昆蟲是被光照中還是在陰影中。如果在陰影中,我們遮罩光錐/閃光燈的效果。如果不在陰影中,則給粒子施加一個力來推動昆蟲離開光錐。我們還隨時間淡出昆蟲的興奮狀態(tài),并允許昆蟲休息】

  • (Animate) Particles should move if they're avoiding the light or told to via the "time based state machine".

    【(動畫)如果昆蟲正在躲避光或被“時間狀態(tài)機(jī)”通知要移動時,昆蟲應(yīng)該進(jìn)行移動】

  • These forces always attempt to act on the insects. The solver later determines if they're applied or not.

    【這些力總是嘗試對昆蟲起作用。結(jié)算器最后決定是否應(yīng)用它們】

  • Velocity and force are masked here when they're not needed.

    【當(dāng)不需要速度和力時,遮罩它們】

  • Ignore new solve data if the insect should not animate.

    【如果昆蟲不應(yīng)該動,則忽視新的結(jié)算數(shù)據(jù)】

  • Interp over time prevents velocity from shifting too quickly

    【隨時間插值,以阻止速度切換太快】

  • Interp normal over time increases stability. Flight Orientation orients the meshes to the underlying distance field and forces particles to bank on turns. It can also reduce turn rates. Internally, the module smooths out all of it's inputs and outputs over time.

    【隨時間插值法線以增加穩(wěn)定性。飛行朝向使網(wǎng)格體定位到下層距離場,并強(qiáng)迫粒子在轉(zhuǎn)彎時傾斜。它還降低轉(zhuǎn)換率。在內(nèi)部,模組隨時間平滑所有輸入和輸出】

  • Track distance traveled over time compares this frame's position vs the previous frames.

    This is used to drive the vertex shader animation which moves the insects legs.

    【通過對比當(dāng)前幀位置和之前幀位置,來隨時間追蹤漫游距離】

    【這用于驅(qū)動移動昆蟲腿的頂點渲染動畫】

  • Collision Query變量類型:用于查詢碰撞相關(guān)的數(shù)據(jù)接口,如幾何追蹤和深度緩沖,(包含全局距離場和場景深度場)

  • Find Nearest Distance Field Surface GPU【找到最近距離場表面GPU】節(jié)點

    當(dāng)距離場分辨率較低時可連續(xù)多次查詢,多次查詢后的點不一定比第一次查詢遠(yuǎn),也可能更近。

    查詢的是全局距離場,離攝像機(jī)越遠(yuǎn),距離場分辨率越低

    (舊名字為Find Nearest Distance Field Iso Surface【找到最近距離場等位面】)

    New Position【新位置】:最近表面點的位置

    Vector to Nearest Surface【到最近表面向量】:單位向量,由采樣點指向表面點

    Distance To Surface【到表面距離】:采樣點到表面點的距離

  • Direction and Length Safe【方向和長度安全】節(jié)點:返回向量長度,并安全地標(biāo)準(zhǔn)化向量

  • Project Vector on Plane【投影向量到平面】節(jié)點:獲得向量在平面上的投影

    Vector【向量】

    Normal【法線】:平面的法線

  • Multiple Vector with Quaternion【向量與四元數(shù)相乘】節(jié)點:即使用四元數(shù)旋轉(zhuǎn)向量

  • FN First Frame Numeric【第一幀數(shù)值】節(jié)點:第一幀返回初始值,后續(xù)返回另一個值

  • Modulo【余數(shù)】節(jié)點:獲得A/B的余數(shù)

  • Move to Nearest Distance Field Surface GPU【移動到最近距離場表面GPU】模組

    Write to Instrinsic Properties【寫到固有屬性】:把最近距離場表面位置寫進(jìn)粒子位置

    Active【激活】

    Kill by Distance【距離清除】:粒子到最近距離場表面位置(實際為DistanceTraveledToSurface)超過此距離時清除粒子

    Radius【半徑】:使粒子從表面偏移(實際為沿三次采樣的平均法線的反方向偏移)

    Output.MoveToNearestDistanceFieldSurfaceGPU.DistanceTraveledToSurface:為三次查詢的移動距離之和

    Output.MoveToNearestDistanceFieldSurfaceGPU.VectorToNearestSurfaceNormal:單位向量,為外表面點時指向內(nèi)部,為內(nèi)表面點時指向外部

  • Time Based State Machine【基于時間的狀態(tài)機(jī)】模組

    注:輸出一個浮點數(shù)OnOffPercentage來指示粒子處于狀態(tài)on(1),狀態(tài)off(0),還是on到off的過渡狀態(tài)

    Lerp Time To Off【插值時間到Off】:從1減少到0所花的時間

    Lerp Time To On【插值時間到On】:從0增加到1所花的時間

    Off Duration【Off狀態(tài)持續(xù)時間】:減去Lerp Time To On 后為OnOffPercentage=0時的持續(xù)事件

    On Duration【On狀態(tài)持續(xù)時間】:減去Lerp Time To Off 后為OnOffPercentage=1時的持續(xù)事件

    Invert On Off Percentage【顛倒OnOffPercentage的值】

    Initial Start Time【初始開始時間】:從On狀態(tài)開始計時,初始的開始時間

    Output.TimeBasedStateMachine.OnOffPercentage

  • Ray Trace Distance Field GPU【光線追蹤距離場GPU】模組

    需要取消勾選Library Only,沿光線迭代采樣全局距離場來找出最近表面點

    Ray Origin【光線原點】:投射光線的起始點

    Ray Vector【光線向量】:即光線追蹤的方向

    Max Trace Length【最大追蹤距離】

    Minimum Step Size【最小步距】

    NumberOfIterations【迭代次數(shù)】:最小值為1,迭代次數(shù)越高,追蹤距離越遠(yuǎn)

    TraceWidth【追蹤寬度】:球形追蹤半徑(追蹤半徑逐漸減???新一次迭代時追蹤半徑重新開始?)

    Output.RayTraceDistanceFieldGpu.Intersects【交接】:從光源向粒子投射光線追蹤,限制追蹤距離為光源到粒子的距離,Intersects為True則粒子在陰影,為False則不在陰影

  • Avoid Cone【躲避圓錐】模組

    需要取消勾選Library Only,用于使粒子轉(zhuǎn)向躲避聚光燈或其他圓錐。包含的限制幫助避免進(jìn)入附近表面。

    Active【激活】

    Strength【強(qiáng)度】:生成力的最大值

    Write To Physics Force【寫入物理力】

    Apply Constraints【應(yīng)用限制】:為True時,生成的力將被限制指向附近表面

    (僅是Apply Constraints)Automatically Find Nearest Surface【自動找到最近表面】

    Constraint Influence【限制影響】:調(diào)節(jié)平面限制的影響

    Use Distance Based Plane Adherence【使用距離平面粘合】:只對靠近表面的粒子施加應(yīng)用表面限制

    Apply Radial Falloff【應(yīng)用半徑衰減】:給結(jié)果力應(yīng)用從圓錐頂點開始的線性衰減

    Cone APEX【圓錐頂點】

    Cone Axis【圓錐軸】

    Cone Coodinate Space【圓錐坐標(biāo)空間】:包括圓錐頂點和圓錐軸

    Falloff Angle Inner【衰減內(nèi)錐角】

    Falloff Angle Outer【衰減外錐角】

    Falloff Radius【衰減半徑】:最大影響距離

    Write Out Debug Parameter【寫出調(diào)試參數(shù)】:要設(shè)置自定義面向和對齊

  • Interpolate Over Time【隨時間插入】模組

    隨時間對目標(biāo)值進(jìn)行線性插值,使移動平均值趨向于目標(biāo)值

    Variable Type【變量類型】

    Target Value【目標(biāo)值】

    Initial Value【初始值】:為True時,移動平均值的初始值等于此初始值,為False時,移動平均值的初始值為目標(biāo)值

    Rate Of Change【改變速率】:當(dāng)前值插值到目標(biāo)值的速度

    Stackcontext.InterpolateOverTime.InterpolateOverTimeV3.MovingAverage:移動平均值


UE5.1_Niagara高級1.6_ Distance Field Traversal的評論 (共 條)

分享到微博請遵守國家法律
伊川县| 涞源县| 界首市| 日喀则市| 九龙县| 馆陶县| 共和县| 晋中市| 拜城县| 云梦县| 汾西县| 台江县| 黄浦区| 丘北县| 静安区| 洛阳市| 连南| 高安市| 永登县| 霍山县| 恭城| 舞钢市| 绥宁县| 邢台市| 钟祥市| 合作市| 阿鲁科尔沁旗| 读书| 沭阳县| 黄梅县| 柞水县| 马尔康县| 娱乐| 汪清县| 华安县| 株洲市| 甘洛县| 巴青县| 清涧县| 新源县| 新和县|