X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fglsl%2Ffeatures.h;h=14cc2b3743ed61cae347c62d90470f3fac9ad3c4;hp=36220eb352fc0e097dfa1a2ddcae378a10e6073f;hb=38712d8ecc57d043a2419ffbaeeb57f7a6586f14;hpb=dfde6f3568c1a840232cf860f4a260a987a1433b diff --git a/source/glsl/features.h b/source/glsl/features.h index 36220eb3..14cc2b37 100644 --- a/source/glsl/features.h +++ b/source/glsl/features.h @@ -1,7 +1,7 @@ #ifndef MSP_GL_SL_FEATURES_H_ #define MSP_GL_SL_FEATURES_H_ -#include +#include namespace Msp { namespace GL { @@ -9,22 +9,22 @@ namespace SL { struct Features { - GLApi gl_api; + GraphicsApi target_api = OPENGL; Version glsl_version; - bool arb_enhanced_layouts; - bool arb_explicit_attrib_location; - bool arb_explicit_uniform_location; - bool arb_gpu_shader5; - bool arb_separate_shader_objects; - bool arb_uniform_buffer_object; - bool ext_gpu_shader4; - bool ext_texture_array; - unsigned constant_id_range; + bool arb_enhanced_layouts = false; + bool arb_explicit_attrib_location = false; + bool arb_explicit_uniform_location = false; + bool arb_gpu_shader5 = false; + bool arb_separate_shader_objects = false; + bool arb_uniform_buffer_object = false; + bool ext_gpu_shader4 = false; + bool ext_texture_array = false; + unsigned constant_id_range = 0x80000000U; + unsigned uniform_binding_range = 84; + unsigned texture_binding_range = 96; - Features(); - - static Features from_context(); - static Features all(); + static Features from_version(const Version &); + static Features latest(); }; } // namespace SL