projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
some audio things
[carveJwlIkooP6JGAAIwe30JlM.git]
/
world_render.h
diff --git
a/world_render.h
b/world_render.h
index f66ae0487e43e8f61b608c655b3a67f472207ee9..7eccc6e45518d9351722ea994146ee566dd3f745 100644
(file)
--- a/
world_render.h
+++ b/
world_render.h
@@
-92,6
+92,15
@@
VG_STATIC void world_bind_light_array( world_instance *world,
glUniform1i( location, slot );
}
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 );
/*
VG_STATIC void render_world_depth( world_instance *world, camera *cam );
/*
@@
-168,6
+177,8
@@
VG_STATIC void render_world_vb( 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 );
_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 );
vg_tex2d_bind( &tex_terrain_noise, 0 );
@@
-198,6
+209,8
@@
VG_STATIC void render_world_standard( world_instance *world, camera *cam )
_uniform_scene_standard_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_standard.id,
_uniform_scene_standard_uLightsArray, 3 );
_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();
bind_terrain_noise();
@@
-226,6
+239,8
@@
VG_STATIC void render_world_alphatest( world_instance *world, camera *cam )
_uniform_scene_standard_alphatest_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_standard_alphatest.id,
_uniform_scene_standard_alphatest_uLightsArray, 3 );
_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();
bind_terrain_noise();
@@
-267,6
+282,8
@@
VG_STATIC void render_terrain( world_instance *world, camera *cam )
_uniform_scene_terrain_g_world_depth, 2 );
world_bind_light_array( world, _shader_scene_terrain.id,
_uniform_scene_terrain_uLightsArray, 3 );
_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 );
vg_tex2d_bind( &tex_terrain_noise, 0 );