jogamp第一課顯示一個黑黑的窗口



在這之前請先到jogamp的網站上去下載相關的包

下載地址:http://jogamp.org/deployment/jogamp-current/archive/

joamp是三個項目的合併分別是joal,jocl,jogl

對應的是openal,opencl,opengl

Open Audio Library(開放音頻庫),Open Computing Language(開放計算語言),Open Graphics Library(開放圖形庫)

無論是開放這還是開放那,說到底是爲了一種標準.當一種標準一量建立並由不同平臺來實現時那說明這種標準得到了發展.標準[規範]也是一種力量呵呵

下載你能下到的所有包以後解開jogamp-all-platforms.7z的文件如果不能解包請下載請壓縮軟件7zip


package com.vsked.lesson1;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import java.awt.Toolkit;

import javax.media.opengl.GLCapabilities;
import javax.media.opengl.GLProfile;
import javax.media.opengl.awt.GLCanvas;
import javax.swing.JFrame;

import com.jogamp.opengl.util.FPSAnimator;

public class HelloWorld {

	public static void main(String[] args) {
		//設置窗口標題就是jframe的標題
		String windowTitle="this is window title";
		//窗口寬
		int windowWidth=500;
		//窗口高
		int windowHeight=500;
		//初始化硬件環境
		GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
		//初始化畫布並設置配置文件的版本注意這兒的GLProfile.是可以換成其他版本的
		GLCanvas glCanvas = new GLCanvas(new GLCapabilities(GLProfile.get(GLProfile.GL2)));
		//設置畫布寬高
		glCanvas.setSize( windowWidth, windowHeight );
		//設置出錯時重繪
    glCanvas.setIgnoreRepaint( true );
    //新建一個窗口併爲窗口設置標題(這個窗口默認是隱藏的)    
    JFrame frame = new JFrame( windowTitle );
        //設置JFrame窗口部局
        frame.getContentPane().setLayout( new BorderLayout() );
        //將畫布添加到窗口中間位置
        frame.getContentPane().add( glCanvas, BorderLayout.CENTER );
        //初始化動畫線程
        FPSAnimator animator = new FPSAnimator( glCanvas, 60 );
        //獲取當前屏幕尺寸
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        //設置窗口大小
        frame.setSize( frame.getContentPane().getPreferredSize() );
        //設置窗口初始化時座標
        frame.setLocation(( screenSize.width - frame.getWidth() ) / 2 , ( screenSize.height - frame.getHeight() ) / 2 );
        //設置窗口顯示
        frame.setVisible( true );
        //畫布獲取焦點
        glCanvas.requestFocus();
        //動畫線程開啓
        animator.start();

	}

}



由於代碼每一行都有註解所以這裏就不詳細介紹了附上能運行的工程下載地址:http://download.csdn.net/detail/chousheng/7164897



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章