package org.bloatedcode.keeper.video.opengl; import javax.media.opengl.GLCapabilities; import javax.media.opengl.GLProfile; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.jogamp.newt.event.WindowAdapter; import com.jogamp.newt.event.WindowEvent; import com.jogamp.newt.opengl.GLWindow; public class OpenGLManager { public static final int DEFAULT_HEIGHT = 800; public static final int DEFAULT_WIDTH = 600; private static Logger LOGGER = LoggerFactory.getLogger(OpenGLManager.class); private GLProfile profile = null; private GLCapabilities capabilities = null; private GLWindow window = null; static { GLProfile.initSingleton(true); } public void initialize() { LOGGER.info("Initializing OpenGL Manager ..."); LOGGER.debug("Loading OpenGL Profile"); profile = GLProfile.get(GLProfile.GL2); LOGGER.debug("Loading OpenGL Capabilities"); capabilities = new GLCapabilities(profile); window = GLWindow.create(capabilities); window.setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT); window.setFullscreen(true); window.setVisible(true); window.setTitle("NEWT Window Test"); window.addWindowListener(new WindowAdapter() { @Override public void windowDestroyNotify(WindowEvent e) { LOGGER.info("Exiting program..."); System.exit(0); } }); window.addGLEventListener(new SimpleScene()); } }