X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=vg_shader.h;h=3334922f53ac452bf1d2fdc9f9a7a32f4226f7f9;hb=6fe81f4dfad8fc1a51d151989a534d54749c88e8;hp=50e8bd0e291589a17d32b17fe1c11f0038e9234e;hpb=0aea2ef68a5ed32fc940673402a1b4b67f38d4d3;p=vg.git diff --git a/vg_shader.h b/vg_shader.h index 50e8bd0..3334922 100644 --- a/vg_shader.h +++ b/vg_shader.h @@ -81,14 +81,11 @@ VG_STATIC int vg_shader_compile( struct vg_shader *shader ) */ int use_source_files = 0; - if( shader->compiled ) - { - if( shader->vs.orig_file && shader->fs.orig_file ) - { + if( shader->compiled ){ + if( shader->vs.orig_file && shader->fs.orig_file ){ use_source_files = 1; } - else - { + else { vg_warn( "No source files for shader '%s'\n", shader->name ); return 1; } @@ -96,8 +93,7 @@ VG_STATIC int vg_shader_compile( struct vg_shader *shader ) vg_info( "Compile shader '%s'\n", shader->name ); - if( use_source_files ) - { + if( use_source_files ){ char error[260]; char path[260]; @@ -109,14 +105,20 @@ VG_STATIC int vg_shader_compile( struct vg_shader *shader ) strcat( path, shader->fs.orig_file ); char *fragment_src = stb_include_file( path, "", "../../shaders", error ); - if( !vertex_src || !fragment_src ) - { - vg_error( "Could not find shader source files (%s)\n", - shader->vs.orig_file ); - - free( vertex_src ); - free( fragment_src ); - return 0; + if( !vertex_src || !fragment_src ){ + const char *errstr = "Could not find shader source files (%s)\n"; + if( shader->compiled ){ + vg_warn( errstr, shader->vs.orig_file ); + free( vertex_src ); + free( fragment_src ); + return 1; + } + else{ + vg_error( errstr, shader->vs.orig_file ); + free( vertex_src ); + free( fragment_src ); + return 0; + } } vert = vg_shader_subshader( vertex_src, GL_VERTEX_SHADER ); @@ -125,8 +127,7 @@ VG_STATIC int vg_shader_compile( struct vg_shader *shader ) free( vertex_src ); free( fragment_src ); } - else - { + else{ vert = vg_shader_subshader( shader->vs.static_src, GL_VERTEX_SHADER ); frag = vg_shader_subshader( shader->fs.static_src, GL_FRAGMENT_SHADER ); } @@ -179,12 +180,11 @@ VG_STATIC void vg_shaders_compile(void) { vg_info( "Compiling shaders\n" ); - for( int i=0; icompiled = 0; shader->id = 0; /* TODO: make this an error shader */