#c# #android #unity3d #augmented-reality #arcore
#c# #Android #unity-игровой движок #дополненная реальность #arcore
Вопрос:
Я использую ARCore в Unity. У меня есть холст в пространстве камеры и текстовый компонент пользовательского интерфейса в качестве дочернего элемента canvas, который будет использоваться для отображения информации пользователю во время использования приложения. Когда мое приложение загружается впервые, я вижу текст на своем мобильном телефоне (на экранах начальной загрузки написано «Unity», а экран черный). Как только загружается приложение и отображается экран камеры, текстовый компонент пользовательского интерфейса по большей части исчезает. Я все еще вижу серую линию там, где должна быть верхняя часть текста. Я не делаю ничего программного во время выполнения для сетки или чего-либо еще. Я обновляю фактическое текстовое значение. Я не вижу никаких сбоев или ошибок, зарегистрированных с помощью adb. Есть ли что-то, чего мне не хватает при использовании пользовательского интерфейса и ARCore?
Ответ №1:
Нажмите Play, переключитесь в режим просмотра сцены, выберите свой текстовый пользовательский интерфейс в иерархии, в верхнем меню откройте GameObject-> Выровнять вид по выбранному.
Если вы видите свой текстовый пользовательский интерфейс в сцене, значит, вы знаете, что он все еще там, просто нужно выяснить, почему он не отображается. Я предполагаю, что это может быть проблема с масштабированием, когда текстовый пользовательский интерфейс масштабируется в режиме AR.
Начните с компонента Canvas Scaler (прикрепленного к вашему canvas) и установите для «Режима масштабирования пользовательского интерфейса» значение «Масштабировать в соответствии с размером экрана». Затем в вашем компоненте Canvas (прикрепленном к вашему Canvas) измените «Режим рендеринга» на «Наложение пространства экрана».
Комментарии:
1. Итак, можно ли предложить уменьшить масштаб областей пользовательского интерфейса (холст / панель / текст)? Я попробую ваше предложение, когда вернусь домой.
2. Да, есть много способов сделать это. Я бы начал с компонента Canvas Scaler (прикрепленного к вашему canvas) и установил для «Режима масштабирования пользовательского интерфейса» значение «Масштабировать в соответствии с размером экрана».
3. Бьюсь об заклад, вы правы в этом, и именно поэтому я все еще вижу маленькую серую линию, когда приложение запущено, это действительно мой текст, но очень маленький. Я попробую это через несколько часов и отмечу этот вопрос как ответ, который вы дали, если это сработает. Спасибо!
4. К сожалению, это не решило мою проблему. Я добавил скаляр Canvas в свой компонент canvas и установил режим масштабирования пользовательского интерфейса в соответствии с размером экрана. Я получаю тот же эффект, что и раньше, я вижу текст при первой загрузке приложения, но при запуске камеры остается только небольшая серая полоса.
5. 1) Холст-> Режим рендеринга-> Наложение экранного пространства. 2) Попробуйте увеличить текстовый интерфейс и текстовый шрифт примерно в 100 раз для тестирования 3) Проверьте масштаб элемента пользовательского интерфейса во время воспроизведения