SPIRV-Cross

提供: MonoBook
ナビゲーションに移動 検索に移動

SPIRV-Crossとは、オープンソースのもとで開発されているVulkan SDKに含まれる公式ツールのひとつで、Vulkanで使われるSPIR-VGLSL(OpenGL)やHLSL(DirectX)、MSL(Metal)、C++などの高級言語に戻す逆コンパイラである。

シェーダー内で使用されている変数などをJSON形式で列挙するリフレクション機能もある。 Vulkan SDKにはリフレクション専用の「SPIRV-Reflect」というツールも含まれているが、ぶっちゃけSPIRV-Crossのリフレクションの方が扱いやすいと思う。

概要

SPIR-VとSPIRV-Crossを使えば様々なシェーディング言語間で相互変換が可能になる。

ぶっちゃけシェーディング言語HLSLCg言語)が圧倒的な勢力を誇る。DirectXはもとよりUnityが採用しているため、この勢いが衰えない限りは主流であり続けるであろう。GLSLはどんなに頑張ってもWebGLのちょっとしたデモくらいにしか使われない。

ならばすべての環境でHLSLを使えばいい。SPIR-VとSPIRV-Crossがあれば何でもできる。

関連項目

外部リンク