]> git.tdb.fi Git - libs/gl.git/blob - source/glsl/features.h
Convert Lighting to use shared actions
[libs/gl.git] / source / glsl / features.h
1 #ifndef MSP_GL_SL_FEATURES_H_
2 #define MSP_GL_SL_FEATURES_H_
3
4 #include <msp/gl/extension.h>
5
6 namespace Msp {
7 namespace GL {
8 namespace SL {
9
10 struct Features
11 {
12         GLApi gl_api;
13         Version glsl_version;
14         bool arb_enhanced_layouts;
15         bool arb_explicit_attrib_location;
16         bool arb_explicit_uniform_location;
17         bool arb_gpu_shader5;
18         bool arb_separate_shader_objects;
19         bool arb_uniform_buffer_object;
20         bool ext_gpu_shader4;
21         bool ext_texture_array;
22         unsigned constant_id_range;
23         unsigned uniform_binding_range;
24         unsigned texture_binding_range;
25
26         Features();
27
28         static Features from_context();
29         static Features from_version(const Version &);
30         static Features latest();
31 };
32
33 } // namespace SL
34 } // namespace GL
35 } // namespace Msp
36
37 #endif