glUniform1i( location, slot );
}
+VG_STATIC void world_bind_light_index( world_instance *world,
+ GLuint shader, GLuint location,
+ int slot )
+{
+ glActiveTexture( GL_TEXTURE0 + slot );
+ glBindTexture( GL_TEXTURE_3D, world->tex_light_cubes );
+ glUniform1i( location, slot );
+}
+
VG_STATIC void render_world_depth( world_instance *world, camera *cam );
/*
_uniform_scene_vertex_blend_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_vertex_blend.id,
_uniform_scene_vertex_blend_uLightsArray, 3 );
+ world_bind_light_index( world, _shader_scene_vertex_blend.id,
+ _uniform_scene_vertex_blend_uLightsIndex, 4 );
vg_tex2d_bind( &tex_terrain_noise, 0 );
_uniform_scene_standard_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_standard.id,
_uniform_scene_standard_uLightsArray, 3 );
+ world_bind_light_index( world, _shader_scene_standard.id,
+ _uniform_scene_standard_uLightsIndex, 4 );
bind_terrain_noise();
_uniform_scene_standard_alphatest_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_standard_alphatest.id,
_uniform_scene_standard_alphatest_uLightsArray, 3 );
+ world_bind_light_index( world, _shader_scene_standard_alphatest.id,
+ _uniform_scene_standard_alphatest_uLightsIndex, 4 );
bind_terrain_noise();
_uniform_scene_terrain_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_terrain.id,
_uniform_scene_terrain_uLightsArray, 3 );
+ world_bind_light_index( world, _shader_scene_terrain.id,
+ _uniform_scene_terrain_uLightsIndex, 4 );
vg_tex2d_bind( &tex_terrain_noise, 0 );