property {
	mix_amount : float;
	projection : float4x4; @camera_projection
	view	   : float4x4; @camera_view
}

PSInput :: struct {
	position : @position
	normal   : @normal
	light_view_position : @extra // TEXCOORD3?
	frag_pos : @extra // TEXCOORD4?
}

PSOutput :: struct {
	color    : float4; @target0;
	emission : float4; @target1;
}

vertex main :: (position : float3 @position, uv : float2 @uv, normal : float3 @normal) -> PSInput {
	ps_input : PSInput;
	  
	return ps_input;
}

pixel main :: (input : PSInput) -> float4 {
	ps_out : PSOutput;

	return ps_out;
}