同樣的是 3個回調
public EngineOptions onCreateEngineOptions()
protected void onCreateResources()
protected Scene onCreateScene()
只是對應的Scene有變化, 前面的和1一樣
Entity 作爲一個對象,可以設置attachChild子對象
準備畫2個正方形,開始座標爲(0,0)左上角
一個的左上角是(0,0)邊長爲180,
一個是 (200,100)邊長爲380
寫一個Scene,
private Scene getEntityLeftTop(){
final Scene scene = new Scene();
scene.setBackground(new Background(0.09804f, 0.6274f, 0.8784f));
final VertexBufferObjectManager vertexBufferObjectManager = this.getVertexBufferObjectManager();
//對象的起始點(左上角)
final Entity rectangleGroup = new Entity(0, 0);
rectangleGroup.setColor(40,10,10);
Rectangle rect1 = new Rectangle(0, 0, 180, 180, vertexBufferObjectManager);
rect1.setColor(10,10,10);
Rectangle rect2 = new Rectangle(200, 100, 380, 380, vertexBufferObjectManager);
rect2.setColor(10,50,10);
rectangleGroup.attachChild(rect2);
rectangleGroup.attachChild(rect1);
scene.attachChild(rectangleGroup);
return scene;
}
在protected Scene onCreateScene()中 return這個Scene,就可以得到2個正方形了
同理, 如果設置Entity在正中間的話, 就從 中間開始畫了
其中,有一個Rectangle起點是 負值, 可以認爲是負的座標
private Scene getEntityCenter(){
final Scene scene = new Scene();
scene.setBackground(new Background(0.09804f, 0.6274f, 0.8784f));
final VertexBufferObjectManager vertexBufferObjectManager = this.getVertexBufferObjectManager();
//對象的起始點(左上角)
final Entity rectangleGroup = new Entity(CAMERA_WIDTH / 2, CAMERA_HEIGHT / 2);
rectangleGroup.setColor(40,10,10);
Rectangle rect1 = new Rectangle(0, 0, 180, 180, vertexBufferObjectManager);
rect1.setColor(10,10,10);
Rectangle rect2 = new Rectangle(-180, -100, 380, 380, vertexBufferObjectManager);
rect2.setColor(10,50,10);
rectangleGroup.attachChild(rect2);
rectangleGroup.attachChild(rect1);
scene.attachChild(rectangleGroup);
return scene;
}