Files
Seele/res/shaders/LegacyBasePass.slang
T

23 lines
583 B
Plaintext
Raw Normal View History

2023-11-10 19:18:09 +01:00
import Common;
2023-10-24 15:01:09 +02:00
import VertexData;
2023-11-09 22:15:51 +01:00
import MaterialParameter;
2023-11-26 09:40:48 +01:00
import Scene;
2023-10-24 15:01:09 +02:00
2023-11-13 13:48:01 +01:00
struct VertexShaderOutput
{
FragmentParameter parameter : PARAMETER;
float4 clipPos: SV_Position;
}
2023-10-24 15:01:09 +02:00
[shader("vertex")]
2023-11-13 13:48:01 +01:00
VertexShaderOutput vertexMain(
2023-10-24 15:01:09 +02:00
uint vertexId: SV_VertexID,
uint instanceId: SV_InstanceID,
2023-11-13 13:48:01 +01:00
){
2023-11-08 23:27:21 +01:00
InstanceData inst = pScene.instances[instanceId];
2023-11-09 22:15:51 +01:00
VertexAttributes attr = pVertexData.getAttributes(vertexId, inst.transformMatrix);
2023-11-13 13:48:01 +01:00
VertexShaderOutput output;
output.parameter = attr.getParameter(inst.transformMatrix);
output.clipPos = output.parameter.position_CS;
return output;
2023-10-24 15:01:09 +02:00
}