From eff8b75f1a00169d7666c2adf27b588e278c19d2 Mon Sep 17 00:00:00 2001 From: hgn Date: Thu, 13 Jun 2024 09:41:17 +0100 Subject: [PATCH] clean up blurring code. remove dead code --- gameserver.h | 6 +-- player_remote.h | 1 - render.c | 40 ++++++++++++++++ render.h | 3 ++ shaders/blitblur.fs | 19 +------- skaterift.c | 109 ++++---------------------------------------- 6 files changed, 54 insertions(+), 124 deletions(-) diff --git a/gameserver.h b/gameserver.h index 3d0e713..a03b1a0 100644 --- a/gameserver.h +++ b/gameserver.h @@ -12,7 +12,7 @@ #define CLIENT_KNOWLEDGE_SAME_WORLD0 0x1 #define CLIENT_KNOWLEDGE_SAME_WORLD1 0x2 -#define CLIENT_KNOWLEDGE_FRIENDS 0x4 /* TODO? */ +#define CLIENT_KNOWLEDGE_FRIENDS 0x4 /* unused */ struct { HSteamNetPollGroup client_group; @@ -43,10 +43,6 @@ struct { u8 client_knowledge_mask[ (NETWORK_MAX_PLAYERS*(NETWORK_MAX_PLAYERS-1))/2 ]; u8 app_symmetric_key[ k_nSteamEncryptedAppTicketSymmetricKeyLen ]; - /* TODO: Consider removing this */ - int monitor_fd; - int monitor_clients[ 4 ]; - bool loopback_test; } static gameserver = { diff --git a/player_remote.h b/player_remote.h index 1a99bcb..3e4b67e 100644 --- a/player_remote.h +++ b/player_remote.h @@ -27,7 +27,6 @@ struct global_netplayers int world_match[ k_world_max ]; u32 location_pstr; /* TODO: valid if active_world set. */ - /* TODO: Compression with server code */ char username[ NETWORK_USERNAME_MAX ]; char items[k_netmsg_playeritem_max][ADDON_UID_MAX]; char chat[ NETWORK_MAX_CHAT ]; diff --git a/render.c b/render.c index 0c6a8f0..ec2e0ef 100644 --- a/render.c +++ b/render.c @@ -217,3 +217,43 @@ void render_fsquad2(void) glBindVertexArray( gpipeline.fsquad.vao ); glDrawArrays( GL_TRIANGLES, 66+6,6 ); } + +void postprocess_to_screen( vg_framebuffer *fb ) +{ + glBindFramebuffer( GL_FRAMEBUFFER, 0 ); + glViewport( 0,0, vg.window_x, vg.window_y ); + + glEnable(GL_BLEND); + glDisable(GL_DEPTH_TEST); + glBlendFunc(GL_ONE_MINUS_DST_ALPHA, GL_DST_ALPHA); + glBlendEquation(GL_FUNC_ADD); + + v2f inverse; + vg_framebuffer_inverse_ratio( fb, inverse ); + + if( k_blur_effect ) + { + shader_blitblur_use(); + shader_blitblur_uTexMain( 0 ); + shader_blitblur_uTexMotion( 1 ); + shader_blitblur_uBlurStrength( k_blur_strength / + (vg.time_frame_delta*60.0) ); + shader_blitblur_uInverseRatio( inverse ); + + inverse[0] -= 0.0001f; + inverse[1] -= 0.0001f; + shader_blitblur_uClampUv( inverse ); + shader_blitblur_uOverrideDir( gpipeline.blur_override ); + + vg_framebuffer_bind_texture( fb, 0, 0 ); + vg_framebuffer_bind_texture( fb, 1, 1 ); + } + else{ + shader_blit_use(); + shader_blit_uTexMain( 0 ); + shader_blit_uInverseRatio( inverse ); + vg_framebuffer_bind_texture( fb, 0, 0 ); + } + + render_fsquad(); +} diff --git a/render.h b/render.h index f5b0afd..4986316 100644 --- a/render.h +++ b/render.h @@ -35,6 +35,8 @@ struct pipeline *fb_workshop_preview, *fb_network_status; int ready; + + v2f blur_override; } static gpipeline; @@ -42,3 +44,4 @@ void render_init(void); void render_fsquad(void); void render_fsquad1(void); void render_fsquad2(void); +void postprocess_to_screen( vg_framebuffer *fb ); diff --git a/shaders/blitblur.fs b/shaders/blitblur.fs index 8de9e67..21209c5 100644 --- a/shaders/blitblur.fs +++ b/shaders/blitblur.fs @@ -3,8 +3,6 @@ uniform sampler2D uTexMain; uniform sampler2D uTexMotion; uniform float uBlurStrength; uniform vec2 uOverrideDir; -uniform float uTime; -uniform float uGlitchStrength; uniform vec2 uClampUv; in vec2 aUv; @@ -15,23 +13,10 @@ vec2 rand_hash22( vec2 p ){ return fract(vec2((p3.x + p3.y)*p3.z, (p3.x+p3.z)*p3.y)); } -const int NOISE_LOOP = 3; -vec3 digital_noise( uvec3 iuv ){ - iuv *=uvec3(8,2524,7552); - for( int i=0; i 0.0 ){ - // uvec3 p = uvec3( gl_FragCoord.xy, uint(uTime*30.0) ); - // vec2 g = digital_noise(p).xy; - // vuv = aUv + g.xy*uGlitchStrength - uGlitchStrength*0.5; - //} - vec2 vrand = rand_hash22( vuv ) * 2.0 - vec2(1.0); vec2 vrand1 = rand_hash22( vrand ) * 2.0 - vec2(1.0); diff --git a/skaterift.c b/skaterift.c index 5d4d69c..f99f876 100644 --- a/skaterift.c +++ b/skaterift.c @@ -59,8 +59,6 @@ struct skaterift_globals skaterift = .hub_world = "maps/dev_hub", }; -static int k_tools_mode = 0; - int main( int argc, char *argv[] ) { network_set_host( "skaterift.com", NULL ); @@ -82,10 +80,6 @@ void vg_launch_opt(void) network_set_host( arg, NULL ); } - if( vg_long_opt( "tools" ) ){ - k_tools_mode = 1; - } - if( vg_long_opt( "demo" ) ){ skaterift.demo_mode = 1; } @@ -113,9 +107,6 @@ vg_info(" ' ' '--' [] '----- '----- ' ' '---' " vg_loader_step( remote_players_init, NULL ); - if( k_tools_mode ) - return; - steam_init(); vg_loader_step( NULL, steam_end ); vg_loader_step( network_init, network_end ); @@ -216,11 +207,6 @@ static void skaterift_load_player_content(void) void vg_load(void) { - if( k_tools_mode ){ - vg_async_call( async_call_ready, NULL, 0 ); - return; - } - vg_audio.always_keep_compressed = 1; vg_console_reg_cmd( "load_world", skaterift_load_world_command, NULL ); @@ -296,8 +282,6 @@ void vg_pre_update(void) { skaterift_preupdate_inputs(); - if( k_tools_mode ) return; - steam_update(); skaterift_change_client_world_preupdate(); @@ -348,7 +332,6 @@ void vg_pre_update(void) void vg_fixed_update(void) { - if( k_tools_mode ) return; if( skaterift.op == k_async_op_clientloading ) return; world_routes_fixedupdate( world_current_instance() ); @@ -358,7 +341,6 @@ void vg_fixed_update(void) void vg_post_update(void) { - if( k_tools_mode ) return; if( skaterift.op == k_async_op_clientloading ) return; player__post_update(); @@ -392,64 +374,6 @@ void vg_post_update(void) * RENDERING * ---------------------------------------------------------------------------*/ -static void present_view_with_post_processing(void){ - glBindFramebuffer( GL_FRAMEBUFFER, 0 ); - glViewport( 0,0, vg.window_x, vg.window_y ); - - glEnable(GL_BLEND); - glDisable(GL_DEPTH_TEST); - glBlendFunc(GL_ONE_MINUS_DST_ALPHA, GL_DST_ALPHA); - glBlendEquation(GL_FUNC_ADD); - - v2f inverse; - vg_framebuffer_inverse_ratio( gpipeline.fb_main, inverse ); - - if( k_blur_effect ){ - shader_blitblur_use(); - shader_blitblur_uTexMain( 0 ); - shader_blitblur_uTexMotion( 1 ); - shader_blitblur_uBlurStrength( k_blur_strength / - (vg.time_frame_delta*60.0) ); - shader_blitblur_uInverseRatio( inverse ); - - inverse[0] -= 0.0001f; - inverse[1] -= 0.0001f; - shader_blitblur_uClampUv( inverse ); - - static f64 effect_time = 133.0; - effect_time += vg.time_frame_delta; - shader_blitblur_uTime( effect_time ); - - f32 glitch_strength = 0.0f; - if( skaterift.activity == k_skaterift_replay ){ - glitch_strength = 0.005f; - if( player_replay.replay_control == k_replay_control_play ) - glitch_strength = 0.005f; - else - glitch_strength += 0.005f*player_replay.track_velocity; - } - shader_blitblur_uGlitchStrength( glitch_strength ); - - v2f override; - if( (skaterift.activity == k_skaterift_menu) && menu.bg_blur ) - v2_muls( (v2f){ 0.04f, 0.001f }, 1.0f-skaterift.time_rate, override ); - else - v2_zero( override ); - shader_blitblur_uOverrideDir( override ); - - vg_framebuffer_bind_texture( gpipeline.fb_main, 0, 0 ); - vg_framebuffer_bind_texture( gpipeline.fb_main, 1, 1 ); - } - else{ - shader_blit_use(); - shader_blit_uTexMain( 0 ); - shader_blit_uInverseRatio( inverse ); - vg_framebuffer_bind_texture( gpipeline.fb_main, 0, 0 ); - } - - render_fsquad(); -} - static void render_player_transparent(void) { if( (skaterift.activity == k_skaterift_menu) && @@ -693,21 +617,20 @@ static void render_main_game(void) } /* composite */ - present_view_with_post_processing(); + + if( (skaterift.activity == k_skaterift_menu) && menu.bg_blur ) + v2_muls( (v2f){ 0.04f, 0.001f }, 1.0f-skaterift.time_rate, + gpipeline.blur_override ); + else + v2_zero( gpipeline.blur_override ); + postprocess_to_screen( gpipeline.fb_main ); + skaterift_replay_post_render(); control_overlay_render(); } void vg_render(void) { - if( k_tools_mode ){ - glBindFramebuffer( GL_FRAMEBUFFER, 0 ); - glViewport( 0,0, vg.window_x, vg.window_y ); - glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); - glClear( GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT ); - return; - } - if( skaterift.op == k_async_op_clientloading ){ vg_loader_render(); return; @@ -740,22 +663,6 @@ void vg_gui( ui_context *ctx ) gui_draw( ctx ); - if( k_tools_mode ) - { - ui_rect null; - ui_rect screen = { 0, 0, vg.window_x, vg.window_y }; - ui_rect panel = { 0, 0, 1000, 700 }; - ui_rect_center( screen, panel ); - ui_capture_mouse( ctx, 1 ); - - ui_fill( ctx, panel, ui_colour( ctx, k_ui_bg+1 ) ); - ui_outline( ctx, panel, 1, ui_colour( ctx, k_ui_bg+7 ), 0 ); - - ui_rect_pad( panel, (ui_px[2]){ 8, 8 } ); - - return; - } - if( k_light_editor ) imgui_world_light_edit( ctx, world_current_instance() ); -- 2.25.1