camera :: constant_buffer { projection : float4x4; view : float4x4; } vertex main :: (pos : float4 @position) -> float4 @position { return mul(camera.projection, mul(camera.view, pos)); } pixel main :: () -> float4 @target { return float4(0.5, 0.5, 0.5, 1.0); }