-
- shader_planeinf_use();
- shader_planeinf_uMdl(identity_matrix);
- shader_planeinf_uPv(full);
- shader_planeinf_uCamera(camera[3]);
- shader_planeinf_uPlane( (v4f){0.0f,1.0f,0.0f,0.0f} );
-
- mdl_draw_submesh( &world.dome_lower );
+
+ shader_scene_terrain_use();
+ shader_scene_terrain_uTexGarbage(0);
+ shader_scene_terrain_uTexGradients(1);
+
+ world_link_lighting_ub( world, _shader_scene_terrain.id );
+ world_bind_position_texture( world, _shader_scene_terrain.id,
+ _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 );
+
+ shader_scene_terrain_uPv( cam->mtx.pv );
+ shader_scene_terrain_uPvmPrev( cam->mtx_prev.pv );
+
+ shader_scene_terrain_uMdl( identity_matrix );
+ shader_scene_terrain_uCamera( cam->transform[3] );
+ shader_scene_terrain_uBoard0( TEMP_BOARD_0 );
+ shader_scene_terrain_uBoard1( TEMP_BOARD_1 );
+
+ world_render_both_stages( world, k_shader_terrain_blend, bindpoint_terrain );