2015-06-10 4 views
9

Я пытаюсь создать приложение для фотосферы с Unity3D и использовать его вместе с картой Google.Unity-Photosphere Photo Viewer для Google Cardboard

Мне нужно загрузить различные панорамные фотографии и просмотреть их стереоскопически, используя картонные очки.

У меня возникли проблемы с использованием изображений панорамы и визуализации их в стереоскопическом виде в Unity.

Любые предложения будут с благодарностью получены.

+0

Ваш вопрос нуждается в улучшении. У вас не было никаких попыток, или попыток, которые не удались. Пожалуйста, ознакомьтесь с часто задаваемыми сайтами, чтобы понять, каковы наши стандарты, которые должны быть удовлетворены вопросами. –

+0

Новое для Stackoverflow и единство. Я бы прокомментировал, но мне не хватает репутации. Итак, я следил за тем, что вы записали, и мне сложно с трудом переключаться через различные skyboxes (материалы). Я перепутал с GazeInputModule, но я действительно не понимаю. То, что я хочу сделать, это: - посмотреть на стереоскопическую среду - если приостановлено более 1 или 2 секунд, появляется кнопка переключения среды (материал skybox). - используйте взгляд или триггер картона, чтобы перейти к следующему слайду. Извините, я так поздно прихожу к вечеринке. Надеюсь, вы можете мне помочь. Спасибо!! –

ответ

24

решение Простейшее, что я могу дать вам:

A. Установите ваш Unity Pro с Android Pro плагинов, настройка Cardboard SDK For Unity, установить Android инструменты для сборки и SDK.

Настройка B Skybox

  1. Получить stereoscopic panorama image (это может занять некоторое время, чтобы загрузить изображение, как это изображение высокого разрешения).

  2. В Unity импортировать изображение, изменить Texture Type в Cubemap. Выберите Отображение как Цилиндрический (Lat and Long).

  3. Создать Материал, изменить Shader к Skybox/Cubemap.

  4. Назначьте текстуру материалу.

  5. В Unity Pro 5 topbar выберите Window ->Ligthing, перетащите материал в собственности Skybox. На этом этапе вы можете сделать это программно. Объедините эти шаги с активами и игровыми объектами. Вуала, вы сделали стереоскопическое приложение для картографических карт VR! Вся установка просто вытащит ваши пять минут (за исключением настройки ваших инструментов: D).

Если вы знакомы с Unity, вы точно знаете, что делать с моими инструкциями. Если вы застряли где-нибудь на моих ступеньках, не стесняйтесь спрашивать меня. Счастливое кодирование :)

Дополнительные советы: Вы можете сделать файлы больших текстур в Asset Bundles, действовать как динамический контент, который хранится на сервере. Ваше приложение просто просто маленькое пустое приложение. Когда приложение запускает, запрашивает и загружает пакеты активов с сервера, затем манипулирует текстурами.:)

Super extra tip: Не забудьте создать пакеты активов под Настройки Android Build. Если нет, ваши текстуры будут повреждены, когда пакет будет загружен на телефоны Android.

+0

Это именно то, что мне было нужно, поскольку я также новичок в единстве. Не могли бы вы дать совет о том, как изменить материал/текстуру? При нажатии на экран я хочу изменить изображение, используемое в skybox. Я добавил новый игровой объект и обнаружил кран, но не знаю, как изменить изображение. В идеале я хочу загрузить это изображение, но я даже не могу понять, что мне нужно для скрипта, чтобы эти изменения произошли с ресурсами, которые я добавил в проект. –

+0

Хороший вопрос. Skybox принимает только материалы. Это может потребовать выполнения работы. То, что я делаю, я создал сборник (gameobject), материал для каждой текстуры. – felixwcf

+0

Выберите игровой объект, расположенный на верхней панели, Component-> Mesh-> MeshRenderer. Причина, по которой я это делал, заключается в том, что я хочу использовать свой компонент материалов для хранения материала, который держит мою текстуру, а позже я могу получить к нему доступ с помощью кодирования, что-то вроде gameObject.sharedMaterial [0]; Итак, один игровой объект и один материал для каждой текстуры. Теперь я узнал, что есть компонент Component-> Rendering-> Skybox, который, возможно, вы можете использовать свой материальный компонент для хранения вашего материала и напрямую назначать Skybox. – felixwcf

1

Сделайте сферу, напишите шейдер так, чтобы он не был отбракован, и это видно изнутри. Используйте панораму как текстуру на сфере. Поместите камеру VR камеры в центр сферы. Если вы хотите истинный стереозвук, создайте две такие сферы с отдельными текстурами для левого и правого глаза. Поместите сферы на поверхности камер в буровой установке. Используйте отбрасывание слоя, чтобы каждая камера только увидела правильную сферу.

+0

Вам не нужно делать все эти шаги, так как у вас есть SDK для карт Google для Unity. Просто установите свой skybox с помощью стереоскопических панорамных изображений и объедините их с картонными активами, и вы сможете достичь желаемого результата. Для установки собственных стереоскопических камер вам понадобятся записи для корректировки коррекции искажений, фиксации вращения гироскопа, черепицы и смещения левой и правой сфер ... и все уже обработано SDK. : D – felixwcf

+0

@Felix Ну, с помощью камеры VR, я имел в виду сборку CardboardMain, должен был быть явным. Не думал о skyboxes tho, хороший поэт! :) –