VKD3D-COMPILER(1)

๐Ÿ“ฆ
version 2.0 ยท 4 versions
, in ubuntu stonking

๐Ÿ’– VKD3D-COMPILER ๐Ÿ’–

okay bestie, welcome to the vkd3d-compiler manual page โ€” it's the shader compiler for vkd3d, and yes it comes from the User Commands corner of your friendly neighbourhood man setup. grab a boba, we're doing this ๐ŸŒธ


โœจ NAME โœจ

vkd3d-compiler โ€” shader compiler for vkd3d ๐Ÿฆ‹


โœจ SYNOPSIS โœจ

vkd3d-compiler [options...] [file]

โœจ OPTIONS โœจ

  • -h, --help โ€” shows you all this info and then dips. exit stage left, periodt ๐Ÿ’…
  • --alias-double-as-float โ€” when you're compiling HLSL sources with shader model 1-3 target profiles, this treats 'double' as 'float'. yes, literally. it's giving "we don't do doubles here" ๐Ÿ˜ญ
  • -b <type> โ€” pick the target type, bestie. run --print-target-types to see the valid ones and the default ones for a given source type ๐Ÿ‘‘
  • --buffer-uav=<type> โ€” tells it which buffer type to use for buffer UAV bindings. valid values are 'buffer-texture' (that's the default) and 'storage-buffer'. choose wisely ๐ŸŽ€
  • --child-effect โ€” compiles the effect as a child effect. heads up: this one is only meaningful for fx_2_0 and fx_4_0/fx_4_1 profiles. no cap
  • -e, --entry=<name> โ€” use <name> as the entry point. the default is "main" โ€” main character energy, obviously ๐Ÿ’œ
  • -E โ€” preprocess the source code instead of compiling it. just vibes, no assembly ๐ŸŒˆ
  • --formatting=<flags> โ€” sets the formatting options for text output. <flags> is a comma separated list of formatting flags, and you can optionally prefix it with '+' or '-'. valid flags are 'colour', 'indent', 'offsets', 'header', 'raw-ids', and 'signatures'. the 'indent' and 'header' flags are enabled by default โœจ
  • --fragment-coordinate-origin=<origin> โ€” sets the origin of fragment coordinates for SPIR-V targets. valid values are 'upper-left' (the default) and 'lower-left'. and listen โ€” the only value supported by Vulkan environments is 'upper-left'. so... yeah ๐Ÿ™ˆ
  • --fx-include-empty-buffers โ€” writes empty constant buffers descriptions. this one is only meaningful for fx_4_0 and fx_4_1 profiles. empty but make it fashion ๐Ÿ’…
  • --matrix-storage-order=<order> โ€” sets the default matrix storage order. valid values are 'column' (default) and 'row' ๐Ÿ”ฅ
  • -o, --output=<file> โ€” writes the output to <file>. if <file> is '-', or if you didn't specify an output file at all, the output goes to standard output ๐Ÿซถ
  • --print-source-types โ€” displays the supported source types and exits. show and tell ๐Ÿ“‹
  • --print-target-types โ€” displays the supported target types for the specified source type and exits โœจ
  • -p, --profile=<name> โ€” sets the target shader profile for HLSL shaders. this is THE fit check ๐Ÿ‘‘
  • --semantic-compat-map โ€” maps shader model 1-3 semantic names to shader model 4+ system values when compiling HLSL sources. glow-up for your semantics, fr fr ๐Ÿฆ‹
  • --strip-debug โ€” strips the debug information from the output. nothing personal, just minimising ๐Ÿ’€
  • -V, --version โ€” displays version information and exits ๐ŸŽ€
  • -x <type> โ€” sets the type of the source. run --print-source-types to list the valid source types. the default source type is automatically detected from the input shader โ€” it just knows ๐Ÿ”ฎ
  • -- โ€” stop option processing. any argument after this is interpreted as a filename. that's the hard boundary, bestie ๐Ÿšง
also super important: if the input file is '-' or isn't specified at all, the input will be read from standard input. stdin stays winning ๐Ÿ’–

๐ŸŒŸ a lil sign-off ๐ŸŒŸ

this is vkd3d-compiler, version 2.0+ds-3, dated August 2026 โ€” and it's still VKD3D-COMPILER(1) at the end of the day. slay, compile, and hydrate ๐Ÿ’ง๐Ÿ‘‘๐Ÿ’–

๐Ÿ“ฆ where this page comes from