List of usage examples for org.lwjgl.opengl GL11 glMatrixMode
public static native void glMatrixMode(@NativeType("GLenum") int mode);
From source file:com.aelitis.azureus.plugins.view3d.ViewTest2.java
License:Open Source License
public static void main(String[] args) { final Display display = new Display(); Shell shell = new Shell(display); shell.setLayout(new FillLayout()); Composite comp = new Composite(shell, SWT.NONE); comp.setLayout(new FillLayout()); GLData data = new GLData(); data.doubleBuffer = true;/*from www. ja va 2 s . c o m*/ data.accumAlphaSize = 8; data.accumBlueSize = 8; data.accumGreenSize = 8; data.accumRedSize = 8; final GLCanvas canvas = new GLCanvas(comp, SWT.NONE, data); canvas.setCurrent(); try { GLContext.useContext(canvas); } catch (LWJGLException e) { e.printStackTrace(); } canvas.addListener(SWT.Resize, new Listener() { public void handleEvent(Event event) { Rectangle bounds = canvas.getBounds(); float fAspect = (float) bounds.width / (float) bounds.height; canvas.setCurrent(); try { GLContext.useContext(canvas); } catch (LWJGLException e) { e.printStackTrace(); } GL11.glViewport(0, 0, bounds.width, bounds.height); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glLoadIdentity(); GLU.gluPerspective(45.0f, fAspect, 0.5f, 400.0f); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glLoadIdentity(); } }); GL11.glLineWidth(1); GL11.glHint(GL11.GL_LINE_SMOOTH_HINT, GL11.GL_NICEST); GL11.glEnable(GL11.GL_LINE_SMOOTH); GL11.glEnable(GL11.GL_BLEND); GL11.glHint(GL11.GL_PERSPECTIVE_CORRECTION_HINT, GL11.GL_NICEST); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glClearColor(1.0f, 1.0f, 1.0f, 1.0f); GL11.glColor3f(1.0f, 0.0f, 0.0f); GL11.glHint(GL11.GL_PERSPECTIVE_CORRECTION_HINT, GL11.GL_NICEST); GL11.glClearDepth(1.0); GL11.glLineWidth(2); GL11.glEnable(GL11.GL_DEPTH_TEST); GL11.glShadeModel(GL11.GL_FLAT); GL11.glClearColor(0.0f, 0.0f, 0.0f, 0.0f); GL11.glClearAccum(0.0f, 0.0f, 0.0f, 0.0f); shell.setText("SWT/LWJGL Example"); shell.setSize(640, 480); shell.open(); final Runnable run = new Runnable() { float rot = 0; public void run() { if (!canvas.isDisposed()) { canvas.setCurrent(); try { GLContext.useContext(canvas); } catch (LWJGLException e) { e.printStackTrace(); } int ACSIZE = 8; int[] viewport = getViewport(); GL11.glClear(GL11.GL_ACCUM_BUFFER_BIT); for (int jitter = 0; jitter < ACSIZE; jitter++) { GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT); double jit_x = jits[jitter][0]; double jit_y = jits[jitter][1]; accPerspective(50.0, (double) viewport[2] / (double) viewport[3], 1.0, 15.0, jit_x, jit_y, 0.0, 0.0, 1.0); { GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT); GL11.glClearColor(.3f, .5f, .8f, 1.0f); GL11.glLoadIdentity(); GL11.glTranslatef(0.0f, 0.0f, -10.0f); float frot = rot; GL11.glRotatef(0.15f * rot, 2.0f * frot, 10.0f * frot, 1.0f); GL11.glRotatef(0.3f * rot, 3.0f * frot, 1.0f * frot, 1.0f); GL11.glPolygonMode(GL11.GL_FRONT_AND_BACK, GL11.GL_FILL); GL11.glColor3f(0.9f, 0.9f, 0.9f); drawCylinder(2, 3, 50, 0); drawTorus(1, 1.9f + ((float) Math.sin((0.004f * frot))), 15, 15); } GL11.glAccum(GL11.GL_ACCUM, 1.0f / ACSIZE); } GL11.glAccum(GL11.GL_RETURN, 1.0f); GL11.glFlush(); rot += 0.1; canvas.swapBuffers(); display.asyncExec(this); } } }; canvas.addListener(SWT.Paint, new Listener() { public void handleEvent(Event event) { run.run(); } }); display.asyncExec(run); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:com.ardor3d.scene.state.lwjgl.util.LwjglRendererUtil.java
License:Open Source License
public static void switchMode(final RendererRecord rendRecord, final int mode) { if (!rendRecord.isMatrixValid() || rendRecord.getMatrixMode() != mode) { GL11.glMatrixMode(mode); rendRecord.setMatrixMode(mode);/*from w ww . j ava 2 s .co m*/ rendRecord.setMatrixValid(true); } }
From source file:com.badlogic.gdx.backends.lwjgl.LwjglGL10.java
License:Apache License
public final void glMatrixMode(int mode) { GL11.glMatrixMode(mode); }
From source file:com.darkona.adventurebackpack.client.render.CopygirlRenderUtils.java
License:Open Source License
public static void renderItemIn3d(ItemStack stack) { TextureManager textureManager = Minecraft.getMinecraft().getTextureManager(); // Not sure why but this can be null when the world loads. if (textureManager == null) { return;/* ww w . ja v a 2 s . c o m*/ } Item item = stack.getItem(); GL11.glPushMatrix(); Tessellator tessellator = Tessellator.instance; GL11.glEnable(GL12.GL_RESCALE_NORMAL); GL11.glRotatef(180.0F, 0.0F, 0.0F, 1.0F); GL11.glTranslatef(-0.5F, -0.5F, 1 / 32.0F); int passes = item.getRenderPasses(stack.getItemDamage()); for (int pass = 0; pass < passes; pass++) { textureManager.bindTexture(((stack.getItemSpriteNumber() == 0) ? TextureMap.locationBlocksTexture : TextureMap.locationItemsTexture)); IIcon icon = item.getIcon(stack, pass); if (icon != null) { float minU = icon.getMinU(); float maxU = icon.getMaxU(); float minV = icon.getMinV(); float maxV = icon.getMaxV(); CopygirlRenderUtils.setColorFromInt(item.getColorFromItemStack(stack, pass)); ItemRenderer.renderItemIn2D(tessellator, maxU, minV, minU, maxV, icon.getIconWidth(), icon.getIconHeight(), 0.0625F); } } if (stack.hasEffect(0)) { GL11.glDepthFunc(GL11.GL_EQUAL); GL11.glDisable(GL11.GL_LIGHTING); textureManager.bindTexture(glint); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_COLOR, GL11.GL_ONE); float f7 = 0.76F; GL11.glColor4f(0.5F * f7, 0.25F * f7, 0.8F * f7, 1.0F); GL11.glMatrixMode(GL11.GL_TEXTURE); GL11.glPushMatrix(); float f8 = 0.125F; GL11.glScalef(f8, f8, f8); float f9 = Minecraft.getSystemTime() % 3000L / 3000.0F * 8.0F; GL11.glTranslatef(f9, 0.0F, 0.0F); GL11.glRotatef(-50.0F, 0.0F, 0.0F, 1.0F); ItemRenderer.renderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glScalef(f8, f8, f8); f9 = Minecraft.getSystemTime() % 4873L / 4873.0F * 8.0F; GL11.glTranslatef(-f9, 0.0F, 0.0F); GL11.glRotatef(10.0F, 0.0F, 0.0F, 1.0F); ItemRenderer.renderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F); GL11.glPopMatrix(); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glDisable(GL11.GL_BLEND); GL11.glEnable(GL11.GL_LIGHTING); GL11.glDepthFunc(GL11.GL_LEQUAL); } GL11.glDisable(GL12.GL_RESCALE_NORMAL); GL11.glPopMatrix(); }
From source file:com.dbi.games.fortress.engine.MainEngine.java
License:Open Source License
/** * Should ONLY be invoked from the GL thread! *//*from w w w .j a v a2s .co m*/ public void renderScene(long deltaNanos) { if (!isReady) return; currentTickLengthNanos += deltaNanos; nanosSinceStatsUpdate += deltaNanos; framesSinceStatsUpdate++; if (currentTickLengthNanos >= targetTickLengthNanos) { tick(); } GL11.glClear(GL11.GL_COLOR_BUFFER_BIT); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glLoadIdentity(); graphicsEngine.renderMap(currentMap); for (Entity ent : entityEngine.findAll()) { graphicsEngine.renderEntity(ent); } if (nanosSinceStatsUpdate > NANOS_PER_STAT_UPDATE) { controlWindow.setFPS(framesSinceStatsUpdate * 4); controlWindow.setTPS(ticksSinceStatsUpdate * 4, ticksPerSecondTarget); framesSinceStatsUpdate = 0; ticksSinceStatsUpdate = 0; nanosSinceStatsUpdate = 0; } }
From source file:com.dbi.games.fortress.ui.MainAppWindow.java
License:Open Source License
/** * Creates new form MainAppWin/* w w w. ja v a2 s . c o m*/ */ public MainAppWindow() { initComponents(); glCanvas.addComponentListener(new ComponentListener() { public void componentShown(ComponentEvent e) { setNeedValidation(); } public void componentResized(ComponentEvent e) { setNeedValidation(); } public void componentMoved(ComponentEvent e) { setNeedValidation(); } public void componentHidden(ComponentEvent e) { setNeedValidation(); } }); File currentDir = new File("lib/natives"); if (!currentDir.exists()) { // JOptionPane.showMessageDialog(null, "directory location: "+currentDir.getAbsolutePath()+" does not exist!"); currentDir = new File("build/libs/natives"); } Logger.getLogger("LWJGLThread").log(Level.INFO, "LWJGL directory is " + currentDir.getAbsolutePath()); System.setProperty("org.lwjgl.librarypath", currentDir.getAbsolutePath()); Thread glThread = new Thread("GLThread") { @Override public void run() { long lastFrame = System.nanoTime(); long currentFrame; try { Display.setParent(glCanvas); Display.create(); GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glDisable(GL11.GL_DEPTH_TEST); GL11.glClearColor(0f, 0f, 0f, 0f); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glLoadIdentity(); GL11.glOrtho(0f, (float) glCanvas.getWidth(), (float) glCanvas.getHeight(), 0f, -1, 1); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glLoadIdentity(); GL11.glViewport(0, 0, glCanvas.getWidth(), glCanvas.getHeight()); MainEngine.get().graphicsEngine().buildDefaultRenderers(); while (MainEngine.get().isRunning()) { try { currentFrame = System.nanoTime(); MainEngine.get().renderScene(currentFrame - lastFrame); lastFrame = currentFrame; Display.update(); if (needUpdateViewport) { needUpdateViewport = false; GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glLoadIdentity(); GL11.glOrtho(0, glCanvas.getWidth(), glCanvas.getHeight(), 0, -1, 1); GL11.glViewport(0, 0, glCanvas.getWidth(), glCanvas.getHeight()); } } catch (Throwable ex) { ex.printStackTrace(); Logger.getLogger("LWJGLThread").log(Level.SEVERE, "There was a SEROUS uncaught error in the render thread. Shutting down. Please restart!", ex); MainEngine.get().shutdown(); } } } catch (Throwable ex) { throw new RuntimeException("There was an issue starting LWJGL!", ex); } } }; glThread.start(); }
From source file:com.dinasgames.engine.graphics.GL.java
public static void setMatrixMode(MatrixMode mode) { if (version >= 11) { int glMode = -1; switch (mode) { case Projection: glMode = GL11.GL_PROJECTION; break; case ModelView: glMode = GL11.GL_MODELVIEW;/* w ww .j ava 2 s . c om*/ break; case Texture: glMode = GL11.GL_TEXTURE; break; } if (glMode != -1) { GL11.glMatrixMode(glMode); } } }
From source file:com.dinasgames.engine.graphics.RenderTarget.java
public void pushGLStates() { //if(true){return;} if (activate(true)) { GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glPushMatrix();/*from w w w . j a va 2 s . co m*/ GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glPushMatrix(); GL11.glMatrixMode(GL11.GL_TEXTURE); GL11.glPushMatrix(); } resetGLStates(); }
From source file:com.dinasgames.engine.graphics.RenderTarget.java
public void popGLStates() { //if(true){return;} if (activate(true)) { GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glPopMatrix();//from w w w . j a va 2 s .c o m GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glPopMatrix(); GL11.glMatrixMode(GL11.GL_TEXTURE); GL11.glPopMatrix(); } }
From source file:com.dinasgames.engine.graphics.RenderTarget.java
public void resetGLStates() { //if(true){return;} if (activate(true)) { //GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_DEPTH_TEST); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glEnable(GL11.GL_BLEND);/* w w w . j a va2 s . c o m*/ GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glEnableClientState(GL11.GL_VERTEX_ARRAY); GL11.glEnableClientState(GL11.GL_COLOR_ARRAY); GL11.glEnableClientState(GL11.GL_TEXTURE_COORD_ARRAY); //GL11.glEnable(GL13.GL_MULTISAMPLE); mCache.glStatesSet = true; applyBlendMode(BlendMode.BlendAlpha); applyTransform(Transform.Identity); applyTexture(null); mCache.useVertexCache = false; setView(new View(getView())); } }