9b4defe202
Support flattening StorageOutput & StorageInput matrices and arrays. No longer move matrix & array inputs to separate buffer. Add separate SPIRFunction::fixup_statements_in & SPIRFunction::fixup_statements_out instead of just SPIRFunction::fixup_statements. Emit SPIRFunction::fixup_statements at beginning of functions. CompilerMSL track vars_needing_early_declaration. Pass global output variables as variables to functions that access them. Sort input structs by location, same as output structs. Emit struct declarations in order output, input, uniforms. Regenerate reference shaders to new formats defined by above.
20 lines
487 B
GLSL
20 lines
487 B
GLSL
#version 450
|
|
|
|
layout(binding = 1) uniform samplerCube samplerColor;
|
|
|
|
layout(location = 0) in vec3 inPos;
|
|
layout(location = 1) in vec3 inNormal;
|
|
layout(location = 2) in mat4 inInvModelView;
|
|
layout(location = 6) in float inLodBias;
|
|
layout(location = 0) out vec4 outFragColor;
|
|
|
|
void main()
|
|
{
|
|
vec3 cI = normalize(inPos);
|
|
vec3 cR = reflect(cI, normalize(inNormal));
|
|
cR = vec3((inInvModelView * vec4(cR, 0.0)).xyz);
|
|
cR.x *= (-1.0);
|
|
outFragColor = texture(samplerColor, cR, inLodBias);
|
|
}
|
|
|