WEB开发网
开发学院软件开发Java 创建一个 Eclipse 游戏插件,第 2 部分: 构建和发... 阅读

创建一个 Eclipse 游戏插件,第 2 部分: 构建和发射 BB 枪

 2009-12-14 00:00:00 来源:WEB开发网   
核心提示: 构造函数设置 SceneGrip,并把所有的侦听器添加到 OpenGL 画布,创建一个 Eclipse 游戏插件,第 2 部分: 构建和发射 BB 枪(7),用 SceneGrip 作为侦听类,接下来是初始化 OpenGL 上下文,例如球体、平面、柱子,最后完成对 OpenGL 上下文的初始化,

构造函数设置 SceneGrip,并把所有的侦听器添加到 OpenGL 画布,用 SceneGrip 作为侦听类。

接下来是初始化 OpenGL 上下文。

初始化 OpenGL 参数

OpenGL 有许多可以配置的参数。我们在 initGL 方法中定义了一些参数,如清单 5 所示。


清单 5. 初始化 OpenGL 上下文
protected void initGL() { 
    super.initGL(); 
 
    GL.glLightfv(GL.GL_LIGHT1, 
           GL.GL_DIFFUSE, 
           new float[] {1.0f, 1.0f, 1.0f, 1.0f}); 
    GL.glLightfv(GL.GL_LIGHT1, 
           GL.GL_AMBIENT, 
           new float[] {0.5f, 0.5f, 0.5f, 1.0f}); 
    GL.glLightfv(GL.GL_LIGHT1, 
           GL.GL_POSITION, 
           new float[] {-50.f, 50.0f, 100.0f, 1.0f}); 
    GL.glEnable(GL.GL_LIGHT1); 
    GL.glEnable(GL.GL_LIGHTING); 
    GL.glEnable(GL.GL_COLOR_MATERIAL); 
    GL.glColorMaterial(GL.GL_FRONT, GL.GL_AMBIENT_AND_DIFFUSE); 
... 

我们要初始化 GL.GL_LIGHT1 的灯光和光源。首先,设置漫射灯和环境灯的颜色,然后设置漫射灯的位置。接下来,开启 lighting 和 light1。然后开启着色,最后一行指定环境灯和漫射灯可以影响着色对象的颜色。接下来,初始化将在本教程后面创建的定制对象。

初始化定制对象

还有几个特性需要开启,还有很多对象需要初始化。在这里,要创建二次曲面(quadric) 的句柄,二次曲面是复杂的形状,例如球体、平面、柱子。最后完成对 OpenGL 上下文的初始化,如清单 6 所示。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:创建 一个 Eclipse

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接