Используйте Mapbox в приложении Unity без зависания Unity & editor при запуске - PullRequest
0 голосов
/ 11 октября 2018

У меня есть приложение Unity, которое более или менее объединяет пример Mapbox "ZoomableMap" из SDK .box Unity Mapbox и мой собственный код (C #, прикрепленный к пустому GameObject).

Когда япри нажатии «play» в редакторе Unity мой код занимает около 2 секунд для инициализации, когда Mapbox отключен (отключив все, что связано с Mapbox, сняв флажок на панели «Инспектор»).

Если я включаю объекты Mapbox (с включением или без включения моего собственного), редактор Unity зависает примерно на 30-70 секунд, прежде чем карта появляется, и все работает нормально (обычно около 15-80fps).Примерно в 5-10% случаев во время инициализации происходит переход в смертельную спираль, увеличение масштаба использования памяти на 95% (у меня есть 16 ГБ) и просто сбой (пользовательский интерфейс Unity Editor по-прежнему полностью не отвечает), пока не произойдет одно из двух:Unity Editor аварийно завершает работу с ошибкой, говорящей о том, что видеокарте не хватает памяти (и бесполезной ссылке на страницу на nvidia, на которой в основном ничего не сказано, кроме: «Если у вас заканчивается память, ваша программа будет аварийно завершена».)Я устану ждать неизбежного сбоя и убью Unity с помощью диспетчера задач Windows через 2-3 минуты.

Есть ли способ сделать инициализацию Mapbox более изящной и многопоточной / дружественной к фону, чтобы МОЙ код мог запускаться и выполняться сразу же, пока Mapbox вежливо выполняет свою инициализацию и последующие обновления в фоновом режиме (без зависания илиПользовательский интерфейс Unity Editor или выполнение моей собственной программы)?

Details: 
    Unity 2018.1.6f1-MLTP7 (from the MagicLeap SDK)
    mapbox-unity-sdk_v1.4.5.unitypackage

Примечание: я могу опубликовать дополнительные подробности, я просто не совсем уверен, как описать то, что состоит в основном из стандартных элементов библиотеки с сотнями настроек впанель Инспектора ... в Unity есть скрытая где-то функция "выгрузить открытый текст (или дружественную к Markdown) представления всей иерархии Инспектора объекта и его текущих значений для удобной публикации в StackOverflow?

Примечание 2:Это, очевидно, известная проблема с Mapbox-Unity (https://github.com/mapbox/mapbox-unity-sdk/issues/262). Попытка отследить более новую версию, которая включает в себя изменения, чтобы улучшить ее многопоточность (кто-то представил исправление почти ровно год назад, чтобы исправить это, но исправление появляетсятем временем исчезнуть).

Примечание 3: карта, по общему признанию, огромна ... в основном, вся северная Флорида, Джорджия, Алабама и Южная Каролина, если смотреть с северной точки обзора~ 50 км над Мексиканским заливом под углом 45 градусов.По общему признанию, это не обычный случай использования (даже для моей собственной программы), но это случай использования, который далеко не постижим, и моя программа должна быть хотя бы в некоторой степени способной к изящной обработке.

...