Рассмотрим игру с разрешением по умолчанию 800x600. Объекты с масками столкновений размещаются в игровом мире размером 800х600. Маски столкновения могут определять, когда мышь сталкивается с ними.
Теперь предположим, что мы масштабируем игру до 1024x768 (предположим, что мы масштабируем графику, просто визуализируя все в слой, а затем масштабируя весь слой сразу). У нас есть два варианта правильной работы коллизий с мышью в этом новом разрешении:
A.) Масштабируйте мир до 1024x768 и соответственно масштабируйте маску столкновения каждого объекта.
B.) «Нанесите на карту» положение мыши в исходном мире (800x600).
Под «картой» я подразумеваю просто масштабирование положения мыши в исходном мире 800x600. Так, например, если положение мыши на экране (1024, 768), то положение мыши в мире (800, 600).
Теперь , очевидно, вариант Б требует способа меньше вычислений и, вероятно , менее склонен к геометрическим ошибкам, но он также чувствует себя своим рода «хак» для меня, как есть непредвиденные последствия происходят с помощью этого метода , который будет ад , чтобы исправить позже.
Какой метод я должен использовать: A, B или что-то еще?