Build
- Repository
- Prerequisites
- ATL
- .Net Framework 4.5
Options
Common Options
Common Options | |
---|---|
-help | Display available options |
-nologo | Suppress copyright message |
-Qunused-arguments | Don't emit warning for unused driver arguments |
Compilation Options
Compilation Options | |
---|---|
-all-resources-bound | Enables agressive flattening |
-auto-binding-space <value> | Set auto binding space - enables auto resource binding in libraries |
-Cc | Output color coded assembly listings |
-default-linkage <value> | Set default linkage for non-shader functions when compiling or linking to a library target (internal, external) |
-denorm <value> | select denormal value options (any, preserve, ftz). any is the default. |
-D <value> | Define macro |
-enable-16bit-types | Enable 16bit types and disable min precision types. Available in HLSL 2018 and shader model 6.2 |
-encoding <value> | Set default encoding for text outputs (utf8 |
-export-shaders-only | Only export shaders when compiling a library |
-exports <value> | Specify exports when compiling a library: export1[[,export1_clone,...]=internal_name][;...] |
-E <value> | Entry point name |
-Fc <file> | Output assembly code listing file |
-fdiagnostics-show-option | Print option name with mappable diagnostics |
-Fd <file> | Write debug information to the given file, or automatically named file in directory when ending in '' |
-Fe <file> | Output warnings and errors to the given file |
-Fh <file> | Output header file containing object code |
-flegacy-macro-expansion | Expand the operands before performing token-pasting operation (fxc behavior) |
-flegacy-resource-reservation | Reserve unused explicit register assignments for compatibility with shader model 5.0 and below |
-fno-diagnostics-show-option | Do not print option name with mappable diagnostics |
-force-rootsig-ver <profile> | force root signature version (rootsig_1_1 if omitted) |
-Fo <file> | Output object file |
-Fre <file> | Output reflection to the given file |
-Frs <file> | Output root signature to the given file |
-Fsh <file> | Output shader hash to the given file |
-Gec | Enable backward compatibility mode |
-Ges | Enable strict mode |
-Gfa | Avoid flow control constructs |
-Gfp | Prefer flow control constructs |
-Gis | Force IEEE strictness |
-HV <value> | HLSL version (2016, 2017, 2018). Default is 2018 |
-H | Show header includes and nesting depth |
-ignore-line-directives | Ignore line directives |
-I <value> | Add directory to include search path |
-Lx | Output hexadecimal literals |
-Ni | Output instruction numbers in assembly listings |
-no-legacy-cbuf-layout | Do not use legacy cbuffer load |
-no-warnings | Suppress warnings |
-No | Output instruction byte offsets in assembly listings |
-Odump | Print the optimizer commands. |
-Od | Disable optimizations |
-pack-optimized | Optimize signature packing assuming identical signature provided for each connecting stage |
-pack-prefix-stable | (default) Pack signatures preserving prefix-stable property - appended elements will not disturb placement of prior elements |
-recompile | recompile from DXIL container with Debug Info or Debug Info bitcode file |
-res-may-alias | Assume that UAVs/SRVs may alias |
-rootsig-define <value> | Read root signature from a #define |
-T <profile> | Set target profile. |
ps_6_0, ps_6_1, ps_6_2, ps_6_3, ps_6_4, ps_6_5, | |
vs_6_0, vs_6_1, vs_6_2, vs_6_3, vs_6_4, vs_6_5, | |
gs_6_0, gs_6_1, gs_6_2, gs_6_3, gs_6_4, gs_6_5, | |
hs_6_0, hs_6_1, hs_6_2, hs_6_3, hs_6_4, hs_6_5, | |
ds_6_0, ds_6_1, ds_6_2, ds_6_3, ds_6_4, ds_6_5, | |
cs_6_0, cs_6_1, cs_6_2, cs_6_3, cs_6_4, cs_6_5, | |
lib_6_1, lib_6_2, lib_6_3, lib_6_4, lib_6_5, | |
ms_6_5, | |
as_6_5, | |
-Vd | Disable validation |
-Vi | Display details about the include process. |
-Vn <name> | Use <name> as variable name in header file |
-WX | Treat warnings as errors |
-Zi | Enable debug information |
-Zpc | Pack matrices in column-major order |
-Zpr | Pack matrices in row-major order |
-Zsb | Compute Shader Hash considering only output binary |
-Zss | Compute Shader Hash considering source information |
Optimization Options
Optimization Options | |
---|---|
-O0 | Optimization Level 0 |
-O1 | Optimization Level 1 |
-O2 | Optimization Level 2 |
-O3 | Optimization Level 3 (Default) |
Rewriter Options
Rewriter Options | |
---|---|
-extract-entry-uniforms | Move uniform parameters from entry point to global scope |
-global-extern-by-default | Set extern on non-static globals |
-keep-user-macro | Write out user defines after rewritten HLSL |
-line-directive | Add line directive |
-remove-unused-functions | Remove unused functions and types |
-remove-unused-globals | Remove unused static globals and functions |
-skip-fn-body | Translate function definitions to declarations |
-skip-static | Remove static functions and globals when used with -skip-fn-body |
-unchanged | Rewrite HLSL, without changes. |
SPIR-V CodeGen Options
SPIR-V CodeGen Options | |
---|---|
-fspv-debug=<value> | Specify whitelist of debug info category (file -> source -> line, tool) |
-fspv-extension=<value> | Specify SPIR-V extension permitted to use |
-fspv-flatten-resource-arrays | Flatten arrays of resources so each array element takes one binding number |
-fspv-reflect | Emit additional SPIR-V instructions to aid reflection |
-fspv-target-env=<value> | Specify the target environment: vulkan1.0 (default) or vulkan1.1 |
-fvk-auto-shift-bindings | Apply fvk-*-shift to resources without an explicit register assignment. |
-fvk-b-shift <shift> <space> | Specify Vulkan binding number shift for b-type register |
-fvk-bind-globals <binding> <set> | Specify Vulkan binding number and set number for the $Globals cbuffer |
-fvk-bind-register <type-number> <space> <binding> <set> | Specify Vulkan descriptor set and binding for a specific register |
-fvk-invert-y | Negate SV_Position.y before writing to stage output in VS/DS/GS to accommodate Vulkan's coordinate system |
-fvk-s-shift <shift> <space> | Specify Vulkan binding number shift for s-type register |
-fvk-t-shift <shift> <space> | Specify Vulkan binding number shift for t-type register |
-fvk-u-shift <shift> <space> | Specify Vulkan binding number shift for u-type register |
-fvk-use-dx-layout | Use DirectX memory layout for Vulkan resources |
-fvk-use-dx-position-w | Reciprocate SV_Position.w after reading from stage input in PS to accommodate the difference between Vulkan and DirectX |
-fvk-use-gl-layout | Use strict OpenGL std140/std430 memory layout for Vulkan resources |
-fvk-use-scalar-layout | Use scalar memory layout for Vulkan resources |
-Oconfig=<value> | Specify a comma-separated list of SPIRV-Tools passes to customize optimization configuration (see http://khr.io/hlsl2spirv#optimization) |
-spirv | Generate SPIR-V code |
Utility Options
Utility Options | |
---|---|
-dumpbin | Load a binary file rather than compiling |
-extractrootsignature | Extract root signature from shader bytecode (must be used with /Fo <file>) |
-getprivate <file> | Save private data from shader blob |
-P <value> | Preprocess to file (must be used alone) |
-Qembed_debug | Embed PDB in shader container (must be used with /Zi) |
-Qstrip_debug | Strip debug information from 4_0+ shader bytecode (must be used with /Fo <file>) |
-Qstrip_priv | Strip private data from shader bytecode (must be used with /Fo <file>) |
-Qstrip_reflect | Strip reflection data from shader bytecode (must be used with /Fo <file>) |
-Qstrip_rootsignature | Strip root signature data from shader bytecode (must be used with /Fo <file>) |
-setprivate <file> | Private data to add to compiled shader blob |
-setrootsignature <file> | Attach root signature to shader bytecode |
-verifyrootsignature <file> | Verify shader bytecode with root signature |
Warning Options
Warning Options | |
---|---|
-W[no-]<warning> | Enable/Disable the specified warning |
0 件のコメント:
コメントを投稿