From 332dd8550a2301427dd942d2a77cb59ebd3ec92e Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Tue, 31 Dec 2019 18:23:02 +0100 Subject: Enable compilation using JogAmp 2.4.0 (one demo needs vecmath, dependency issue) --- src/net/java/joglutils/test3ds/Main.java | 44 ++++++++------ src/net/java/joglutils/test3ds/MyModel.java | 91 +++++++++++++++-------------- 2 files changed, 73 insertions(+), 62 deletions(-) (limited to 'src/net/java/joglutils/test3ds') diff --git a/src/net/java/joglutils/test3ds/Main.java b/src/net/java/joglutils/test3ds/Main.java index 593c1a4..fcb9a4d 100644 --- a/src/net/java/joglutils/test3ds/Main.java +++ b/src/net/java/joglutils/test3ds/Main.java @@ -36,29 +36,35 @@ package net.java.joglutils.test3ds; -import com.sun.opengl.util.Animator; import java.awt.Frame; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; -import javax.media.opengl.*; -import javax.media.opengl.awt.*; -import javax.media.opengl.glu.GLU; + +import com.jogamp.opengl.GL; +import com.jogamp.opengl.GL2; +import com.jogamp.opengl.GL2ES1; +import com.jogamp.opengl.GLAutoDrawable; +import com.jogamp.opengl.GLEventListener; +import com.jogamp.opengl.awt.GLCanvas; +import com.jogamp.opengl.fixedfunc.GLMatrixFunc; +import com.jogamp.opengl.glu.GLU; +import com.jogamp.opengl.util.Animator; public class Main { /** Creates a new instance of Main */ public Main() { } - public static void main(String[] args) + public static void main(final String[] args) { - Frame frame = new Frame(); - GLCanvas canvas = new GLCanvas(); + final Frame frame = new Frame(); + final GLCanvas canvas = new GLCanvas(); canvas.addGLEventListener(new Renderer()); frame.add(canvas); frame.setSize(600, 600); final Animator animator = new Animator(canvas); frame.addWindowListener(new WindowAdapter() { - public void windowClosing(WindowEvent e) { + public void windowClosing(final WindowEvent e) { // Run this on another thread than the AWT event queue to // make sure the call to Animator.stop() completes before // exiting @@ -76,12 +82,12 @@ public class Main { static class Renderer implements GLEventListener { - private MyModel model = new MyModel(); + private final MyModel model = new MyModel(); - public void display(GLAutoDrawable gLDrawable) + public void display(final GLAutoDrawable gLDrawable) { final GL2 gl = gLDrawable.getGL().getGL2(); - gl.glClear(GL2.GL_COLOR_BUFFER_BIT | GL2.GL_DEPTH_BUFFER_BIT); + gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT); gl.glLoadIdentity(); gl.glPushMatrix(); @@ -93,22 +99,22 @@ public class Main { } - public void dispose(GLAutoDrawable drawable) {} + public void dispose(final GLAutoDrawable drawable) {} /** Called by the drawable immediately after the OpenGL context is * initialized for the first time. Can be used to perform one-time OpenGL * initialization such as setup of lights and display lists. * @param gLDrawable The GLDrawable object. */ - public void init(GLAutoDrawable gLDrawable) + public void init(final GLAutoDrawable gLDrawable) { final GL2 gl = gLDrawable.getGL().getGL2(); gl.glClearColor(0.0f, 0.0f, 0.0f, 0.3f); gl.glClearDepth(1.0f); - gl.glEnable(GL2.GL_DEPTH_TEST); - gl.glDepthFunc(GL2.GL_LEQUAL); - gl.glHint(GL2.GL_PERSPECTIVE_CORRECTION_HINT, GL2.GL_NICEST); + gl.glEnable(GL.GL_DEPTH_TEST); + gl.glDepthFunc(GL.GL_LEQUAL); + gl.glHint(GL2ES1.GL_PERSPECTIVE_CORRECTION_HINT, GL.GL_NICEST); if (!model.isLoaded()) model.load(gLDrawable, "globe.3ds"); @@ -128,7 +134,7 @@ public class Main { * @param width The new width of the window. * @param height The new height of the window. */ - public void reshape(GLAutoDrawable gLDrawable, int x, int y, int width, int height) + public void reshape(final GLAutoDrawable gLDrawable, final int x, final int y, final int width, int height) { final GL2 gl = gLDrawable.getGL().getGL2(); final GLU glu = new GLU(); @@ -137,10 +143,10 @@ public class Main { height = 1; final float h = (float)width / (float)height; gl.glViewport(0, 0, width, height); - gl.glMatrixMode(GL2.GL_PROJECTION); + gl.glMatrixMode(GLMatrixFunc.GL_PROJECTION); gl.glLoadIdentity(); gl.glOrtho(-1000, 1000, -1000, 1000, -10000, 10000); - gl.glMatrixMode(GL2.GL_MODELVIEW); + gl.glMatrixMode(GLMatrixFunc.GL_MODELVIEW); gl.glLoadIdentity(); } } diff --git a/src/net/java/joglutils/test3ds/MyModel.java b/src/net/java/joglutils/test3ds/MyModel.java index fbdca36..31ce989 100644 --- a/src/net/java/joglutils/test3ds/MyModel.java +++ b/src/net/java/joglutils/test3ds/MyModel.java @@ -1,34 +1,34 @@ /* * Copyright (c) 2006 Greg Rodgers All Rights Reserved. - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: - * + * * - Redistribution of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. - * + * * - Redistribution in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * + * * The names of Greg Rodgers, Sun Microsystems, Inc. or the names of * contributors may not be used to endorse or promote products derived from * this software without specific prior written permission. - * + * * This software is provided "AS IS," without a warranty of any kind. ALL * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. GREG RODGERS, * SUN MICROSYSTEMS, INC. ("SUN"), AND SUN'S LICENSORS SHALL NOT BE LIABLE FOR * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR - * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL GREG - * RODGERS, SUN, OR SUN'S LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT + * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL GREG + * RODGERS, SUN, OR SUN'S LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT * OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR * PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, * ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF GREG * RODGERS OR SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - * + * * You acknowledge that this software is not designed or intended for use * in the design, construction, operation or maintenance of any nuclear * facility. @@ -36,13 +36,18 @@ package net.java.joglutils.test3ds; -import net.java.joglutils.ThreeDS.*; -import com.sun.opengl.util.texture.Texture; -import com.sun.opengl.util.texture.TextureCoords; -import com.sun.opengl.util.texture.TextureIO; import java.io.File; import java.io.IOException; -import javax.media.opengl.*; + +import com.jogamp.opengl.GL; +import com.jogamp.opengl.GL2; +import com.jogamp.opengl.GLAutoDrawable; +import com.jogamp.opengl.util.texture.Texture; +import com.jogamp.opengl.util.texture.TextureCoords; +import com.jogamp.opengl.util.texture.TextureIO; + +import net.java.joglutils.ThreeDS.Model3DS; +import net.java.joglutils.ThreeDS.Obj; public class MyModel extends Model3DS { @@ -50,76 +55,76 @@ public class MyModel extends Model3DS private TextureCoords[] textureCoords; private int compiledList; private boolean loaded = false; - + // Constructor public MyModel() { } - + public boolean isLoaded() { return loaded; } - - public boolean load(GLAutoDrawable gLDrawable, String file) + + public boolean load(final GLAutoDrawable gLDrawable, final String file) { if (!super.load(file)) return false; - - GL2 gl = gLDrawable.getGL().getGL2(); - int numMaterials = materials.size(); - + + final GL2 gl = gLDrawable.getGL().getGL2(); + final int numMaterials = materials.size(); + texture = new Texture[numMaterials]; for (int i=0; i