Я совершенно новичок в программировании для Android, выполняя Java для своих вычислительных уровней, но ничего сложного!
Я работаю над игрой, в которой объект падает на экран и должен быть отсортирован в соответствующий «ящик», когда он достигает дна.
У меня есть вид поверхности, работающий с потоком и т. Д., Использующий методы рисования на холсте, однако я не могу на всю жизнь понять, как я смогу заставить падающий объект достигать скорости, на которой он будет представлять проблему пользователю.
Запуск потока с изменением 1 в направлении y приводит к ползанию объекта по экрану. Большие изменения в Y приводят к скачкообразной графике.
Будет ли OpenGL иметь какое-то значение или есть другие методы canvas, которые я могу реализовать?
Надеюсь, что это имеет смысл!
Заранее спасибо
---- Thread ------
public void run()
{
Canvas canvas;
while(running)
{
canvas = null;
try{
canvas = this.surfaceholder.lockCanvas();
synchronized(surfaceholder)
{
gamepanel.Check();
this.gamepanel.onDraw(canvas);
}
}finally
{
if(canvas != null)
{
surfaceholder.unlockCanvasAndPost(canvas);
}
}
}
}
---- SurfaceView -------
protected void onDraw(Canvas canvas){
canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.gamebackground), 0, 0, null);
SortItOut.sortitout.Letter.draw(canvas);
}
----- Буква ----- (Каждый объект представляет собой отдельную букву)
public static void draw(Canvas canvas)
{
y += 1;
canvas.drawBitmap(LetterObject, x, y, null);
}
Это те методы, которые я считаю актуальными (метод Check - просто проверить, достиг ли объект нижней части экрана).