Upgrade to Pro — share decks privately, control downloads, hide ads and more …

VFX Graphの気になるアップデートを軽率に紹介したい/wanna-introduce-vfx-graph-updates

VFX Graphの気になるアップデートを軽率に紹介したい/wanna-introduce-vfx-graph-updates

Gotanda.unity #20にてLT登壇した資料

にー兄さん

September 22, 2021
Tweet

More Decks by にー兄さん

Other Decks in Technology

Transcript

  1. VFX Graphの
    気になるアップデートを
    軽率に紹介したい
    Gotanda.unity #20
    にー兄さん(@ninisan_drumath)

    View full-size slide

  2. 自己紹介
    にー兄さん(@ninisan_drumath)
    筑波大学 情報科学類
    HoloLab inc.アルバイト
    Microsoft Learn Student Ambassadors
    好き:Azure Kinect, VFX Graph, HoloLens, Immersal, ...

    View full-size slide

  3. agenda
    はじめに
    Sample Skinned Mesh
    Sample Graphics Buffer
    SDF Baker Tool
    おわりに

    View full-size slide

  4. はじめに

    View full-size slide

  5. 概要
    - VFX Graphの新機能を3つ紹介
    - Unity 2021.1aか2021.2b~
    - HDRPでのみ検証
    - 独断と偏見と感謝と愛で選びました
    - VFX Graphはいいぞ
    内容が刺さるかもしれない人
    - VFX Graphを触ったことがある人
    - VFX Graphで何ができるのか知りたい人
    - 最新のUnity情報に興味がある人
    - アート方面でUnityを触ってる人

    View full-size slide

  6. おさらい:VFX Graph とは
    Visual Effect Graphのこと
    Shurikenに代わる新しい
    パーティクルシステム
    1. ノードベースで構築
    2. GPUパーティクル
    3. 動作推奨はURP・HDRP
    表現力の高いパーティクルを
    簡単に、ハイパフォーマンスで作ることができる

    View full-size slide

  7. VFX Graph の最新情報を知ろう
    HDRPやShaderGraphとともに
    ロードマップが公開されている
    https://portal.productboard.com/unity/1-unity-platform-render
    ing-visual-effects/tabs/9-visual-effect-graph
    2020.3からの情報が載っている
    すでにリリース済みのアプデを見るだけで
    結構楽しい
    試すときは自己責任で

    View full-size slide

  8. Sample Skinned Mesh

    View full-size slide

  9. Sample Skinned Mesh ノード
    名前の通りSkinnedMeshをSampleしてくれる
    リギングされたメッシュの表面の点を動的に取得
    SkinnedMeshのプロパティ入力にも対応

    View full-size slide

  10. https://youtu.be/tzUXcRjdi0g

    View full-size slide

  11. Sample Graphics Buffer

    View full-size slide

  12. ついに配列の受け渡しが(実質)可能に!
    従来(~2020.3LTS, 2021.1a)
    プログラム
    AttributeMap
    (Texture2D)
    最新のVFX Graph(2021.2b~)
    GraphicsBuffer
    配列からGraphicsBufferを生
    成。Compute Shaderでも扱い
    やすく
    配列のデータをテクスチャのピ
    クセル値にベイク......。
    VFX Graph
    プログラム VFX Graph

    View full-size slide

  13. ついに配列の受け渡しが(実質)可能に!
    従来(~2020.3LTS, 2021.1a)
    プログラム
    AttributeMap
    (Texture2D)
    最新のVFX Graph(2021.2b~)
    GraphicsBuffer
    配列からGraphicsBufferを生
    成。Compute Shaderでも扱い
    やすく
    配列のデータをテクスチャのピ
    クセル値にベイク......。
    VFX Graph
    プログラム VFX Graph
    直観的&便利に進化

    View full-size slide

  14. 使い方はシンプル
    プログラム
    - GraphicsBufferを作成
    - VisualEffectGraphのプロパティに渡す
    - SetDataメソッドで配列を渡す
    VFX Graph
    - プロパティからGraphicsBufferを取得
    - SampleGraphicsBufferノード
    - 配列のindexを指定してデータ取得
    colorBuffer = new GraphicsBuffer(
    GraphicsBuffer.Target.Structured,
    bufferLength,
    Marshal.SizeOf(new Color())
    );
    _effect.SetGraphicsBuffer(
    _propertyColorBuffer,
    colorBuffer
    );
    colorBuffer.SetData(colorArray);

    View full-size slide

  15. Azure Kinect VFX (GraphicsBuffer ver.)
    GitHub:https://github.com/drumath2237/Graphics-Buffer-VFX-Sample

    View full-size slide

  16. SDF Bake Tool

    View full-size slide

  17. SDFとは
    Signed Distance Field
    点から形状への距離と方向
    3Dテクスチャとして扱われる
    以前はHoudiniで作成
    VFXToolboxというアセットがあるhttps://github.com/Unity-Technologies/VFXToolbox
    メッシュ

    View full-size slide

  18. 過去にSDFを使用したVFXで登壇したことも
    この時はMesh→Houdini→Texture3D→VFX Graphの手順

    View full-size slide

  19. SDFの作成
    Window > Visual Effects > Utilities > SDF Bake Tool

    View full-size slide

  20. SDFの読み込み
    Sample Signed Distance Fieldノード
    サンプルする座標から距離と方向が出力される
    PointCacheやSample Meshノードとの相性が良い
    Texture3Dはインラインもしくはプロパティでも可

    View full-size slide

  21. demo
    GitHub:https://github.com/drumath2237/SDF-Baker-VFX-Sandbox

    View full-size slide

  22. おわりに

    View full-size slide

  23. まとめと感想
    2021~のVFXはSampleXXX系ノードがアツい!
    以前のバージョンでも ”頑張れば” できる機能
    →頑張らなくてもできるように
    アーティスト向けツールとして正当な進化
    VFX Graphはいいぞ

    View full-size slide

  24. 参考リンク
    VFX Graph Roadmap:
    https://portal.productboard.com/unity/1-unity-platform-rendering-visual-effects/ta
    bs/9-visual-effect-graph
    GraphicsBufferサンプル:
    https://github.com/drumath2237/Graphics-Buffer-VFX-Sample
    SDF Baker Toolサンプル:
    https://github.com/drumath2237/SDF-Baker-VFX-Sandbox
    VFX Graph 12.0 ドキュメント
    :https://docs.unity3d.com/Packages/[email protected]/manual/i
    ndex.html

    View full-size slide