截止到上一节我们已经将一个具有实际意义的第一个实体创建出来了,同时其各种方法我们已经定义完成,里面包含了碰撞检测、获取坐标、获取图形点等相关工作,那么这一节我们将创建第一个能够显示在屏幕上的实体类player。首先说一下我们要创建的player的形状类似于三角形,具体如下图一所示。现在让我们来分析一下他的结构,其实这个图形很简单,以其中心为一点,然后创建一个半径为8的圆形,并标记其主要的几个点,各个点的弧度分别为radians、radians-∠a、radians+∠a,具体描绘如下图二所示,各个点创建完毕以后我们通过shaperender进行图形渲染,这样一个player飞机对象就绘制出来,具体代码及重点注释见如下:
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType;
import com.badlogic.gdx.math.MathUtils;
public class Player extends SpaceObject{
private boolean up,left,right;
//定义三个boolean变量用来描述上、左、右的控制
private float maxSpeed,acceleration,deceleration;
//定义三个变量分别描述最大速度、加速度、减速度
public Player(){
x=MyGdxGame.WIDTH/2;
y=MyGdxGame.HEIGHT/2;
//起始位置为屏幕的中心
maxSpeed=300;
acceleration=200;
deceleration=10;
//最大速度为300,加速的为200,减速度为10