- f32 greyout = 0.0f;
- if( mdl_entity_id_type(world_static.focused_entity) == k_ent_challenge )
- greyout = world_static.focus_strength;
-
- if( greyout > 0.0f ){
- glDrawBuffers( 1, (GLenum[]){ GL_COLOR_ATTACHMENT0 } );
- glEnable(GL_BLEND);
- glDisable(GL_DEPTH_TEST);
- glDepthMask(GL_FALSE);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- glBlendEquation(GL_FUNC_ADD);
-
- shader_blitcolour_use();
- shader_blitcolour_uColour( (v4f){ 0.5f, 0.5f, 0.5f, greyout*0.56f } );
- render_fsquad();
-
- glDisable(GL_BLEND);
- glEnable(GL_DEPTH_TEST);
- glDepthMask(GL_TRUE);
- glDrawBuffers( 2, (GLenum[]){ GL_COLOR_ATTACHMENT0,
- GL_COLOR_ATTACHMENT1 } );
+ if( !viewing_from_gate ){
+ f32 greyout = 0.0f;
+ if( mdl_entity_id_type(world_static.focused_entity) == k_ent_challenge )
+ greyout = world_static.focus_strength;
+
+ if( greyout > 0.0f ){
+ glDrawBuffers( 1, (GLenum[]){ GL_COLOR_ATTACHMENT0 } );
+ glEnable(GL_BLEND);
+ glDisable(GL_DEPTH_TEST);
+ glDepthMask(GL_FALSE);
+ glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+ glBlendEquation(GL_FUNC_ADD);
+
+ shader_blitcolour_use();
+ shader_blitcolour_uColour( (v4f){ 0.5f, 0.5f, 0.5f, greyout*0.56f } );
+ render_fsquad();
+
+ glDisable(GL_BLEND);
+ glEnable(GL_DEPTH_TEST);
+ glDepthMask(GL_TRUE);
+ glDrawBuffers( 2, (GLenum[]){ GL_COLOR_ATTACHMENT0,
+ GL_COLOR_ATTACHMENT1 } );
+ }
+
+ render_world_fxglow( world, world, cam, NULL, 1, 1, 0 );
+ }
+
+ if( with_water ){
+ render_water_texture( world, cam );
+ render_fb_bind( gpipeline.fb_main, 1 );
+ }
+
+ if( stenciled ){
+ glStencilFunc( GL_EQUAL, 1, 0xFF );
+ glStencilMask( 0x00 );
+ glEnable( GL_CULL_FACE );
+ glEnable( GL_STENCIL_TEST );