/** * Called back immediately after the OpenGL context is initialized. Can be used * to perform one-time initialization. Run only once. * GLEventListener method. */ @Override public void init(GLAutoDrawable drawable) { logger.log(Level.INFO, "Initializing OpenGL context."); generateObject(); this.fpsCounter = new FPSCounter(drawable, new Font("SansSerif", Font.BOLD, 12)); this.overlay = new Overlay(drawable, new Font("SansSerif", Font.BOLD, 12)); this.overlay.setColor(127, 127, 127, 100); this.overlay.setTextLocation(Overlay.LOWER_LEFT); // Parse random gcode file and generate something to draw. GL2 gl = drawable.getGL().getGL2(); // get the OpenGL graphics context glu = new GLU(); // get GL Utilities gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // set background (clear) color gl.glClearDepth(1.0f); // set clear depth value to farthest gl.glEnable(GL_DEPTH_TEST); // enables depth testing gl.glDepthFunc(GL_LEQUAL); // the type of depth test to do gl.glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // best perspective correction gl.glShadeModel(GL_SMOOTH); // blends colors nicely, and smoothes out lighting }
/** * Calls opengl enable * @param type what to enable */ @Override public void enable(final int type) { //DONE gl.glEnable(type); } }
/** * Calls opengl enable * @param type what to enable */ @Override public void enable(final int type) { // DONE gl.glEnable(type); }
@Override public void glEnable(int cap) { gl.glEnable(cap); }
GL2 gl = dc.getGL().getGL2(); // GL initialization checks for GL2 compatibility. int attrMask = GL2.GL_DEPTH_BUFFER_BIT // for depth test, depth mask and depth func ... bunch more bits being set ... gl.glPushAttrib(attrMask); if (!dc.isPickingMode()) { gl.glEnable(GL.GL_BLEND); OGLUtil.applyBlending(gl, false); }
gl.glLoadIdentity(); } else { gl.glEnable(GL.GL_DEPTH_TEST);
public static void glEnable( int cap) { gl().glEnable( cap); }
private void setupTextureAttribs(GL2 gl) { gl.glEnable(GL.GL_CULL_FACE); gl.glCullFace(GL.GL_BACK); }
public void draw(GL2 gl, Set<Face> faces) { gl.glEnable(GL.GL_DEPTH_TEST); renderTextured(gl, faces); gl.glDisable(GL.GL_DEPTH_TEST); }
@Override public void setHint(Key key, Object value) { super.setHint(key, value); if (key == RenderingHints.KEY_ANTIALIASING) { if (value == RenderingHints.VALUE_ANTIALIAS_ON) { gl.glEnable(GL.GL_MULTISAMPLE); } else { gl.glDisable(GL.GL_MULTISAMPLE); } } }
@Override public void setHint(Key key, Object value) { super.setHint(key, value); if (key == RenderingHints.KEY_ANTIALIASING) { if (value == RenderingHints.VALUE_ANTIALIAS_ON) { gl.glEnable(GL.GL_MULTISAMPLE); } else { gl.glDisable(GL.GL_MULTISAMPLE); } } }
public static void beginSimpleOutlinePoint(GL2 gl) { gl.glEnable(GL.GL_CULL_FACE); gl.glCullFace(GL.GL_FRONT); gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL2GL3.GL_POINT); gl.glPointSize(6); gl.glEnable(GL2GL3.GL_POLYGON_OFFSET_POINT); // offset polygons to back gl.glPolygonOffset(2.0f, 2.0f); gl.glDisable(GLLightingFunc.GL_LIGHTING); }
gl2.glLoadIdentity(); gl2.glBlendFunc(GL2.GL_SRC_ALPHA, GL2.GL_ONE_MINUS_SRC_ALPHA); gl2.glEnable(GL2.GL_BLEND); fogcol = new float[]{ .5f+slowFeedback/2f, .5f+slowFeedback/2f, .5f+slowFeedback/2f, 1 }; gl2.glEnable(GL2.GL_FOG); gl2.glFogi(GL2.GL_FOG_MODE, GL.GL_LINEAR); gl2.glFogf(GL2.GL_FOG_DENSITY, 0f);
@Override public void draw(OTFOGLDrawer drawer) { GL2 gl = OTFGLAbstractDrawable.getGl(); gl.glColor3d(1.0, 0.0, 0.0); gl.glEnable(GL.GL_BLEND); gl.glEnable(GL.GL_LINE_SMOOTH); for (Coord c : coords){ GLUtils.drawCircle(gl, (float) c.getX(), (float) c.getY(), 100); } gl.glDisable(GL.GL_LINE_SMOOTH); gl.glDisable(GL.GL_BLEND); }
public static void endSimpleOutline(GL2 gl) { gl.glEnable(GLLightingFunc.GL_LIGHTING); gl.glDisable(GL2GL3.GL_POLYGON_OFFSET_LINE); gl.glDisable(GL2GL3.GL_POLYGON_OFFSET_POINT); gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL2GL3.GL_FILL); gl.glDisable(GL.GL_CULL_FACE); }
private static void drawSelectedFill(Gl2Draw drawer, GL2 gl) { gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL2GL3.GL_FILL); gl.glEnable(GL.GL_POLYGON_OFFSET_FILL); // offset polygons to front gl.glPolygonOffset(-2.0f, -2.0f); drawer.draw(gl); gl.glDisable(GL.GL_POLYGON_OFFSET_FILL); }
@Override void updatePointAttributes(Context ctx, float pointSize, boolean pointAntialiasing) { if (VERBOSE) System.err.println("JoglPipeline.updatePointAttributes()"); GL2 gl = context(ctx).getGL().getGL2(); gl.glPointSize(pointSize); // XXXX: Polygon Mode check, blend enable if (pointAntialiasing) { gl.glEnable(GL2.GL_POINT_SMOOTH); } else { gl.glDisable(GL2.GL_POINT_SMOOTH); } }
gl2.glLoadIdentity(); gl2.glBlendFunc(GL2.GL_SRC_ALPHA, GL2.GL_ONE_MINUS_SRC_ALPHA); gl2.glEnable(GL2.GL_BLEND);
@Override void resetPolygonAttributes(Context ctx) { if (VERBOSE) System.err.println("JoglPipeline.resetPolygonAttributes()"); GL2 gl = context(ctx).getGL().getGL2(); gl.glCullFace(GL.GL_BACK); gl.glEnable(GL.GL_CULL_FACE); gl.glLightModeli(GL2.GL_LIGHT_MODEL_TWO_SIDE, GL.GL_FALSE); gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL2.GL_FILL); gl.glPolygonOffset(0.0f, 0.0f); gl.glDisable(GL2.GL_POLYGON_OFFSET_POINT); gl.glDisable(GL2.GL_POLYGON_OFFSET_LINE); gl.glDisable(GL.GL_POLYGON_OFFSET_FILL); }