@@ -106,11 +106,61 @@ protected void printContextInitInfo() {
106106 Display .getPixelScaleFactor ()});
107107 }
108108
109+ protected int [] getGLVersion (String renderer ) {
110+ int maj = -1 , min = -1 ;
111+ switch (settings .getRenderer ()) {
112+ case AppSettings .LWJGL_OPENGL2 :
113+ maj = 2 ;
114+ min = 0 ;
115+ break ;
116+ // case AppSettings.LWJGL_OPENGL30:
117+ // maj=3;
118+ // min=0;
119+ // break;
120+ case AppSettings .LWJGL_OPENGL3 :
121+ // case AppSettings.LWJGL_OPENGL32:
122+ maj = 3 ;
123+ min = 2 ;
124+ break ;
125+ case AppSettings .LWJGL_OPENGL33 :
126+ maj = 3 ;
127+ min = 3 ;
128+ break ;
129+ case AppSettings .LWJGL_OPENGL4 :
130+ // case AppSettings.LWJGL_OPENGL40:
131+ maj = 4 ;
132+ min = 0 ;
133+ break ;
134+ case AppSettings .LWJGL_OPENGL41 :
135+ maj = 4 ;
136+ min = 1 ;
137+ break ;
138+ case AppSettings .LWJGL_OPENGL42 :
139+ maj = 4 ;
140+ min = 2 ;
141+ break ;
142+ case AppSettings .LWJGL_OPENGL43 :
143+ maj = 4 ;
144+ min = 3 ;
145+ break ;
146+ case AppSettings .LWJGL_OPENGL44 :
147+ maj = 4 ;
148+ min = 4 ;
149+ break ;
150+ case AppSettings .LWJGL_OPENGL45 :
151+ maj = 4 ;
152+ min = 5 ;
153+ break ;
154+ }
155+ return maj == -1 ? null : new int [] { maj , min };
156+ }
157+
109158 protected ContextAttribs createContextAttribs () {
110- if (settings .getBoolean ("GraphicsDebug" ) || settings .getRenderer ().equals (AppSettings .LWJGL_OPENGL3 )) {
159+ int vers [] = getGLVersion (settings .getRenderer ());
160+ if (settings .getBoolean ("GraphicsDebug" ) || (vers != null && vers [0 ] != 2 )) {
111161 ContextAttribs attr ;
112- if (settings . getRenderer (). equals ( AppSettings . LWJGL_OPENGL3 ) ) {
113- attr = new ContextAttribs (3 , 2 );
162+ if (vers != null && vers [ 0 ] != 2 ) {
163+ attr = new ContextAttribs (vers [ 0 ], vers [ 1 ] );
114164 attr = attr .withProfileCore (true ).withForwardCompatible (true ).withProfileCompatibility (false );
115165 } else {
116166 attr = new ContextAttribs ();
@@ -204,8 +254,8 @@ protected void initContextFirstTime() {
204254 + "required for jMonkeyEngine" );
205255 }
206256
207- if (settings .getRenderer (). equals ( AppSettings . LWJGL_OPENGL2 )
208- || settings . getRenderer (). equals ( AppSettings . LWJGL_OPENGL3 ) ) {
257+ int vers [] = getGLVersion (settings .getRenderer ());
258+ if ( vers != null ) {
209259 GL gl = new LwjglGL ();
210260 GLExt glext = new LwjglGLExt ();
211261 GLFbo glfbo ;
0 commit comments