Replaced macro based selection of which shaders to use by default with DisplaySettings::setShaderHint() and OSG_SHADER=HINT=GL2|GL3|GLES2|GLES3|NONE controls

This commit is contained in:
Robert Osfield
2017-03-27 11:44:41 +01:00
parent ec5cbe18d5
commit 6308b497f2
5 changed files with 133 additions and 89 deletions

View File

@@ -310,6 +310,19 @@ class OSG_EXPORT DisplaySettings : public osg::Referenced
VertexBufferHint getVertexBufferHint() const { return _vertexBufferHint; }
enum ShaderHint
{
SHADER_NONE,
SHADER_GL2,
SHADER_GLES2,
SHADER_GL3,
SHADER_GLES3
};
void setShaderHint(ShaderHint hint) { _shaderHint = hint; }
ShaderHint getShaderHint() const { return _shaderHint; }
void setKeystoneHint(bool enabled) { _keystoneHint = enabled; }
bool getKeystoneHint() const { return _keystoneHint; }
@@ -323,7 +336,8 @@ class OSG_EXPORT DisplaySettings : public osg::Referenced
Objects& getKeystones() { return _keystones; }
const Objects& getKeystones() const { return _keystones; }
enum OSXMenubarBehavior {
enum OSXMenubarBehavior
{
MENUBAR_AUTO_HIDE,
MENUBAR_FORCE_HIDE,
MENUBAR_FORCE_SHOW
@@ -400,6 +414,7 @@ class OSG_EXPORT DisplaySettings : public osg::Referenced
unsigned int _syncSwapBuffers;
VertexBufferHint _vertexBufferHint;
ShaderHint _shaderHint;
bool _keystoneHint;
FileNames _keystoneFileNames;