「DirectX Shader Compiler」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
22行目: 22行目:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
| Vertex Shader        || vs_6_0, vs_6_1, vs_6_2, vs_6_3, vs_6_4, vs_6_5, vs_6_6,  
+
| [[Vertex Shader]]         || vs_6_0, vs_6_1, vs_6_2, vs_6_3, vs_6_4, vs_6_5, vs_6_6,  
 
|-
 
|-
| Geometry Shader      || gs_6_0, gs_6_1, gs_6_2, gs_6_3, gs_6_4, gs_6_5, gs_6_6,  
+
| [[Geometry Shader]]       || gs_6_0, gs_6_1, gs_6_2, gs_6_3, gs_6_4, gs_6_5, gs_6_6,  
 
|-
 
|-
| Pixel Shader          || ps_6_0, ps_6_1, ps_6_2, ps_6_3, ps_6_4, ps_6_5, ps_6_6,  
+
| [[Pixel Shader]]         || ps_6_0, ps_6_1, ps_6_2, ps_6_3, ps_6_4, ps_6_5, ps_6_6,  
 
|-
 
|-
| Hull Shader          || hs_6_0, hs_6_1, hs_6_2, hs_6_3, hs_6_4, hs_6_5, hs_6_6,  
+
| [[Hull Shader]]           || hs_6_0, hs_6_1, hs_6_2, hs_6_3, hs_6_4, hs_6_5, hs_6_6,  
 
|-
 
|-
| Domain Shader        || ds_6_0, ds_6_1, ds_6_2, ds_6_3, ds_6_4, ds_6_5, ds_6_6,
+
| [[Domain Shader]]         || ds_6_0, ds_6_1, ds_6_2, ds_6_3, ds_6_4, ds_6_5, ds_6_6,
 
|-
 
|-
| Library              || lib_6_1, lib_6_2, lib_6_3, lib_6_4, lib_6_5, lib_6_6,  
+
| [[Library]]               || lib_6_1, lib_6_2, lib_6_3, lib_6_4, lib_6_5, lib_6_6,  
 
|-
 
|-
| Compute Shader        || cs_6_0, cs_6_1, cs_6_2, cs_6_3, cs_6_4, cs_6_5, cs_6_6,  
+
| [[Compute Shader]]       || cs_6_0, cs_6_1, cs_6_2, cs_6_3, cs_6_4, cs_6_5, cs_6_6,  
 
|-
 
|-
| Amplification Shader  || as_6_5, as_6_6,  
+
| [[Amplification Shader]] || as_6_5, as_6_6,  
 
|-
 
|-
| Mesh Shader          || ms_6_5, ms_6_6,  
+
| [[Mesh Shader]]           || ms_6_5, ms_6_6,  
 
|}
 
|}
  

2020年5月18日 (月) 08:58時点における版

DirectX Shader Compiler(通称:dxc)とは、マイクロソフトが中心となりオープンソースのもとで開発が行われているLLVM/Clangの技術をベースとしたHLSLの新しいコンパイラである。

概要

dxcはDirectX 12から登場した新しいHLSL向けのコンパイラである。 WindowsだけでなくMacOSLinuxでも動くという特徴がある。

dxcを使うとHLSLソースコード)を中間コード(DXIL)にコンパイルできる。 これは従来のfxc.exeで作られる中間コード(DXBC)とは別物である。 移行期間なのかDirectX12ではdxcとfxcの両方が搭載されている。

また、途中からGoogleも開発に参加してきてVulkanで動かすための中間コード(SPIR-V)も吐けるようになった。こいつAndroidでも使えるぞ!

dxcで使用できるプロファイル

表向きはvs_6_0以降ということになっている。 しかしvs_4_0以降ならコンパイルが通る。 なお、vs_3_0より古いのは駄目だ。

Vertex Shader vs_6_0, vs_6_1, vs_6_2, vs_6_3, vs_6_4, vs_6_5, vs_6_6,
Geometry Shader gs_6_0, gs_6_1, gs_6_2, gs_6_3, gs_6_4, gs_6_5, gs_6_6,
Pixel Shader ps_6_0, ps_6_1, ps_6_2, ps_6_3, ps_6_4, ps_6_5, ps_6_6,
Hull Shader hs_6_0, hs_6_1, hs_6_2, hs_6_3, hs_6_4, hs_6_5, hs_6_6,
Domain Shader ds_6_0, ds_6_1, ds_6_2, ds_6_3, ds_6_4, ds_6_5, ds_6_6,
Library lib_6_1, lib_6_2, lib_6_3, lib_6_4, lib_6_5, lib_6_6,
Compute Shader cs_6_0, cs_6_1, cs_6_2, cs_6_3, cs_6_4, cs_6_5, cs_6_6,
Amplification Shader as_6_5, as_6_6,
Mesh Shader ms_6_5, ms_6_6,

関連項目

類似ツール