创建一个 Eclipse 游戏插件,第 2 部分: 构建和发射 BB 枪
2009-12-14 00:00:00 来源:WEB开发网取消二次曲面(一个曲线或平面,它在 Cartesian 座标中的公式属于第二阶)的分配,清除每个对象,然后清除父类。下面开始创建形状。
创建形状
OpenGL 全权负责创建形状。在这里,我们创建虫子、BB 枪、BB 弹和一些文本。
创建虫子
虫子是简单的球体,使用轮换的颜色。要创建形状,请在 GameScene 类的 dispose 方法后面添加以下静态类,如清单 9 所示。
清单 9. 创建虫子private static class Bug extends CompiledShape {
public static final float RADIUS = 1.7f;
public static int QUADRIC;
public float[] color;
public Bug(float[] color) {
this.color = color;
GL.glNewList(this.getListIndex(), GL.GL_COMPILE);
GL.glBegin(GL.GL_QUADS);
GL.glColor4fv(color);
bug();
GL.glEnd();
GL.glEndList();
}
public void bug(){
GL.glRotatef(-90.0f, 1.0f, 0.0f, 0.0f);
GLU.gluSphere(Bug.QUADRIC, RADIUS, 100, 100);
GL.glRotatef(90.0f, 1.0f, 0.0f, 0.0f);
}
...
}
这个类定义了一个半径,并保存从 initGL 方法传递过来的颜色。形状得到自己的对象列表,这些对象包含形状的所有结构(线条、球体等等)。虫子只由球体构成。请看一眼虫子,如图 3 所示。
更多精彩
赞助商链接