Я пытаюсь сделать свою первую игру в Android Studio, используя Java.Я просто хочу сделать что-то похожее на летучую птичку только в учебных целях.Логика игры работает, и теперь я хочу работать над графикой.Теперь только простые формы (прямоугольники из графики Android).
Я попытался поискать в Интернете.Я использую bitmap
для рисования фона, и это прекрасно работает, дело в том, что я не могу сделать движущийся прямоугольник такой же модели.Я попытался выполнить поиск в сети и обнаружил, что могу использовать bitmap
в качестве краски для прямоугольника, и это звучит великолепно, но это только приводит к сбою моего приложения во время выполнения.
//Bitmap initialization inside game class constructor
mainCharacterBody = BitmapFactory.decodeResource(getResources(), R.drawable.alien);
//Draw function (runs every frame)
@Override
public void draw(Canvas canvas){
super.draw(canvas);
canvas.drawBitmap(backGround,0,0,null);
mainCharacter.draw(canvas, mainCharacterBody);
for(Obstacle o : obstacleArrayList) {
o.draw(canvas);
}
}
//This is the main character drawing function
public void draw(Canvas canvas, Bitmap bodyPicture){
Paint paint = new Paint();
paint.setShader(new BitmapShader(bodyPicture, Shader.TileMode.REPEAT, Shader.TileMode.REPEAT));
canvas.drawRect(characterBody, paint);
}
Это просто сбой моегоприложение, но работает нормально, когда я использую только цвет в качестве краски