Я практикую простое программирование 2D-игр и придумал теорию, согласно которой во время анимации (фактическое изменение положения изображения лучше всего рассчитывается с помощью чисел с плавающей запятой). У меня такое ощущение, что если вы перемещаете изображение с помощью int, анимация будет не такой гладкой.
В Java кажется, что вы не можете нарисовать изображение с числами с плавающей запятой, чтобы задать положение изображения.Но, очевидно, когда вы изначально объявляете свои x и y , вы можете объявить их как Double или Float, и когда дело доходит до рисования изображения, вы должны преобразовать их в цел. Как я нахожу ЗДЕСЬ :
/**
* Draw this entity to the graphics context provided
*
* @param g The graphics context on which to draw
*/
public void draw(Graphics g) {
sprite.draw(g,(int) x,(int) y);
}
Мой вопрос о том, как Java обрабатывает преобразование? Если код генерирует эти двойники в последнюю минуту, почему они вообще были двойниками? Скрывает ли Java числа после десятичной дроби?
Я знаю, что в C и C ++ числа после десятичной дроби обрезаются, и вы видите только то, что перед ней. Как Java обрабатывает это преобразование?