Image type syntax
There are a huge number of combinations of image types in SPIR-V. They are represented by a const
generic type called spirv_std::image::Image, however, specifying the generic parameters of this
type is incredibly tedious, so a wrapper macro, spirv_std::Image! can be used to write the type
instead.
The specific syntax and meaning of the arguments to the Image! macro can be found in
rustdoc.
Some type aliases for common image formats can be found in the
spirv_std::image
module. For example, Image2d is a very commonly used type, corresponding to texture2D in GLSL,
and is likely what you want if you want a regular old sampled texture.
#![allow(unused)] fn main() { type Image2d = Image!(2D, type=f32, sampled); }