#include "shaders/scene_position.h"
#include "shaders/scene_font.h"
#include "shaders/model_sky.h"
+#include "shaders/model_sky_space.h"
static const float k_world_light_cube_size = 8.0f;
int slot );
static void render_world_position( world_instance *world, camera *cam );
static void render_world_depth( world_instance *world, camera *cam );
-static void render_world( world_instance *world, camera *cam,
- int layer_depth );
+static void render_world( world_instance *world, camera *cam,
+ int stenciled, int viewing_from_gate,
+ int with_water, int with_cubemaps );
static void render_world_cubemaps( world_instance *world );
static void bind_terrain_noise(void);
+static void render_world_override( world_instance *world,
+ world_instance *lighting_source,
+ m4x3f mmdl,
+ camera *cam );
+
+#define WORLD_BIND_LIGHT_BUFFERS_UB0_TEX234( WORLD, SHADER ) \
+ world_link_lighting_ub( WORLD, _shader_##SHADER.id ); \
+ world_bind_position_texture( WORLD, _shader_##SHADER.id, \
+ _uniform_##SHADER##_g_world_depth, 2 ); \
+ world_bind_light_array( WORLD, _shader_##SHADER.id, \
+ _uniform_##SHADER##_uLightsArray, 3 ); \
+ world_bind_light_index( WORLD, _shader_##SHADER.id, \
+ _uniform_##SHADER##_uLightsIndex, 4 );
#endif /* WORLD_RENDER_H */