Add support for opengl versions > 3.2 in lwjgl2 renderer
This commit is contained in:
parent
7e11a6c0fe
commit
a68d8b50e3
@ -106,11 +106,61 @@ public abstract class LwjglContext implements JmeContext {
|
|||||||
Display.getPixelScaleFactor()});
|
Display.getPixelScaleFactor()});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected int[] getGLVersion(String renderer) {
|
||||||
|
int maj = -1, min = -1;
|
||||||
|
switch (settings.getRenderer()) {
|
||||||
|
case AppSettings.LWJGL_OPENGL2:
|
||||||
|
maj = 2;
|
||||||
|
min = 0;
|
||||||
|
break;
|
||||||
|
// case AppSettings.LWJGL_OPENGL30:
|
||||||
|
// maj=3;
|
||||||
|
// min=0;
|
||||||
|
// break;
|
||||||
|
case AppSettings.LWJGL_OPENGL3:
|
||||||
|
// case AppSettings.LWJGL_OPENGL32:
|
||||||
|
maj = 3;
|
||||||
|
min = 2;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL33:
|
||||||
|
maj = 3;
|
||||||
|
min = 3;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL4:
|
||||||
|
// case AppSettings.LWJGL_OPENGL40:
|
||||||
|
maj = 4;
|
||||||
|
min = 0;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL41:
|
||||||
|
maj = 4;
|
||||||
|
min = 1;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL42:
|
||||||
|
maj = 4;
|
||||||
|
min = 2;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL43:
|
||||||
|
maj = 4;
|
||||||
|
min = 3;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL44:
|
||||||
|
maj = 4;
|
||||||
|
min = 4;
|
||||||
|
break;
|
||||||
|
case AppSettings.LWJGL_OPENGL45:
|
||||||
|
maj = 4;
|
||||||
|
min = 5;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return maj == -1 ? null : new int[] { maj, min };
|
||||||
|
}
|
||||||
|
|
||||||
protected ContextAttribs createContextAttribs() {
|
protected ContextAttribs createContextAttribs() {
|
||||||
if (settings.getBoolean("GraphicsDebug") || settings.getRenderer().equals(AppSettings.LWJGL_OPENGL3)) {
|
int vers[] = getGLVersion(settings.getRenderer());
|
||||||
|
if (settings.getBoolean("GraphicsDebug") || (vers != null && vers[0] != 2)) {
|
||||||
ContextAttribs attr;
|
ContextAttribs attr;
|
||||||
if (settings.getRenderer().equals(AppSettings.LWJGL_OPENGL3)) {
|
if (vers != null && vers[0] != 2) {
|
||||||
attr = new ContextAttribs(3, 2);
|
attr = new ContextAttribs(vers[0], vers[1]);
|
||||||
attr = attr.withProfileCore(true).withForwardCompatible(true).withProfileCompatibility(false);
|
attr = attr.withProfileCore(true).withForwardCompatible(true).withProfileCompatibility(false);
|
||||||
} else {
|
} else {
|
||||||
attr = new ContextAttribs();
|
attr = new ContextAttribs();
|
||||||
@ -204,8 +254,8 @@ public abstract class LwjglContext implements JmeContext {
|
|||||||
+ "required for jMonkeyEngine");
|
+ "required for jMonkeyEngine");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settings.getRenderer().equals(AppSettings.LWJGL_OPENGL2)
|
int vers[] = getGLVersion(settings.getRenderer());
|
||||||
|| settings.getRenderer().equals(AppSettings.LWJGL_OPENGL3)) {
|
if (vers != null) {
|
||||||
GL gl = new LwjglGL();
|
GL gl = new LwjglGL();
|
||||||
GLExt glext = new LwjglGLExt();
|
GLExt glext = new LwjglGLExt();
|
||||||
GLFbo glfbo;
|
GLFbo glfbo;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user