Differential D16243 Diff 58431 source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl
Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl
| #pragma BLENDER_REQUIRE(common_view_lib.glsl) | #pragma BLENDER_REQUIRE(common_view_lib.glsl) | ||||
| uniform float sphere_size; | void main() | ||||
| uniform int offset; | { | ||||
| uniform ivec3 grid_resolution; | /* Constant array moved inside function scope. | ||||
| uniform vec3 corner; | * Minimises local register allocation in MSL. */ | ||||
| uniform vec3 increment_x; | |||||
| uniform vec3 increment_y; | |||||
| uniform vec3 increment_z; | |||||
| flat out int cellOffset; | |||||
| out vec2 quadCoord; | |||||
| const vec2 pos[6] = vec2[6](vec2(-1.0, -1.0), | const vec2 pos[6] = vec2[6](vec2(-1.0, -1.0), | ||||
| vec2(1.0, -1.0), | vec2(1.0, -1.0), | ||||
| vec2(-1.0, 1.0), | vec2(-1.0, 1.0), | ||||
| vec2(1.0, -1.0), | vec2(1.0, -1.0), | ||||
| vec2(1.0, 1.0), | vec2(1.0, 1.0), | ||||
| vec2(-1.0, 1.0)); | vec2(-1.0, 1.0)); | ||||
| void main() | |||||
| { | |||||
| int cell_id = gl_VertexID / 6; | int cell_id = gl_VertexID / 6; | ||||
| int vert_id = gl_VertexID % 6; | int vert_id = gl_VertexID % 6; | ||||
| vec3 ls_cell_location; | vec3 ls_cell_location; | ||||
| /* Keep in sync with update_irradiance_probe */ | /* Keep in sync with update_irradiance_probe */ | ||||
| ls_cell_location.z = float(cell_id % grid_resolution.z); | ls_cell_location.z = float(cell_id % grid_resolution.z); | ||||
| ls_cell_location.y = float((cell_id / grid_resolution.z) % grid_resolution.y); | ls_cell_location.y = float((cell_id / grid_resolution.z) % grid_resolution.y); | ||||
| ls_cell_location.x = float(cell_id / (grid_resolution.z * grid_resolution.y)); | ls_cell_location.x = float(cell_id / (grid_resolution.z * grid_resolution.y)); | ||||
| Show All 15 Lines | |||||