Увеличенная реальность – отображение GPS в OpenGL

Я пишу приложение Android AR и работаю над своим движком, но он содержит странное поведение, которое, похоже, не может быть исправлено. Я накладываю поверхность OpenGL на изображение камеры и размещаю 3D-объекты в представлении соответственно. Если я использую фиктивные данные для местоположения моих объектов AR, то есть LAT 10 LON 10 становится x = 10 y = 10 на поверхности OpenGL, тогда наложение отлично работает. Однако, если я использую прямые GPS-координаты для своих LAT и LON (например, LAT 12.34567890 LON 100.23456789), тогда все мои объекты либо перемещаются по их местоположению, либо вообще не появляются. Я знаю, что есть проблемы вокруг использования плавающих точек и рамки OpenGL, но я читал, и мне все еще не удается остановить это поведение. У кого еще возникла эта проблема? Должен ли я использовать коэффициент масштабирования между моим GPS и поверхностью OpenGL, если да, то какие значения хороши? Я попытался масштабировать LAT и LON на 1000000, чтобы устранить плавающие точки, но это не помогло, и производительность была ужасной.

Я настолько близок к тому, что это работаю, что любая помощь будет высоко оценена.

Выясните, в каком поле «1×1» или «0.5×0.5 градусов» ваши исходные координаты находятся, а затем вычитайте это поле, поэтому ваши координаты теперь относятся к «квадрату», а не всему миру.

Таким образом, LAT 12.34567890 LON 100.23456789 находится в коробке (12 100), с координатами (0.34567890, 0.23456789). Вы захотите пройти в (0.34567890, 0.23456789) в OpenGL.

Получение точности ~ 1 м от поплавка с диапазоном +/- 180,0 градусов в лучшем случае является отрывочным, и как только вы начинаете делать все операции с матрицей OpenGL, все начинает дрожать вокруг довольно плохо.

Intereting Posts
Руководство для приложений чата Android с использованием Parse и PubNub Как создать цикл обновления / рисования с помощью андроида opengl? Уровни регистрации Android Phonegap – пропустили 33 кадра! Приложение может слишком много работать над своей основной нитью Безопасен ли поток метода IntentService onStartCommand (..)? Какова концепция «Lost RAM», которая появляется в Memories от Dumpsys? Как вывести взгляд на все? Не удалось передать URL YouTube в VLC android В чем разница между «? Android:» и «@android:» в файле xml-файла для android? Библиотека Android – Публикация нескольких вариантов в локальный репозиторий Maven с использованием Gradle Android: проверьте, работает ли моя служба в фоновом режиме Как установить обе строки в ListView с помощью simple_list_item_2? Панель действий Android SearchView Значок Размер значка В вашем проекте содержатся ошибки (ошибки), пожалуйста, исправьте его перед запуском Sugar ORM Migration: создание новых таблиц / восстановление существующих таблиц