- 必要なファイル
- ここから「Current release build (JSR-231 1.1.0)」のリンクをたどり、環境にあったファイルを取得する。
Windowsなら「jogl-1.1.0-windows-i586.zip」など。
jarファイルはeclipseのビルドパスにライブラリとして追加。
dllファイルは、%JAVA_HOME%\bin(とか\jre\bin)にいれても良いらしいが、
自分は「-Djava.library.path=[dllの場所]」とするのが好み
- 参考サイト
- NeHe Productions(OpenGL Tutorials...Win32 API)
Java Tips
OpenGLを使ってJavaでも3Dを楽しもう
- Tips
- OpenGLの使い方などは参考サイトに任せるとして、ここでは使えそうなTipsを紹介。
- SwingでJOGLを使う。(※必要そうなコードのみ抜粋して掲載。)
public class JoglPanel extends GLJPanel implements GLEventListener {
public JoglPanel() {
this.addGLEventListener(this);
final Animator animator = new Animator(this);
animator.start();
}
public void display(GLAutoDrawable glDrawable) {
}
public void displayChanged(GLAutoDrawable glDrawable, boolean b1, boolean b2) {
}
public void init(GLAutoDrawable glDrawable) {
}
public void reshape(GLAutoDrawable glDrawable, int x, int y, int w, int h) {
}
}
public class Jogl2dMain extends JFrame {
public static void main(String[] args) {
Jogl2dMain mainFrame = new Jogl2dMain();
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainFrame.setSize(300, 300);
mainFrame.setLocationRelativeTo(null);
mainFrame.setIgnoreRepaint(true);
mainFrame.setVisible(true);
}
public Jogl2dMain() {
this.setTitle("title text");
JoglPanel panel = new JoglPanel();
getContentPane().add(panel);
this.setResizable(false);
this.pack();
}
}
- PNG形式ファイルの読み込み。(※必要そうなコードのみ抜粋して掲載。)
// displayメソッド
try {
Texture texture = TextureIO.newTexture(this.getClass().getResourceAsStream(filename), true, suffix);
texture.enable();
texture.bind();
} catch (IOException ex) {
ex.printStackTrace();
}
- TrueTypeFontの使用。(※必要そうなコードのみ抜粋して掲載。)
// initメソッド
// Font.createFont(Font.TRUETYPE_FONT, InputStream)を利用して、好きなttfファイルを読み込んでおく
renderer = new TextRenderer(font, true, true);
// displayメソッド
renderer.beginRendering(glDrawable.getWidth(), glDrawable.getHeight());
renderer.setColor(1.0f, 0.2f, 0.2f, 0.8f);
renderer.draw("アプリケーションテストプログラム", 10, glDrawable.getHeight() - (int)renderer.getBounds("アプリケーションテストプログラム").getHeight());
renderer.endRendering();