「Shaderc」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
|||
| (他の1人の利用者による、間の2版が非表示) | |||
| 12行目: | 12行目: | ||
== 内容物 == | == 内容物 == | ||
; glslc | |||
[[コマンドライン]]で動く[[GLSL]]と[[HLSL]]を[[SPIR-V]]にする[[コンパイラ]]。 | |||
glslcという名称だがHLSLもコンパイルできる。 | |||
; libshaderc | |||
glslcのライブラリ版。 | glslcのライブラリ版。 | ||
自作[[プログラム]]の中で[[シェーダー]]を動的に[[コンパイル]]したい場合に捗る。 | |||
本当は「libshaderc_glslc」という名称に変更したかったらしいが「採用事例が多すぎていまさら変えられない」らしい。 | |||
== 外部リンク == | == 外部リンク == | ||
* https://github.com/google/shaderc.git | * https://github.com/google/shaderc.git | ||
[[category: | [[category: GLSL]] | ||
[[category: HLSL]] | |||
2025年9月12日 (金) 01:22時点における最新版
shadercとは、Googleがオープンソースのもとで開発している各種シェーディング言語をSPIRVにコンパイルするためのツール、およびライブラリである。
概要[編集 | ソースを編集]
大雑把にいえば使用方法が複雑奇怪なglslangとSPIRV-Toolsの主要機能のラッパーであり、使い勝手をgccやclangに似せたもの、および自作プログラムに組み込むためのライブラリである。
とくにライブラリ版は1行で完結する簡潔明瞭さ。
compiler.CompileGlslToSpv(source, ...);
Google製ということで元々はAndroidのVulkan向けらしい。 クロスコンパイルの必要はあるもののソースコードにOS依存はほぼない。 また、ほとんどのプログラミング言語において非公式なバインディングライブラリが多数存在しているようだ。
内容物[編集 | ソースを編集]
- glslc
コマンドラインで動くGLSLとHLSLをSPIR-Vにするコンパイラ。 glslcという名称だがHLSLもコンパイルできる。
- libshaderc
glslcのライブラリ版。 自作プログラムの中でシェーダーを動的にコンパイルしたい場合に捗る。
本当は「libshaderc_glslc」という名称に変更したかったらしいが「採用事例が多すぎていまさら変えられない」らしい。