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登壇した資料

E123f0d70182268563d4e63e23d8c55c?s=128

にー兄さん

September 22, 2021
Tweet

Transcript

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

  2. 自己紹介 にー兄さん(@ninisan_drumath) 筑波大学 情報科学類 HoloLab inc.アルバイト Microsoft Learn Student Ambassadors

    好き:Azure Kinect, VFX Graph, HoloLens, Immersal, ...
  3. agenda はじめに Sample Skinned Mesh Sample Graphics Buffer SDF Baker

    Tool おわりに
  4. はじめに

  5. 概要 - VFX Graphの新機能を3つ紹介 - Unity 2021.1aか2021.2b~ - HDRPでのみ検証 -

    独断と偏見と感謝と愛で選びました - VFX Graphはいいぞ 内容が刺さるかもしれない人 - VFX Graphを触ったことがある人 - VFX Graphで何ができるのか知りたい人 - 最新のUnity情報に興味がある人 - アート方面でUnityを触ってる人
  6. おさらい:VFX Graph とは Visual Effect Graphのこと Shurikenに代わる新しい パーティクルシステム 1. ノードベースで構築

    2. GPUパーティクル 3. 動作推奨はURP・HDRP 表現力の高いパーティクルを 簡単に、ハイパフォーマンスで作ることができる
  7. VFX Graph の最新情報を知ろう HDRPやShaderGraphとともに ロードマップが公開されている https://portal.productboard.com/unity/1-unity-platform-render ing-visual-effects/tabs/9-visual-effect-graph 2020.3からの情報が載っている すでにリリース済みのアプデを見るだけで 結構楽しい

    試すときは自己責任で
  8. Sample Skinned Mesh

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

  10. https://youtu.be/tzUXcRjdi0g

  11. Sample Graphics Buffer

  12. ついに配列の受け渡しが(実質)可能に! 従来(~2020.3LTS, 2021.1a) プログラム AttributeMap (Texture2D) 最新のVFX Graph(2021.2b~) GraphicsBuffer 配列からGraphicsBufferを生

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

    成。Compute Shaderでも扱い やすく 配列のデータをテクスチャのピ クセル値にベイク......。 VFX Graph プログラム VFX Graph 直観的&便利に進化
  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);
  15. Azure Kinect VFX (GraphicsBuffer ver.) GitHub:https://github.com/drumath2237/Graphics-Buffer-VFX-Sample

  16. SDF Bake Tool

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

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

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

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

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

  22. おわりに

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

  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/com.unity.visualeffectgraph@12.0/manual/i ndex.html