diff --git a/backend/sokol/blit_atlas.odin b/backend/sokol/blit_atlas.odin index a0eab06..b1c164b 100644 --- a/backend/sokol/blit_atlas.odin +++ b/backend/sokol/blit_atlas.odin @@ -1644,7 +1644,9 @@ blit_atlas_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&blit_atlas_fs_source_glsl410 desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].glsl_name = "v_position" + desc.attrs[1].base_type = .FLOAT desc.attrs[1].glsl_name = "v_texture" desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 @@ -1673,7 +1675,9 @@ blit_atlas_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&blit_atlas_fs_source_glsl300es desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].glsl_name = "v_position" + desc.attrs[1].base_type = .FLOAT desc.attrs[1].glsl_name = "v_texture" desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 @@ -1704,8 +1708,10 @@ blit_atlas_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.fragment_func.source = transmute(cstring)&blit_atlas_fs_source_hlsl4 desc.fragment_func.d3d11_target = "ps_4_0" desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].hlsl_sem_name = "TEXCOORD" desc.attrs[0].hlsl_sem_index = 0 + desc.attrs[1].base_type = .FLOAT desc.attrs[1].hlsl_sem_name = "TEXCOORD" desc.attrs[1].hlsl_sem_index = 1 desc.uniform_blocks[0].stage = .FRAGMENT @@ -1728,6 +1734,8 @@ blit_atlas_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main0" desc.fragment_func.source = transmute(cstring)&blit_atlas_fs_source_metal_macos desc.fragment_func.entry = "main0" + desc.attrs[0].base_type = .FLOAT + desc.attrs[1].base_type = .FLOAT desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 desc.uniform_blocks[0].size = 16 @@ -1748,6 +1756,8 @@ blit_atlas_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&blit_atlas_fs_source_wgsl desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT + desc.attrs[1].base_type = .FLOAT desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 desc.uniform_blocks[0].size = 16 diff --git a/backend/sokol/draw_text.odin b/backend/sokol/draw_text.odin index eb2f6a0..79e36b6 100644 --- a/backend/sokol/draw_text.odin +++ b/backend/sokol/draw_text.odin @@ -913,7 +913,9 @@ draw_text_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&draw_text_fs_source_glsl410 desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].glsl_name = "v_position" + desc.attrs[1].base_type = .FLOAT desc.attrs[1].glsl_name = "v_texture" desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 @@ -936,7 +938,9 @@ draw_text_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&draw_text_fs_source_glsl300es desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].glsl_name = "v_position" + desc.attrs[1].base_type = .FLOAT desc.attrs[1].glsl_name = "v_texture" desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 @@ -961,8 +965,10 @@ draw_text_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.fragment_func.source = transmute(cstring)&draw_text_fs_source_hlsl4 desc.fragment_func.d3d11_target = "ps_4_0" desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].hlsl_sem_name = "TEXCOORD" desc.attrs[0].hlsl_sem_index = 0 + desc.attrs[1].base_type = .FLOAT desc.attrs[1].hlsl_sem_name = "TEXCOORD" desc.attrs[1].hlsl_sem_index = 1 desc.uniform_blocks[0].stage = .FRAGMENT @@ -985,6 +991,8 @@ draw_text_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main0" desc.fragment_func.source = transmute(cstring)&draw_text_fs_source_metal_macos desc.fragment_func.entry = "main0" + desc.attrs[0].base_type = .FLOAT + desc.attrs[1].base_type = .FLOAT desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 desc.uniform_blocks[0].size = 32 @@ -1005,6 +1013,8 @@ draw_text_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&draw_text_fs_source_wgsl desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT + desc.attrs[1].base_type = .FLOAT desc.uniform_blocks[0].stage = .FRAGMENT desc.uniform_blocks[0].layout = .STD140 desc.uniform_blocks[0].size = 32 diff --git a/backend/sokol/render_glyph.odin b/backend/sokol/render_glyph.odin index ca68fa9..e45b235 100644 --- a/backend/sokol/render_glyph.odin +++ b/backend/sokol/render_glyph.odin @@ -518,14 +518,18 @@ render_glyph_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&render_glyph_fs_source_glsl410 desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].glsl_name = "v_position" + desc.attrs[1].base_type = .FLOAT desc.attrs[1].glsl_name = "v_texture" case .GLES3: desc.vertex_func.source = transmute(cstring)&render_glyph_vs_source_glsl300es desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&render_glyph_fs_source_glsl300es desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].glsl_name = "v_position" + desc.attrs[1].base_type = .FLOAT desc.attrs[1].glsl_name = "v_texture" case .D3D11: desc.vertex_func.source = transmute(cstring)&render_glyph_vs_source_hlsl4 @@ -534,8 +538,10 @@ render_glyph_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.fragment_func.source = transmute(cstring)&render_glyph_fs_source_hlsl4 desc.fragment_func.d3d11_target = "ps_4_0" desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT desc.attrs[0].hlsl_sem_name = "TEXCOORD" desc.attrs[0].hlsl_sem_index = 0 + desc.attrs[1].base_type = .FLOAT desc.attrs[1].hlsl_sem_name = "TEXCOORD" desc.attrs[1].hlsl_sem_index = 1 case .METAL_MACOS: @@ -543,11 +549,15 @@ render_glyph_shader_desc :: proc (backend: sg.Backend) -> sg.Shader_Desc { desc.vertex_func.entry = "main0" desc.fragment_func.source = transmute(cstring)&render_glyph_fs_source_metal_macos desc.fragment_func.entry = "main0" + desc.attrs[0].base_type = .FLOAT + desc.attrs[1].base_type = .FLOAT case .WGPU: desc.vertex_func.source = transmute(cstring)&render_glyph_vs_source_wgsl desc.vertex_func.entry = "main" desc.fragment_func.source = transmute(cstring)&render_glyph_fs_source_wgsl desc.fragment_func.entry = "main" + desc.attrs[0].base_type = .FLOAT + desc.attrs[1].base_type = .FLOAT } return desc } diff --git a/scripts/build_sokol_demo.ps1 b/scripts/build_sokol_demo.ps1 index 6d8374e..b0f7103 100644 --- a/scripts/build_sokol_demo.ps1 +++ b/scripts/build_sokol_demo.ps1 @@ -103,11 +103,11 @@ function build-SokolBackendDemo # $build_args += $flag_micro_architecture_native $build_args += $flag_use_separate_modules $build_args += $flag_thread_count + $CoreCount_Physical - # $build_args += $flag_optimize_none + $build_args += $flag_optimize_none # $build_args += $flag_optimize_minimal - $build_args += $flag_optimize_speed + # $build_args += $flag_optimize_speed # $build_args += $falg_optimize_aggressive - # $build_args += $flag_debug + $build_args += $flag_debug $build_args += $flag_pdb_name + $pdb $build_args += $flag_subsystem + 'windows' # $build_args += ($flag_extra_linker_flags + $linker_args )