Поведение OpenGL в движке на основе двумерных плиток: пиксельная «привязка» во время движения, ошибки аппроксимации?

Дайте мне посмотреть, смогу ли я задать этот вопрос разборчиво:

Я пишу движок на основе 2D тайлов в OpenGL ES с намерением сделать его похожим на олдскульный растровый движок. Все мои художественные ресурсы имеют собственное разрешение (то есть пиксельное искусство 1: 1) и отображаются на прямоугольные многоугольники, а мое представление OpenGL ортогонально и охватывает прямоугольник (0.0, 0.0) до (screen.width, screen.height ). Я сделал это в надежде, что каждый пиксель на дисплее будет соответствовать " по одной строке / столбцу пикселя за раз, а не плавно перемещаться с помощью интерполяции. (Это происходит, даже если движение очень медленное.) Из любопытства я попытался масштабировать свои плитки до 1,1x, и, как я ожидал, они начали выглядеть грязными, и поведение привязки прекратилось. Верно ли тогда, что OpenGL ведет себя по-разному в зависимости от того, может ли материал, который он отображает, быть идеально согласованным с дисплеем?

Где в спецификации я могу найти информацию об этих проблемах и как я могу гарантировать, что OpenGL продолжает вести себя так путь? Мне неудобно использовать значение по умолчанию, которое я не совсем понимаю, поскольку теоретически поведение может измениться в любой момент.

Спасибо!

5
задан genpfault 16 December 2010 в 13:59
поделиться