}
};
+static inline bool shader_is_diffuse( const char *shader ){
+ return
+ /* Quetoo */
+ !string_equal_suffix( shader, "_h" )
+ && !string_equal_suffix( shader, "_local" )
+ && !string_equal_suffix( shader, "_nm" )
+ && !string_equal_suffix( shader, "_s" )
+ /* DarkPlaces */
+ && !string_equal_suffix( shader, "_bump" )
+ && !string_equal_suffix( shader, "_glow" )
+ && !string_equal_suffix( shader, "_gloss" )
+ && !string_equal_suffix( shader, "_luma" )
+ && !string_equal_suffix( shader, "_norm" )
+ && !string_equal_suffix( shader, "_pants" )
+ && !string_equal_suffix( shader, "_shirt" )
+ && !string_equal_suffix( shader, "_reflect" )
+ ;
+}
+
inline bool shader_valid( const char* shader ){
return string_is_ascii( shader )
&& strchr( shader, ' ' ) == 0
&& strchr( shader, '\r' ) == 0
&& strchr( shader, '\t' ) == 0
&& strchr( shader, '\v' ) == 0
- && strchr( shader, '\\' ) == 0;
+ && strchr( shader, '\\' ) == 0
+ && shader_is_diffuse( shader );
}
inline const char* GlobalTexturePrefix_get(){