こんにちは、Unityエンジニアのオオバです。
Unityでコンピュートシェーダーを始めてみた
先日始めたコンピュートシェーダーにおけるトラブル備忘録です。
1.FindKernelしてもカーネルが見つからない問題
そもそもカーネル名をタイポしているというのは除外すると、ほぼ9割型シェーダーのコンパイルエラーが原因かと思います。
一応以下のような対処記事がありました。
404 Not Found - Qiita - Qiita
しかし、オオバが出会った状況は、全てシェーダーの記述ミスによるコンパイルエラーでした。
2.フロート型の書式でシェーダーのコンパイルエラー
おそらくHLSL全般にいえるのかなという内容です。整数に対しf
サフィックスをつけるとエラーです。
OKパターン
float a = 1.0f;
失敗パターン
float a = 20f;
3.コンピュートシェーダーのコンパイルエラーは無言
コンソールにシェーダーコンパイルのエラーなんて親切なことはしてくれません。目安はコンピュートシェーダーのインスペクタです。
コンピュートシェーダーコンパイル成功パターン
コンピュートシェーダーコンパイル失敗パターン
この2つの違いは、カーネルが表示されているか、していないかです。コンソールで語ることはしないようです。
※本記事は広告を含みます
👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう!
もくじ
ひとこと
- そろそろ人生2度目のキッザニアに行く予定
この記事が気に入ったらフォローしよう
オススメ記事
検証環境
- Unity2018.2.11f1
- macOS HighSierra 10.13.6