Download presentation
Presentation is loading. Please wait.
Published byPauline Franklin Modified over 9 years ago
1
Introduce Jogl
2
Outline What is Jogl Jogl coding template Create a GLPanel Draw a 2D object on GLPanel Draw texts on GLPanel Draw a 3D object on GLPanel
3
What is Jogl It is a wrapper graphics library that allows OpenGL to be used in Java. Some online demos: – https://jogl-demos.dev.java.net/https://jogl-demos.dev.java.net/ http://www.codededge.com/elflightengine/tools/ worldbuilder/ http://bytonic.de/html/screenshots_0.html
4
Jogl coding template JFarme GLPanel + GLEventListener init() display() reshape() displayChanged() Your drawing functions, used in display() drawA2DBall() drawA3DSphere() drawText()
5
Create a GLPanel public class JOGL3DBasics { JOGLDemo() { GLJPanel panel = getGLJPanel(); panel.addGLEventListener(new MyGLEventListener()); JFrame frame = new JFrame(); frame.getContentPane().add(panel); } class MyGLEventListener { void init() {…} void display() {…} void reshape() [] {…} void displayChanged() {…} } public static void main() { // create a JOGL3DBasics object } } // end of class
6
Draw a 2D object void draw2DObject(GL gl) { gl.glColor3f(1, 0, 0); gl.glRecti(-SIZE / 2, -SIZE / 2, SIZE / 2, SIZE / 2); } void display(GLAutoDrawable drawable) { GL gl = drawable.getGL(); gl.glClear(GL.GL_COLOR_BUFFER_BIT); // clean panel draw2DObject(gl); }
7
Draw texts Create a TextRenderer object, called renderer. void drawTexture(GLAutoDrawable drawable) { renderer.beginRendering(drawable.getWidth(), drawable.getHeight()); renderer.setColor(1.0f, 0.1f, 0.8f, 0.8f); renderer.draw("Jogl Demo for CPSC 332", 80, 60); renderer.endRendering(); }
8
Draw a 3D object Create a TextRenderer object, called renderer. void drawTexture(GLAutoDrawable drawable) { renderer.beginRendering(drawable.getWidth(), drawable.getHeight()); renderer.setColor(1.0f, 0.1f, 0.8f, 0.8f); renderer.draw("Jogl Demo for CPSC 332", 80, 60); renderer.endRendering(); }
9
Put them all together
10
Animate them
11
Q uestions ?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.