こんにちは、Unityエンジニアのオオバです。

「まあ、そりゃそうだ」

という記事なのですが、せっかくやったことはアウトプットしておきたい派です。

👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう!

Visual Effect Graphはコンピュートシェーダーに依存

コンピュートシェーダーはOpenGL ES 3.1以降に実装されている技術でVisual Effect Graphはそれを使っています。

先日Tweetした牛の作品は処理的には簡単なので、もしかして動くかな?って思ってWebGLビルドしてみた次第です。

各ブラウザの挙動

Chrome

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_0

「シーン....」

見た目上何も起きませんでした。

Firefox

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_1

Chromeと同様。

Safari(通常版))

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_2

ダイアログが出て終了。

Safari Technology Preview

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_3

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_4

Develop > Experimental Features > WebGPUにチェック入れても駄目。

ログの確認

Chrome開発者ツールのコンソールからログを追います。
※ショートカットは⌘ + ⌥+ I

OPENGL LOG: Creating OpenGL ES 3.0 graphics device ; Context level   ; Context handle 25699288  

ERROR: Shader  

シェーダーでエラーが吐いていることが分かります。このログ自体はブラウザ問わず同じ内容でした。

まとめ

Web上の情報と相違なくMac環境においてコンピュートシェーダーはWebGLでは動きませんでした。WebGLの動向はウォッチしておこうと思います。

余談 : Safari Technology Previewの取得方法

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_5

開発 > Safari Technology Previewから入手できます。

Visual Effect GraphはWebGLでは動かない件(2020年11月執筆時)_6

macOS Catalinaの場合は、10.15.6以上が必要になります。
Downloads - Safari - Apple Developer

オススメ記事
検証環境
参考サイト