VG_STATIC void vg_framebuffer_resize( int w, int h )
{
render_fb_resize();
- water_fb_resize();
}
VG_STATIC void present_view_with_post_processing(void)
shader_blitblur_use();
shader_blitblur_uTexMain( 0 );
shader_blitblur_uTexMotion( 1 );
- shader_blitblur_uBlurStrength( cl_blur_strength );
- glActiveTexture( GL_TEXTURE0 );
+ shader_blitblur_uBlurStrength( cl_blur_strength / (vg.frame_delta*60.0f) );
if( cl_view_id == 0 )
- glBindTexture( GL_TEXTURE_2D, gpipeline.rgb_background );
+ render_fb_bind_texture( gpipeline.fb_main, 0, 0 );
else if( cl_view_id == 1 )
- glBindTexture( GL_TEXTURE_2D, gpipeline.mv_background );
+ render_fb_bind_texture( gpipeline.fb_main, 1, 0 );
else
- glBindTexture( GL_TEXTURE_2D, gpipeline.rgb_background );
-
- glActiveTexture( GL_TEXTURE1 );
- glBindTexture( GL_TEXTURE_2D, gpipeline.mv_background );
+ render_fb_bind_texture( gpipeline.fb_main, 0, 0 );
+ render_fb_bind_texture( gpipeline.fb_main, 1, 1 );
render_fsquad();
}
VG_STATIC void render_scene(void)
{
- glBindFramebuffer( GL_FRAMEBUFFER, gpipeline.fb_background );
+ render_fb_bind( gpipeline.fb_main );
glClearColor( 0.0f, 0.0f, 0.0f, 1.0f );
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT );
render_world( &main_camera );
render_water_texture( &main_camera );
- glBindFramebuffer( GL_FRAMEBUFFER, gpipeline.fb_background );
+ render_fb_bind( gpipeline.fb_main );
render_water_surface( &main_camera );
render_world_gates( &main_camera );
}
VG_STATIC void render_player_into_world(void)
{
- glBindFramebuffer( GL_FRAMEBUFFER, gpipeline.fb_background );
+ render_fb_bind( gpipeline.fb_main );
draw_player( &main_camera );
}