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