From 14b3d5c13faab36bd37ae27aa8c1501ba7146f89 Mon Sep 17 00:00:00 2001 From: hgn Date: Fri, 4 Aug 2023 16:19:17 +0100 Subject: [PATCH] cubemaps --- blender_export.py | 65 ++++- build.c | 1 + entity.h | 10 +- maps_src/mp_spawn/main.mdl | Bin 12386080 -> 12501592 bytes model.h | 12 +- shaders/scene_cubemapped.fs | 32 +++ shaders/scene_cubemapped.h | 516 ++++++++++++++++++++++++++++++++++++ skaterift.c | 6 + world.h | 3 +- world_gen.c | 41 +++ world_load.c | 2 +- world_render.c | 118 ++++++++- world_render.h | 4 + 13 files changed, 787 insertions(+), 23 deletions(-) create mode 100644 shaders/scene_cubemapped.fs create mode 100644 shaders/scene_cubemapped.h diff --git a/blender_export.py b/blender_export.py index f9b8f69..349dbe0 100644 --- a/blender_export.py +++ b/blender_export.py @@ -54,6 +54,8 @@ def get_entity_enum_id( alias ): #} #} + if alias == 'ent_cubemap': return 21 + return 0 #} @@ -484,11 +486,23 @@ class ent_relay(Structure):#{ sr_functions = { 0: 'trigger' } #} +class ent_cubemap(Structure):#{ + _fields_ = [("co",c_float*3), + ("resolution",c_uint32), #placeholder + ("live",c_uint32), #placeholder + ("texture_id",c_uint32), #engine + ("framebuffer_id",c_uint32),#engine + ("renderbuffer_id",c_uint32),#engine + ("placeholder",c_uint32*2)] +#} + def obj_ent_type( obj ): #{ if obj.type == 'ARMATURE': return 'mdl_armature' elif obj.type == 'LIGHT': return 'ent_light' elif obj.type == 'CAMERA': return 'ent_camera' + elif obj.type == 'LIGHT_PROBE' and obj.data.type == 'CUBEMAP': + return 'ent_cubemap' else: return obj.SR_data.ent_type #} @@ -753,8 +767,7 @@ def sr_compile_texture( img ): return texture_index #} -def sr_compile_material( mat ): -#{ +def sr_compile_material( mat ):#{ if mat == None: return 0 if mat.name in sr_compile.material_cache: @@ -783,6 +796,7 @@ def sr_compile_material( mat ): m.flags = flags m.surface_prop = int(mat.SR_data.surface_prop) + inf = material_info( mat ) if mat.SR_data.shader == 'standard': m.shader = 0 if mat.SR_data.shader == 'standard_cutout': m.shader = 1 @@ -829,14 +843,19 @@ def sr_compile_material( mat ): if mat.SR_data.shader == 'fxglow':#{ m.shader = 7 #} - - inf = material_info( mat ) - if mat.SR_data.shader == 'standard' or \ - mat.SR_data.shader == 'standard_cutout' or \ - mat.SR_data.shader == 'terrain_blend' or \ - mat.SR_data.shader == 'vertex_blend' or \ - mat.SR_data.shader == 'fxglow': #{ + if mat.SR_data.shader == 'cubemap':#{ + m.shader = 8 + m.tex_none0 = sr_entity_id( mat.SR_data.cubemap ) + + m.colour[0] = pow( mat.SR_data.tint[0], 1.0/2.2 ) + m.colour[1] = pow( mat.SR_data.tint[1], 1.0/2.2 ) + m.colour[2] = pow( mat.SR_data.tint[2], 1.0/2.2 ) + m.colour[3] = pow( mat.SR_data.tint[3], 1.0/2.2 ) + #} + + if mat.SR_data.shader in ['standard', 'standard_cutout', 'terrain_blend', \ + 'vertex_blend', 'fxglow', 'cubemap' ]: #{ if 'tex_diffuse' in inf: m.tex_diffuse = sr_compile_texture(inf['tex_diffuse']) #} @@ -1865,6 +1884,16 @@ def sr_compile( collection ): relay.targets[3][1] = obj_data.target3_event sr_ent_push( relay ) #} + elif ent_type == 'ent_cubemap':#{ + cubemap = ent_cubemap() + co = obj.matrix_world @ Vector((0,0,0)) + cubemap.co[0] = co[0] + cubemap.co[1] = co[2] + cubemap.co[2] = -co[1] + cubemap.resolution = 0 + cubemap.live = 60 + sr_ent_push( cubemap ) + #} #} #} @@ -2410,6 +2439,11 @@ class SR_MATERIAL_PANEL(bpy.types.Panel): box.prop( active_mat.SR_data, "shore_colour" ) box.prop( active_mat.SR_data, "ocean_colour" ) #} + elif active_mat.SR_data.shader == "cubemap":#{ + box = _.layout.box() + box.prop( active_mat.SR_data, "cubemap" ) + box.prop( active_mat.SR_data, "tint" ) + #} #} #} @@ -3309,6 +3343,7 @@ class SR_MATERIAL_PROPERTIES(bpy.types.PropertyGroup): ('invisible','Invisible',''), ('boundary','Boundary',''), ('fxglow','FX Glow',''), + ('cubemap','Cubemap','') ]) surface_prop: bpy.props.EnumProperty( @@ -3374,6 +3409,18 @@ class SR_MATERIAL_PROPERTIES(bpy.types.PropertyGroup): default=Vector((0.0,0.006,0.03)),\ description="Water colour in the deep bits"\ ) + tint: bpy.props.FloatVectorProperty( \ + name="Tint",\ + subtype='COLOR',\ + min=0.0,max=1.0,\ + size=4,\ + default=Vector((1.0,1.0,1.0,1.0)),\ + description="Reflection tint"\ + ) + + cubemap: bpy.props.PointerProperty( \ + type=bpy.types.Object, name="cubemap", \ + poll=lambda self,obj: sr_filter_ent_type(obj,['ent_cubemap'])) #} # ---------------------------------------------------------------------------- # diff --git a/build.c b/build.c index f504e10..97b269e 100644 --- a/build.c +++ b/build.c @@ -196,6 +196,7 @@ void build_shaders(void) _S( "scene_route", "scene.vs", "scene_route.fs" ); _S( "scene_depth", "scene.vs", "scene_depth.fs" ); _S( "scene_position", "scene.vs", "scene_position.fs" ); + _S( "scene_cubemapped", "scene.vs", "scene_cubemapped.fs" ); _S( "scene_water", "scene.vs", "scene_water.fs" ); _S( "scene_water_fast", "scene.vs", "scene_water_fast.fs" ); _S( "scene_scoretext", "scene_sfd.vs", "scene_standard.fs" ); diff --git a/entity.h b/entity.h index ae9d63b..472ab36 100644 --- a/entity.h +++ b/entity.h @@ -29,6 +29,7 @@ typedef struct ent_ccmd ent_ccmd; typedef struct ent_challenge ent_challenge; typedef struct ent_unlock ent_unlock; typedef struct ent_relay ent_relay; +typedef struct ent_cubemap ent_cubemap; enum entity_alias{ k_ent_none = 0, @@ -51,7 +52,8 @@ enum entity_alias{ k_ent_ccmd = 17, k_ent_challenge = 18, k_ent_unlock = 19, - k_ent_relay = 20 + k_ent_relay = 20, + k_ent_cubemap = 21 }; static u32 mdl_entity_id_type( u32 entity_id ){ @@ -421,6 +423,12 @@ struct ent_relay { u32 targets[4][2]; }; +struct ent_cubemap { + v3f co; + u32 resolution, live, texture_id, + framebuffer_id, renderbuffer_id, placeholder[2]; +}; + typedef struct ent_call ent_call; struct ent_call{ u32 id, function; diff --git a/maps_src/mp_spawn/main.mdl b/maps_src/mp_spawn/main.mdl index 7f8f1d3a8f210d47b1e66a60f1fd48fd489f3121..df67868debe60089c287cb5e33aac8f375c65248 100644 GIT binary patch delta 226031 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 delta 126731 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 1u ){\n" +" int index_0 = int( ((packed_index >> 2u) & 0x3ffu) * 3u );\n" +" int index_1 = int( ((packed_index >> 12u) & 0x3ffu) * 3u );\n" +" int index_2 = int( ((packed_index >> 22u) & 0x3ffu) * 3u );\n" +"\n" +" l += scene_calculate_light( index_0, halfview, co, normal );\n" +"\n" +" if( light_count >= 2u ){\n" +" l += scene_calculate_light( index_1, halfview, co, normal );\n" +"\n" +" if( light_count >= 3u ){\n" +" l += scene_calculate_light( index_2, halfview, co, normal );\n" +" }\n" +" }\n" +" }\n" +"\n" +" return l;\n" +"}\n" +"\n" +"vec3 world_compute_lighting( vec3 diffuse, vec3 normal, vec3 co,\n" +" float light_mask )\n" +"{\n" +" if( g_light_preview == 1 )\n" +" diffuse = vec3(0.75);\n" +"\n" +" // Lighting\n" +" vec3 halfview = uCamera - co;\n" +" float fdist = length(halfview);\n" +" halfview /= fdist;\n" +"\n" +" float world_shadow = newlight_compute_sun_shadow( g_sun_dir.xyz \n" +" * (1.0/(max(g_sun_dir.y,0.0)+0.2)) );\n" +"\n" +" vec3 total_light = clearskies_lighting( \n" +" normal, min( light_mask, world_shadow ), halfview );\n" +"\n" +" vec3 cube_coord = (co - g_cube_min.xyz) * g_cube_inv_range.xyz;\n" +" cube_coord = floor( cube_coord );\n" +"\n" +" if( g_debug_indices == 1 )\n" +" {\n" +" return rand33(cube_coord);\n" +" }\n" +"\n" +" if( g_debug_complexity == 1 )\n" +" {\n" +" ivec3 coord = ivec3( cube_coord );\n" +" uvec4 index_sample = texelFetch( uLightsIndex, coord, 0 );\n" +"\n" +" uint light_count = (index_sample.x & 0x3u) + (index_sample.y & 0x3u);\n" +" return vec3( float(light_count)*(1.0/6.0), 0.0, 0.5 );\n" +" }\n" +"\n" +" // FIXME: this coord should absolutely must be clamped!\n" +" \n" +" ivec3 coord = ivec3( cube_coord );\n" +" uvec4 index_sample = texelFetch( uLightsIndex, coord, 0 );\n" +"\n" +" total_light += \n" +" scene_calculate_packed_light_patch( index_sample.x,\n" +" halfview, co, normal ) \n" +" * light_mask;\n" +" total_light += \n" +" scene_calculate_packed_light_patch( index_sample.y,\n" +" halfview, co, normal )\n" +" * light_mask;\n" +"\n" +" // Take a section of the sky function to give us a matching fog colour\n" +"\n" +" vec3 fog_colour = clearskies_ambient( -halfview );\n" +" float sun_theta = dot( -halfview, g_sun_dir.xyz );\n" +" float sun_size = max( 0.0, sun_theta * 0.5 + 0.5 );\n" +" float sun_shape = sun_size * max(g_sun_dir.y,0.0) * 0.5;\n" +" \n" +" vec3 sun_colour = mix( vec3(1.0), g_sunset_colour.rgb, g_sunset_phase*0.5 );\n" +" sun_colour *= sun_shape;\n" +"\n" +" fog_colour += sun_colour;\n" +" return scene_apply_fog( diffuse * total_light, fog_colour, fdist );\n" +"}\n" +"\n" +"#line 9 0 \n" +"\n" +"float sdLine( vec3 p, vec3 a, vec3 b )\n" +"{\n" +" vec3 pa = p - a;\n" +" vec3 ba = b - a;\n" +"\n" +" float h = clamp( dot(pa,ba)/dot(ba,ba), 0.0, 1.0 );\n" +" return length( pa - ba*h );\n" +"}\n" +"\n" +"float compute_board_shadow()\n" +"{\n" +" // player shadow\n" +" float dist_to_player = max( 0.0, sdLine( aWorldCo, g_board_0.xyz,\n" +" g_board_1.xyz )-0.1 );\n" +" float player_shadow = max( 1.0-dist_to_player*2.7, 0.0 );\n" +" player_shadow *= player_shadow*player_shadow*player_shadow;\n" +"\n" +" return 1.0 - player_shadow*0.8;\n" +"}\n" +"\n" +"vec3 scene_compute_lighting( vec3 diffuse, vec3 normal, vec3 co )\n" +"{\n" +" return world_compute_lighting( diffuse, normal, co, compute_board_shadow() );\n" +"}\n" +"\n" +"#line 9 0 \n" +"#line 1 2 \n" +"const float k_motion_lerp_amount = 0.01;\n" +"\n" +"#line 2 0 \n" +"\n" +"layout (location = 1) out vec2 oMotionVec;\n" +"\n" +"in vec3 aMotionVec0;\n" +"in vec3 aMotionVec1;\n" +"\n" +"void compute_motion_vectors()\n" +"{\n" +" // Write motion vectors\n" +" vec2 vmotion0 = aMotionVec0.xy / aMotionVec0.z;\n" +" vec2 vmotion1 = aMotionVec1.xy / aMotionVec1.z;\n" +"\n" +" oMotionVec = (vmotion1-vmotion0) * (1.0/k_motion_lerp_amount);\n" +"}\n" +"\n" +"#line 10 0 \n" +"\n" +"void main()\n" +"{\n" +" compute_motion_vectors();\n" +"\n" +" vec3 vfrag = vec3(0.5,0.5,0.5);\n" +" vec4 vsamplemain = texture( uTexMain, aUv );\n" +" vec3 qnorm = aNorm.xyz;\n" +" vfrag = vsamplemain.rgb;\n" +"\n" +" if( g_light_preview == 1 ){\n" +" vfrag = vec3(0.5);\n" +" }\n" +"\n" +" vfrag = scene_compute_lighting( vfrag, qnorm, aWorldCo );\n" +" oColour = vec4( vfrag, 1.0 );\n" +"\n" +" vec3 halfdir = normalize( aWorldCo - uCamera );\n" +" vec3 reflectdir = reflect( halfdir, qnorm );\n" +" oColour = mix( oColour, \n" +" vec4(texture(uTexCubemap,reflectdir).rgb * uColour.rgb, 1.0),\n" +" uColour.a );\n" +"}\n" +""}, +}; + +static GLuint _uniform_scene_cubemapped_uMdl; +static GLuint _uniform_scene_cubemapped_uPv; +static GLuint _uniform_scene_cubemapped_uPvmPrev; +static GLuint _uniform_scene_cubemapped_uTexGarbage; +static GLuint _uniform_scene_cubemapped_uTexMain; +static GLuint _uniform_scene_cubemapped_uTexCubemap; +static GLuint _uniform_scene_cubemapped_uCamera; +static GLuint _uniform_scene_cubemapped_uPlane; +static GLuint _uniform_scene_cubemapped_uColour; +static GLuint _uniform_scene_cubemapped_g_world_depth; +static GLuint _uniform_scene_cubemapped_uLightsArray; +static GLuint _uniform_scene_cubemapped_uLightsIndex; +static void shader_scene_cubemapped_uMdl(m4x3f m){ + glUniformMatrix4x3fv(_uniform_scene_cubemapped_uMdl,1,GL_FALSE,(float*)m); +} +static void shader_scene_cubemapped_uPv(m4x4f m){ + glUniformMatrix4fv(_uniform_scene_cubemapped_uPv,1,GL_FALSE,(float*)m); +} +static void shader_scene_cubemapped_uPvmPrev(m4x4f m){ + glUniformMatrix4fv(_uniform_scene_cubemapped_uPvmPrev,1,GL_FALSE,(float*)m); +} +static void shader_scene_cubemapped_uTexGarbage(int i){ + glUniform1i(_uniform_scene_cubemapped_uTexGarbage,i); +} +static void shader_scene_cubemapped_uTexMain(int i){ + glUniform1i(_uniform_scene_cubemapped_uTexMain,i); +} +static void shader_scene_cubemapped_uTexCubemap(int i){ + glUniform1i(_uniform_scene_cubemapped_uTexCubemap,i); +} +static void shader_scene_cubemapped_uCamera(v3f v){ + glUniform3fv(_uniform_scene_cubemapped_uCamera,1,v); +} +static void shader_scene_cubemapped_uPlane(v4f v){ + glUniform4fv(_uniform_scene_cubemapped_uPlane,1,v); +} +static void shader_scene_cubemapped_uColour(v4f v){ + glUniform4fv(_uniform_scene_cubemapped_uColour,1,v); +} +static void shader_scene_cubemapped_g_world_depth(int i){ + glUniform1i(_uniform_scene_cubemapped_g_world_depth,i); +} +static void shader_scene_cubemapped_register(void){ + vg_shader_register( &_shader_scene_cubemapped ); +} +static void shader_scene_cubemapped_use(void){ glUseProgram(_shader_scene_cubemapped.id); } +static void shader_scene_cubemapped_link(void){ + _uniform_scene_cubemapped_uMdl = glGetUniformLocation( _shader_scene_cubemapped.id, "uMdl" ); + _uniform_scene_cubemapped_uPv = glGetUniformLocation( _shader_scene_cubemapped.id, "uPv" ); + _uniform_scene_cubemapped_uPvmPrev = glGetUniformLocation( _shader_scene_cubemapped.id, "uPvmPrev" ); + _uniform_scene_cubemapped_uTexGarbage = glGetUniformLocation( _shader_scene_cubemapped.id, "uTexGarbage" ); + _uniform_scene_cubemapped_uTexMain = glGetUniformLocation( _shader_scene_cubemapped.id, "uTexMain" ); + _uniform_scene_cubemapped_uTexCubemap = glGetUniformLocation( _shader_scene_cubemapped.id, "uTexCubemap" ); + _uniform_scene_cubemapped_uCamera = glGetUniformLocation( _shader_scene_cubemapped.id, "uCamera" ); + _uniform_scene_cubemapped_uPlane = glGetUniformLocation( _shader_scene_cubemapped.id, "uPlane" ); + _uniform_scene_cubemapped_uColour = glGetUniformLocation( _shader_scene_cubemapped.id, "uColour" ); + _uniform_scene_cubemapped_g_world_depth = glGetUniformLocation( _shader_scene_cubemapped.id, "g_world_depth" ); + _uniform_scene_cubemapped_uLightsArray = glGetUniformLocation( _shader_scene_cubemapped.id, "uLightsArray" ); + _uniform_scene_cubemapped_uLightsIndex = glGetUniformLocation( _shader_scene_cubemapped.id, "uLightsIndex" ); +} +#endif /* SHADER_scene_cubemapped_H */ diff --git a/skaterift.c b/skaterift.c index 5804a3d..40be41e 100644 --- a/skaterift.c +++ b/skaterift.c @@ -507,6 +507,12 @@ VG_STATIC void render_main_game(void){ /* --------------------------------------------------------------------- */ + /* cubemaps TODO: Need a cubemap mark dirty thing for pordals */ + world_instance *view_world = localplayer.viewable_world; + if( view_world != NULL ){ + render_world_cubemaps( view_world ); + } + /* variable res target */ render_fb_bind( gpipeline.fb_main, 1 ); glClearColor( 0.0f, 0.0f, 0.0f, 1.0f ); diff --git a/world.h b/world.h index 4da3791..d3bc388 100644 --- a/world.h +++ b/world.h @@ -167,7 +167,8 @@ struct world_instance { ent_ccmd, ent_challenge, ent_unlock, - ent_relay; + ent_relay, + ent_cubemap; ent_gate *rendering_gate; diff --git a/world_gen.c b/world_gen.c index b7aaf50..2650539 100644 --- a/world_gen.c +++ b/world_gen.c @@ -604,6 +604,47 @@ VG_STATIC void async_world_postprocess( void *payload, u32 _size ){ glBufferSubData( GL_UNIFORM_BUFFER, 0, sizeof(struct ub_world_lighting), &world->ub_lighting ); + /* + * Allocate cubemaps + */ + for( u32 i=0; ient_cubemap); i++ ){ + ent_cubemap *cm = mdl_arritm(&world->ent_cubemap,i); + + glGenTextures( 1, &cm->texture_id ); + glBindTexture( GL_TEXTURE_CUBE_MAP, cm->texture_id ); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE); + + for( u32 j=0; j<6; j ++ ) { + glTexImage2D( GL_TEXTURE_CUBE_MAP_POSITIVE_X + j, 0, GL_RGB, + WORLD_CUBEMAP_RES, WORLD_CUBEMAP_RES, + 0, GL_RGB, GL_UNSIGNED_BYTE, NULL ); + } + + glGenFramebuffers( 1, &cm->framebuffer_id ); + glBindFramebuffer( GL_FRAMEBUFFER, cm->framebuffer_id ); + glGenRenderbuffers(1, &cm->renderbuffer_id ); + glBindRenderbuffer( GL_RENDERBUFFER, cm->renderbuffer_id ); + glRenderbufferStorage( GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, + WORLD_CUBEMAP_RES, WORLD_CUBEMAP_RES ); + + glFramebufferTexture2D( GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, cm->texture_id, 0 ); + glFramebufferRenderbuffer( GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, + GL_RENDERBUFFER, cm->renderbuffer_id ); + + glFramebufferTexture2D( GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, + GL_TEXTURE_CUBE_MAP_POSITIVE_X, cm->texture_id, 0 ); + + if( glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE ){ + vg_error( "Cubemap framebuffer incomplete.\n" ); + } + } + + glBindFramebuffer( GL_FRAMEBUFFER, 0 ); world->status = k_world_status_loaded; } diff --git a/world_load.c b/world_load.c index 25d5b04..983feee 100644 --- a/world_load.c +++ b/world_load.c @@ -63,6 +63,7 @@ VG_STATIC void world_instance_load_mdl( u32 instance_id, const char *path ){ mdl_load_array( meta, &world->ent_challenge, "ent_challenge", heap ); mdl_load_array( meta, &world->ent_unlock, "ent_unlock", heap ); mdl_load_array( meta, &world->ent_relay, "ent_relay", heap ); + mdl_load_array( meta, &world->ent_cubemap, "ent_cubemap", heap ); mdl_array_ptr infos; mdl_load_array( meta, &infos, "ent_worldinfo", vg_mem.scratch ); @@ -98,7 +99,6 @@ VG_STATIC void world_instance_load_mdl( u32 instance_id, const char *path ){ vg_async_stall(); } - struct world_load_complete_data{ savedata_file save; u32 instance_start, instance_count; diff --git a/world_render.c b/world_render.c index ba093b9..525d6da 100644 --- a/world_render.c +++ b/world_render.c @@ -75,6 +75,7 @@ VG_STATIC void world_render_init(void) shader_scene_standard_register(); shader_scene_standard_alphatest_register(); + shader_scene_cubemapped_register(); shader_scene_fxglow_register(); shader_scene_vertex_blend_register(); shader_scene_terrain_register(); @@ -244,6 +245,25 @@ VG_STATIC void bindpoint_diffuse_texture1( world_instance *world, glBindTexture( GL_TEXTURE_2D, world->textures[ mat->info.tex_diffuse ] ); } +VG_STATIC void bindpoint_diffuse1_and_cubemap10( world_instance *world, + struct world_surface *mat ){ + glActiveTexture( GL_TEXTURE1 ); + glBindTexture( GL_TEXTURE_2D, world->textures[ mat->info.tex_diffuse ] ); + + u32 cubemap_id = mat->info.tex_none0, + cubemap_index = 0; + + if( mdl_entity_id_type( cubemap_id ) == k_ent_cubemap ){ + cubemap_index = mdl_entity_id_id( cubemap_id ); + } + + ent_cubemap *cm = mdl_arritm( &world->ent_cubemap, cubemap_index ); + glActiveTexture( GL_TEXTURE10 ); + glBindTexture( GL_TEXTURE_CUBE_MAP, cm->texture_id ); + + shader_scene_cubemapped_uColour( mat->info.colour ); +} + VG_STATIC void render_world_vb( world_instance *world, camera *cam ) { shader_scene_vertex_blend_use(); @@ -274,8 +294,7 @@ VG_STATIC void render_world_vb( world_instance *world, camera *cam ) world_render_both_stages( world, &pass ); } -VG_STATIC void render_world_standard( world_instance *world, camera *cam ) -{ +VG_STATIC void render_world_standard( world_instance *world, camera *cam ){ shader_scene_standard_use(); shader_scene_standard_uTexGarbage(0); shader_scene_standard_uTexMain(1); @@ -303,8 +322,39 @@ VG_STATIC void render_world_standard( world_instance *world, camera *cam ) world_render_both_stages( world, &pass ); } -VG_STATIC void render_world_alphatest( world_instance *world, camera *cam ) -{ +VG_STATIC void render_world_cubemapped( world_instance *world, camera *cam ){ + if( !mdl_arrcount( &world->ent_cubemap ) ) + return; + + shader_scene_cubemapped_use(); + shader_scene_cubemapped_uTexGarbage(0); + shader_scene_cubemapped_uTexMain(1); + shader_scene_cubemapped_uTexCubemap(10); + shader_scene_cubemapped_uPv( cam->mtx.pv ); + + world_link_lighting_ub( world, _shader_scene_cubemapped.id ); + world_bind_position_texture( world, _shader_scene_cubemapped.id, + _uniform_scene_cubemapped_g_world_depth, 2 ); + world_bind_light_array( world, _shader_scene_cubemapped.id, + _uniform_scene_cubemapped_uLightsArray, 3 ); + world_bind_light_index( world, _shader_scene_cubemapped.id, + _uniform_scene_cubemapped_uLightsIndex, 4 ); + + bind_terrain_noise(); + shader_scene_cubemapped_uCamera( cam->transform[3] ); + + struct world_pass pass = { + .shader = k_shader_cubemap, + .cam = cam, + .fn_bind_textures = bindpoint_diffuse1_and_cubemap10, + .fn_set_mdl = shader_scene_cubemapped_uMdl, + .fn_set_uPvmPrev = shader_scene_cubemapped_uPvmPrev, + }; + + world_render_both_stages( world, &pass ); +} + +VG_STATIC void render_world_alphatest( world_instance *world, camera *cam ){ shader_scene_standard_alphatest_use(); shader_scene_standard_alphatest_uTexGarbage(0); shader_scene_standard_alphatest_uTexMain(1); @@ -604,6 +654,12 @@ VG_STATIC void render_world( world_instance *world, camera *cam, render_world_routes( world, cam, layer_depth ); render_world_standard( world, cam ); + + if( layer_depth != -1 ){ + /* TODO: RENDER ONLY BASETEXTURE */ + render_world_cubemapped( world, cam ); + } + render_world_vb( world, cam ); render_world_alphatest( world, cam ); render_world_fxglow( world, cam ); @@ -634,6 +690,60 @@ VG_STATIC void render_world( world_instance *world, camera *cam, } } +VG_STATIC void render_world_cubemaps( world_instance *world ){ + glViewport( 0, 0, WORLD_CUBEMAP_RES, WORLD_CUBEMAP_RES ); + camera cam; + for( u32 i=0; ient_cubemap ); i++ ){ + ent_cubemap *cm = mdl_arritm( &world->ent_cubemap, i ); + + glBindFramebuffer( GL_FRAMEBUFFER, cm->framebuffer_id ); + + for( u32 j=0; j<6; j++ ){ + glFramebufferTexture2D( GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, + GL_TEXTURE_CUBE_MAP_POSITIVE_X + j, cm->texture_id, 0 ); + glClear( GL_DEPTH_BUFFER_BIT ); + + v3f forward[6] = { + { -1.0f, 0.0f, 0.0f }, + { 1.0f, 0.0f, 0.0f }, + { 0.0f, -1.0f, 0.0f }, + { 0.0f, 1.0f, 0.0f }, + { 0.0f, 0.0f, -1.0f }, + { 0.0f, 0.0f, 1.0f } + }; + v3f up[6] = { + { 0.0f, -1.0f, 0.0f }, + { 0.0f, -1.0f, 0.0f }, + { 0.0f, 0.0f, 1.0f }, + { 0.0f, 0.0f, -1.0f }, + { 0.0f, -1.0f, 0.0f }, + { 0.0f, -1.0f, 0.0f } + }; + + v3_zero( cam.angles ); + v3_copy( cm->co, cam.pos ); + + v3_copy( forward[j], cam.transform[2] ); + v3_copy( up[j], cam.transform[1] ); + v3_cross( up[j], forward[j], cam.transform[0] ); + v3_copy( cm->co, cam.transform[3] ); + m4x3_invert_affine( cam.transform, cam.transform_inverse ); + + camera_update_view( &cam ); + + cam.nearz = 0.1f; + cam.farz = 1000.0f; + cam.fov = 90.0f; + m4x4_copy( cam.mtx.p, cam.mtx_prev.p ); + m4x4_projection( cam.mtx.p, cam.fov, 1.0f, cam.nearz, cam.farz ); + camera_finalize( &cam ); + camera_finalize( &cam ); + + render_world( world, &cam, -1 ); + } + } +} + VG_STATIC void render_world_depth( world_instance *world, camera *cam ) { m4x3f identity_matrix; diff --git a/world_render.h b/world_render.h index 4e777dd..0229b9d 100644 --- a/world_render.h +++ b/world_render.h @@ -5,11 +5,14 @@ #ifndef WORLD_RENDER_H #define WORLD_RENDER_H +#define WORLD_CUBEMAP_RES 32 + #include "camera.h" #include "world.h" #include "shaders/scene_standard.h" #include "shaders/scene_standard_alphatest.h" +#include "shaders/scene_cubemapped.h" #include "shaders/scene_vertex_blend.h" #include "shaders/scene_terrain.h" #include "shaders/scene_fxglow.h" @@ -71,5 +74,6 @@ VG_STATIC void render_world_position( world_instance *world, camera *cam ); VG_STATIC void render_world_depth( world_instance *world, camera *cam ); VG_STATIC void render_world( world_instance *world, camera *cam, int layer_depth ); +VG_STATIC void render_world_cubemaps( world_instance *world ); #endif /* WORLD_RENDER_H */ -- 2.25.1