public void init() { if (_inited) { return; } // create the Display. final PixelFormat format = new PixelFormat(_settings.getAlphaBits(), _settings.getDepthBits(), _settings.getStencilBits()).withSamples(_settings.getSamples()).withStereo(_settings.isStereo()); try { Display.setParent(_canvas); // NOTE: Workaround for possible lwjgl "pixel not accelerated" bug, as suggested by user "faust" try { Display.create(format); } catch (final LWJGLException e) { // failed to create Display, apply workaround (sleep for 1 second) and try again Thread.sleep(1000); Display.create(format); } } catch (final Exception e) { logger.severe("Cannot create window"); logger.logp(Level.SEVERE, this.getClass().toString(), "initDisplay()", "Exception", e); throw new Ardor3dException("Cannot create window: " + e.getMessage()); } _canvasRenderer.init(_settings, true); // true - do swap in renderer. _inited = true; }
.withBitsPerPixel(_settings.getColorDepth()).withStereo(_settings.isStereo()); _pbuffer = new Pbuffer(_width, _height, format, _texture, null); final Object contextKey = _pbuffer;
public LwjglAwtCanvas(final DisplaySettings settings, final LwjglCanvasRenderer canvasRenderer) throws LWJGLException { super(new PixelFormat(settings.getColorDepth(), settings.getAlphaBits(), settings.getDepthBits(), settings .getStencilBits(), settings.getSamples()).withStereo(settings.isStereo())); _settings = settings; _canvasRenderer = canvasRenderer; _canvasRenderer.setCanvasCallback(new LwjglCanvasCallback() { @Override public void makeCurrent() throws LWJGLException { LwjglAwtCanvas.this.makeCurrent(); } @Override public void releaseContext() throws LWJGLException { LwjglAwtCanvas.this.releaseContext(); } }); }
_settings.getStencilBits()).withSamples(_settings.getSamples()).withStereo(_settings.isStereo());
caps.setNumSamples(settings.getSamples()); caps.setSampleBuffers(settings.getSamples() != 0); caps.setStereo(settings.isStereo()); caps.setStencilBits(settings.getStencilBits()); switch (settings.getColorDepth()) {