layout( location = 0 ) uniform float u_Time; layout( location = 1 ) uniform vec2 u_Resolution; layout( location = 2 ) uniform vec3 u_CamPos; layout( location = 3 ) uniform vec3 u_LookAt; layout( location = 4 ) uniform vec3 u_CamUp; layout( location = 5 ) uniform float u_NearPlane; layout( location = 6 ) uniform vec3 u_LightDir; layout( location = 7 ) uniform vec4 u_Render; vec3 camPos , lookAt , camUp; float nearPlane; layout( location = 0 ) out vec3 o_Color; layout( location = 1 ) out float o_Z; void setCamFromUniforms( ) { camPos = u_CamPos; lookAt = u_LookAt; camUp = u_CamUp; nearPlane = u_NearPlane; }