public static GLCapabilitiesImmutable fixOffscreenBitOnly(final GLCapabilitiesImmutable capsRequested) { if( capsRequested.isOnscreen() ) { // fix caps .. final GLCapabilities caps2 = (GLCapabilities) capsRequested.cloneMutable(); caps2.setOnscreen(false); return caps2; } return capsRequested; }
/** Fix double buffered setting */ public static GLCapabilitiesImmutable fixDoubleBufferedGLCapabilities(final GLCapabilitiesImmutable capsRequested, final boolean doubleBuffered) { if( capsRequested.getDoubleBuffered() != doubleBuffered) { final GLCapabilities caps2 = (GLCapabilities) capsRequested.cloneMutable(); caps2.setDoubleBuffered(doubleBuffered); return caps2; } return capsRequested; }
public static GLCapabilitiesImmutable fixGLProfile(final GLCapabilitiesImmutable caps, final GLProfile glp) { if( caps.getGLProfile() != glp ) { final GLCapabilities caps2 = (GLCapabilities) caps.cloneMutable(); caps2.setGLProfile(glp); return caps2; } return caps; } }
public static GLCapabilitiesImmutable fixGLPBufferGLCapabilities(final GLCapabilitiesImmutable capsRequested) { if( capsRequested.isOnscreen() || !capsRequested.isPBuffer() || capsRequested.isFBO() ) { // fix caps .. final GLCapabilities caps2 = (GLCapabilities) capsRequested.cloneMutable(); caps2.setOnscreen(false); caps2.setFBO(false); caps2.setPBuffer(true); caps2.setBitmap(false); return caps2; } return capsRequested; }
public static GLCapabilitiesImmutable fixOnscreenGLCapabilities(final GLCapabilitiesImmutable capsRequested) { if( !capsRequested.isOnscreen() || capsRequested.isFBO() || capsRequested.isPBuffer() || capsRequested.isBitmap() ) { // fix caps .. final GLCapabilities caps2 = (GLCapabilities) capsRequested.cloneMutable(); caps2.setBitmap (false); caps2.setPBuffer (false); caps2.setFBO (false); caps2.setOnscreen(true); return caps2; } return capsRequested; }
@Override protected final void setRealizedImpl() { final MutableGraphicsConfiguration msConfig = (MutableGraphicsConfiguration) surface.getGraphicsConfiguration(); if(realized) { parent.setRealized(true); origParentChosenCaps = (GLCapabilitiesImmutable) msConfig.getChosenCapabilities(); final GLCapabilities chosenFBOCaps = (GLCapabilities) origParentChosenCaps.cloneMutable(); // incl. <Type>GLCapabilities, e.g. X11GLCapabilities chosenFBOCaps.copyFrom(getRequestedGLCapabilities()); // copy user values msConfig.setChosenCapabilities(chosenFBOCaps); } else { msConfig.setChosenCapabilities(origParentChosenCaps); parent.setRealized(false); } }
@Override protected GLDrawableImpl createOffscreenDrawableImpl(final NativeSurface target) { final MutableGraphicsConfiguration config = (MutableGraphicsConfiguration) target.getGraphicsConfiguration(); final GLCapabilitiesImmutable caps = (GLCapabilitiesImmutable) config.getChosenCapabilities(); if(!caps.isPBuffer()) { // Actual implementation is using PBuffer ... final GLCapabilities modCaps = (GLCapabilities) caps.cloneMutable(); modCaps.setPBuffer(true); modCaps.setBitmap(false); config.setChosenCapabilities(modCaps); return new MacOSXOffscreenCGLDrawable(this, target); } return new MacOSXPbufferCGLDrawable(this, target); }
public static GLCapabilitiesImmutable clipRGBAGLCapabilities(final GLCapabilitiesImmutable caps, final boolean allowRGB555, final boolean allowAlpha) { final int iR = caps.getRedBits(); final int iG = caps.getGreenBits(); final int iB = caps.getBlueBits(); final int iA = caps.getAlphaBits(); final int oR = clipColor(iR, allowRGB555); final int oG = clipColor(iG, allowRGB555); final int oB = clipColor(iB, allowRGB555); final int oA = ( allowAlpha && 0 < iA ) ? oR : 0 ; // align alpha to red if requested and allowed if( iR != oR || iG != oG || iB != oB || iA != oA ) { final GLCapabilities caps2 = (GLCapabilities) caps.cloneMutable(); caps2.setRedBits(oR); caps2.setGreenBits(oG); caps2.setBlueBits(oB); caps2.setAlphaBits(oA); return caps2; } return caps; }
final boolean reqNewGLADOnscrn = gladCaps.isOnscreen(); final GLCapabilities newGLADCaps = (GLCapabilities)gladCaps.cloneMutable(); newGLADCaps.setDoubleBuffered(false); newGLADCaps.setOnscreen(false);
caps = (GLCapabilities) userCapsRequest.cloneMutable(); } else { caps = new GLCapabilities(GLProfile.getDefault(GLProfile.getDefaultDevice()));
printAWTTiles.customTileHeight != -1 && printAWTTiles.customTileHeight != printDrawable.getSurfaceHeight(); final GLCapabilities newGLADCaps = (GLCapabilities)gladCaps.cloneMutable(); newGLADCaps.setDoubleBuffered(false); newGLADCaps.setOnscreen(false);
final boolean reqNewGLADOnscrn = gladCaps.isOnscreen(); final GLCapabilities newGLADCaps = (GLCapabilities)gladCaps.cloneMutable(); newGLADCaps.setDoubleBuffered(false); newGLADCaps.setOnscreen(false);
this.capsRequested = new GLCapabilities(GLProfile.getDefault(screen.getDevice())); } else { this.capsRequested = (GLCapabilitiesImmutable) capsReqUser.cloneMutable();
} else { this.capsReqUser = (GLCapabilitiesImmutable) capsReqUser.cloneMutable();
final GLCapabilities caps2 = (GLCapabilities) capsRequested.cloneMutable(); caps2.setOnscreen(false); caps2.setFBO( useFBO );