Моя игра предназначена только для ландшафта (разрешение экрана 1024*768 - разрешение iPad).
Моя игровая сцена правильно отображается на всех платформах, поддерживаемых PlayN (Android, html и т. д.). Проблема только с iOS.
Я подготовил все ресурсы для разрешения экрана iPad, настроил файл info.plist, зарегистрировал платформу с помощью IOSPlatform.register(app, IOSPlatform.SupportedOrients.LANDSCAPES);
Когда я запускаю свое приложение, все, что касается ориентации устройства, правильно, но игровая сцена не полностью визуализируется. Рендерится для разрешения 768*768 (видны не все объекты сцены - видны только объекты, принадлежащие прямоугольнику 768*768) и оставшееся пространство экрана черное.
Я исследовал проблему следующим образом:
- Применено преобразование масштаба к rootLayer (чтобы обеспечить визуализацию всей сцены).
PlayN.graphics().rootLayer().setScale(0.75f, 0.75f);
Результат - игровая сцена помещается в прямоугольник 768*768 и я вижу все объекты игровой сцены. - Применено преобразование перевода к rootLayer (чтобы убедиться, что PlayN не отображает сцену за пределами прямоугольника 768 * 768).
PlayN.graphics ().rootLayer().setTranslation(1024.0f - 768.0f, 0.0f);
Результат - игровая сцена переведена, но объекты, не принадлежащие прямоугольнику экрана 768*768, не видны.
Я предполагаю, что PlayN подготавливает свой контекст рисования для разрешения экрана 768*1024 (разрешение ориентации iPad по умолчанию). При рендеринге экрана объекты, расположенные за пределами прямоугольника 768*1024, обрезаются (не рендерятся).
Любая помощь или идеи, которые могут вызвать такое странное поведение, будут очень признательны.
Спасибо!