HLSL/Cg では固定長の配列しか使えないので初期化に注意
HLSL や Cg などのシェーダ言語では、配列を初期化しようとしたり、引数に配列を指定しようとして失敗するパターンがあります。執筆時時点での多くのシェーダ言語は動的にサイズが変わる配列を利用できないためです。このページを読む
HLSL や Cg などのシェーダ言語では、配列を初期化しようとしたり、引数に配列を指定しようとして失敗するパターンがあります。執筆時時点での多くのシェーダ言語は動的にサイズが変わる配列を利用できないためです。このページを読む
Unity でシェーダを実装するとき "Upgrade NOTE: excluded shader from ~ because it uses unsized arrays #pragma exclude_renderers ~" のようなコードが挿入されることがあります。この問題は、固定長の配列が関数の内外、あるいは引数に定義されるために起こります。このページを読む
Unity では、 .shader ファイルの内部で参照する .cginc ファイルなど "のみ" を更新しても、そのファイルを自動で再コンパイルしないようです。バージョン 5.4.x でこの現象を確認しています。.shader ファイルも更新すると、合わせて更新されます。このページを読む
展示などで Windows10 PC を使うとき、必要な設定を一覧します。(1) WindowsUpdate を無効にする (2) アクションセンターとその他の通知をオフにする (3) 自動スリープや画面の電源オフを無効にする (4) 複数画面にタスクバーを表示しない (5) USB 接続は最低限に。このページを読む
Unity でコンピュートシェーダを使う方法について、シンプルに解説します。ここでは適当な計算を GPU 上で実行して、その結果をテクスチャに書き込みます。多次元(2次元)のスレッドを活用するメリットが理解できるかと思います。(1) の続きのコンテンツです。このページを読む