Один из наших выпускников программы «Менеджмент игровых интернет-проектов» работает в команде, которая реализует проекты в виртуальной реальности. Непосредственно сейчас они работают над виртуальным шоурумом.

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



Начало: Revit VS Unreal


Моделирование квартиры изначально мы выполнили в Revit, исходя из специфики проекта. Напрямую перенос в Unreal давал жуткую геометрию: “расклеенную” и с непонятной топологией. Мы попробовали несколько вариантов форматов, плагинов экспорта, чтобы получить пригодную модель в 3d max`е. Чуда не случилось: у перегородки простой прямоугольной формы было по 2-3 не склеенных вершины в точке, оверлапы полигонов, лишние рёбра, развернутые нормали; у объектов с криволинейной поверхностью была плотная сетка. Исправление геометрии иногда занимало столько времени, что проще было сделать заново. Поэтому мы переделали стеновой каркас и мебель в 3d max и использовали ревитовскую геометрию как референс.

Контент продакшн: Время VS деньги


Сразу стало понятно, что силами двух с половиной человек сделать наполнение объекта в сроки не выйдет. Мы обратились к стокам 3ddd, Turbosquid и к Unreal marketplace. В итоге мы получали модели с непригодными UV-развертками, с большим количеством треугольников и с бестолковой топологией, хотя в описании маркетов сказано, что модели гейм-реди и без оверлапов. Поэтому пришлось править и упрощать топологию, заново делать развертки и дорабатывать текстуры.

В середине проекта обратились в Unreal marketplace, но и там не все гладко: некоторые модели чересчур лоу-поли, хотя на превью этого не было видно; сложные материалы там, где этого не нужно, неправильные UV-развертки, несколько каналов UV.

В какой-то момент lightmass отказался просчитывать лайтмапы без объяснения отказа. Мы начали проверку пропсов, их в левеле оказалось 500 штук. Сначала пошли методом исключения: сделали копию левела, удаляли пропсы и пробовали отсылать на рендер. Перебрав половину пропсов, нашелся неправильный, это было полотенце в туалете; вернувшись в уровень, исправили пропс, но лайтмасс по-прежнему отказывался считать. Оказалось, что 80% пропсов из Unreal marketplace имеют неправильную развертку и несколько UV- каналов. После исправления пропсов проблема исчезла. Чтобы избежать подобного в будущем, написали блюпринт для проверки пропсов на наличие багов с UV.

Код: Blueprint VS C++


90% работы реализовано блюпринтами, без знания языков программирования, имея только общие основы. Главная задача — реализовать взаимодействие с дверями, дверцами шкафов, ящиками так, чтобы решение можно было просто перенести на разные конфигурации дверей. Конфигураций получилось 5: открывание справа-налево, слева-направо, сверху-вниз, от себя, на себя.

От классического варианта открытия «подошел, нажал „Е“, дверь открылась» — отказались сразу, решили в VR сделать открывание рукой посредством контроллера.



На первый взгляд — простая задача, но приходилось учитывать коллизии с другими объектами, смещение оси поворота при открывании, сторону открытия, также сделать открывание без “прилипания” двери к контроллеру при нажатии триггера.



В процессе работы мы сделали еще боулинг и скример в шкафу, для отвлечения от рассматривания интерьеров.

Оптимизация: Картинка VS фпс


Оптимизация — довольно болезненный процесс. Стремление к реалистичной картинке, выработанное годами в кино, вызывает боль, когда приходится в угоду fps снижать качество теней SSAO, размер карт отражений, упрощать шейдеры, размер текстур и.т.д.

Работа начиналась в версии 4.13, тогда еще не было форвард-шейдинга. С появлением в 4.14 давал 20-30 fps прироста, но лишал SSAO, HDR Lighting, что в свою очередь резко меняло картину и вело к переработке проекта. На данный момент мы решили этого не делать, оставили для следующего проекта.

Плейтесты: UX VS Users


Плейтесты проходили на разных возрастных и гендерных категориях. В большинстве, люди без VR опыта, быстро осваивались и непременно пытались открыть и пощупать предметы. Мы специально не делали подсветку активных объектов для большей реалистичности.

Выяснилось, что неопытный пользователь путает 2 кнопки: телепорт и действие. На обучающем уровне мы первым делом показывали, как перемещаться в пространстве, а затем — как взаимодействовать с предметами, но пользователи продолжали нажимать на телепорт и для перемещения в точку, и для открывания дверей. Мы сделали подсказки для кнопок, но ситуация не изменилась. Поэтому перенесли действия и телепортацию на триггер, сделали однокнопочный вариант управления и оставили только один контроллер.

Еще мы заметили, что пользователи не сразу понимают, как пользоваться “удочкой”: они вытягивали руки параллельно полу, нажимали на телепорт, «улетали» в другой конец уровня и терялись. Поэтому мы поменяли “удочку” на вариант: при нажатии на триггер, на полу появляется иконка перемещения, поворотом головы, условно — взглядом, пользователь выбирает точку, в которую он хочет переместиться, затем отпускает триггер и перемещается в нужную точку.

Про ощущения в VR: некоторые пользователи пытаются открыть дверь, стоя от нее в метре. Нам приходится объяснять, что дверь открывается, как в жизни: надо к ней подойти, взяться за ручку и потянуть. Также непременно все перешагивают пороги и боятся пройти сквозь стену. Сами в процессе разработки неоднократно ловили себя на желании опереться на виртуальный диван или стол.

Управление извне: Unreal.js VS Socket.io


Чтобы дать менеджеру возможность “вести” процесс продаж и помогать людям, не привыкшим к новому миру, мы разработали веб-приложение, позволяющее делать акцент на дома и объекты инфраструктуры района, перемещать пользователя между уровнями и по точкам внутри уровня, а также подобрать квартиру по интересующим параметрам и динамически визуализировать подходящие предложения.

Для того, чтобы минимизировать задержки в общении с Unreal хотелось использовать протокол WebSocket. Первым попался на глаза плагин Unreal.js, позволяющий писать на Javascript и содержащий реализацию WebSocketServer’а. Сделали прототип для версии 4.13 с этим плагином, все отлично заработало. Вышел Unreal 4.14, через несколько дней обновился плагин, в списке изменений два пункта:

  1. совместим с 4.14 (!!!)
  2. «выпилен» WebSocketServer (???)

Видимо, только нам нравилась эта реализация. Стали искать замену, нашли socketio-client-ue4, от небезызвестного в сообществе getnamo. Все бы хорошо, но на тот момент поддерживалась только версия 4.13 и принимать в Blueprint можно было только строки. Начали писать библиотеку для парсинга JSON, но вскоре Getnamo снова очень порадовал, сделав эту работу за нас в новом релизе, за что ему огромное спасибо!

В итоге, получилось лучше, чем хотелось. Написали отдельный сервер, синхронизирующий все запущенные Unreal- и веб-приложения в реальном времени, что, например, позволяет при бронировании определенной квартиры одним пользователем сразу же исключить ее из выборки для всех остальных.

Сделанный демо-проект оправдал свои ожидания и не оставил равнодушных, как среди неопытных пользователей, так и профессионалов. Многие даже сетовали на то, что не было возможности воспользоваться подобным сервисом, когда сами приобретали квартиры. Единственное, что пока не хватает для релиза — это наличия смелого и амбициозного застройщика!

Вот как все это дело выглядит:



Можете сами попробовать вживую и пообщаться с командой разработчиков. Виртуальный шоурум будет показан на Лекционном дне в ВШБИ 11 февраля. Записаться здесь.
Поделиться с друзьями
-->

Комментарии (35)


  1. Feelnside
    09.02.2017 20:22

    Очень крутая задумка как и собственно её реализация. Уважающие себя застройщики ну просто обязаны обратить взор на проект ваших выпускников. Единственное, видимо нужно предпринять некие усилия в области маркетинга, если до сих пор не смогли найти «смелого и амбициозного застройщика».


  1. n1tra
    09.02.2017 20:30
    +3

    Такая клевая технология, а используется для демонстрации таких убогих клеток :(


    1. Ch_Alexandr
      09.02.2017 22:27

      Ну на самом деле нет разницы, в данном случае. Большая или маленькая квартира. Хоть замок)) Перед покупкой как раз можно оценить размеры в «реальности» )))


      1. n1tra
        10.02.2017 03:24

        Может поэтому и не находятся застройщики желающее внедрить такое? Получается прямо-таки антиреклама.


        1. Ch_Alexandr
          10.02.2017 11:14

          Анти реклама это -когда клиент приезжает на грязную, пыльную стройку и видит большую дыру в земле )))


          1. n1tra
            10.02.2017 12:03

            То что вы описываете, это не анти-реклама, это — реальность.
            Я лишь хочу сказать что выглядит очень круто, пока не попадешь в эту пресловутую «Студию» в 20м2 с мебелью из икеи и не начнешь думать о том, хотел бы ты здесь жить.
            P.S. В VR очках не возникает приступа клаустрофобии в этих «клетках»?
            Насколько я понимаю, это все выглядит как «рыбий глаз»? чтобы хоть что-то можно было разглядеть в квартире? :)


            1. Ch_Alexandr
              10.02.2017 12:21

              Нет, клаустрофобии не возникает, если конечно в реальности её нету. «Рыбьего глаза» нету. Можешь завтра прийти и посмотреть. ))


              1. n1tra
                11.02.2017 22:21

                Ребят, все очень круто! Успехов вам :)


  1. Dywar
    09.02.2017 20:36
    +1

    Круто.
    Популярным будут не нагруженные деталями сборки под мобилки, которые запустятся на доступных устройствах VR.
    Приложение бесплатное в PlayMarket и IOS Store, в рекламе ссылку на приложение.
    Там карта, размеры, цены, телефоны, экскурсия и на ПК аналог но без VR.
    И попрет.

    Да хотя бы на ПК сделали, как гугл мапс, уже плюс, но и этого нету.


    1. VDG
      09.02.2017 21:37

      Не попрёт. У меня аналогичный, но не такой тяжёлый/загромождённый проект с 2005-го. Если коротко, то технологии и мощности сейчас позволяют демонстрировать 3D-планировки только на десктопах. Там хороший инет для тяжёлых текстур, и мощные видеокарты для шейдеров. Но этот сегмент стремительно схлопывается, а мобильный хоть и растёт быстро, но отстаёт по мощностям аж на 10 лет. И самое главное — ни одному застройщику это не надо, они привыкли закупаться в Директе по 5000р за переход и их всё устраивает.


      1. Dywar
        09.02.2017 22:02

        На массовый рынок рановато, но вот элитное жилье возможно и попрет, удивить клиента, Европа, США.
        VR по ЖЦТ 1-2 фаза только.


        1. VDG
          13.02.2017 23:44

          У элитного жилья (начиная с десятков млн. р) совсем другой уровень требований (были с ними разговоры). Качество рендера у них как в каталоге Икеи, то есть неотличимо от реальности. Продемонстрированный уровень в этом шоуруме всё же не дотягивает до их требований. Да и не может пока физически дотянуть.


          1. Ch_Alexandr
            14.02.2017 12:11

            Интересно. а можно ссылку на Икею? То-что я видел, нельзя сказать, что неотличимо от реальности.


            1. VDG
              19.02.2017 01:15

              Весь их каталог — это рендер. К примеру, для меня это было неожиданно узнать.


              1. Ch_Alexandr
                19.02.2017 11:27

                Ну, так это картинки. А VR причем?


    1. Ch_Alexandr
      09.02.2017 22:26

      Одна из проблем в том, что — далеко не все могут взглянуть на план, размеры и даже 3d-визы и представить размер квартиры. 360 панорамы тоже не дают полного представления о масштабе квартиры. Пока нету дешевых и мощных решений для мобильного VR + трекинга позиции. По этому, на данный момент и был выбран Vive. Мы ориентированны на крупных застройщиков. И предоставляем инструмент для продаж.


    1. dmitryfaleev
      10.02.2017 14:50

      Planoplan GO!


      1. Ch_Alexandr
        10.02.2017 14:54

        А ходить можно?


        1. dmitryfaleev
          10.02.2017 15:01

          при использовании джойстика, думаю, да


        1. netgoblin
          10.02.2017 16:55

          Разве это не отрендеренные 360° панорамы?


          1. dmitryfaleev
            12.02.2017 01:23

            это модели — там и конструктор на сайте есть — мебель расставить и прочее


  1. dmitrykabanov
    09.02.2017 21:37

    Лично пробовал демку. Отлично все сделано. Особенно порадовало взаимодействие с объектами. Пробовал выходить на балкон — хочешь не хочешь, а ногу поднимаешь, чтобы перешагнуть через порожек.


  1. ilya216
    09.02.2017 22:26

    Было бы удобно так квартиры покупать вообще: выбрал местечко, посмотрел вид из окна, посмотрел варианты мебели, цены. За виртуальной реальностью будущее.


    1. Ch_Alexandr
      09.02.2017 22:37

      Именно так и сделали. Кроме вариантов с подбором мебели. 99,9% застройщиков продают квартиры без мебели и 99% без отделки вообще. Интерактивная расстановка мебели, с сохранением качеством картинки, требуют больших мощностей. Что сейчас пока трудно реализуемо.


    1. n1tra
      10.02.2017 12:05

      А потом строители из таджикистана помогут вам сделать демотиватор «ожидание/реальность» за ваши ипотечные деньги :)


  1. vdeneko
    10.02.2017 15:13

    Что насчет сравнения с GeoCV?

    GeoCV на Youtube


  1. netgoblin
    10.02.2017 16:53

    Мы с товарищем сделали подобный проект ещё на UDK (Unreal Engine 3), без VR, конечно же. Делали с целью предложить реализатору элитной мебели (на тот момент мы делали для них рендеры помещений с мебелью), ну и самим было интересно. На выходе был инсталлятор, при запуске включалась сцена — комната, по ней можно было перемещаться, крутить камерой и открывать ящики. Заказчику реализация понравилась, но увы на разработку уходило много времени и, соответственно, денег. Да и требования к железу тоже были соответствующие. Дальше дело не пошло.


  1. Ch_Alexandr
    12.02.2017 00:17

    Кто сегодня был на лекционном дне, видел или на себе пробовал. Отпишетесь, было бы интересно.


  1. Pislegin
    13.02.2017 14:40

    Позволю себе добавить разнообразия затронутой вами теме. Делюсь ссылочкой на статью о том, как уже сейчас можно делать бизнес на автоматах виртуальной реальностью http://delozadelo.ru/post/kak-ya-otkryl-attrakcion-virtualnoi-realnosti-oculus-rift-i-chto-iz-etogo-poluchilos-666.html

    П.с. собираюсь попробовать демку.


  1. bH1tman
    13.02.2017 14:40

    Собственно, чем Ваше решение отличается от решения компании Archilogic? Или вы просто вы решили сделать аналог их технологий, но как обычно это бывает в России с маржей в 1000%?


    1. Ch_Alexandr
      13.02.2017 15:13

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


  1. Salihoff
    13.02.2017 14:40

    Хороший проект. Я сейчас тоже делаю такую штуку для одного застройщика. А почему выбрали Unreal а не Unity?


    1. Ch_Alexandr
      13.02.2017 15:29

      У UE4 из коробки картинка лучше. Да и напильников меньше надо.


  1. freekadelka
    13.02.2017 14:40

    Мы такое уже год как юзаем


  1. Billi_Bob
    13.02.2017 14:40

    Я думаю жулики освоят технологию быстрей чем застройщики)) И продавать воздух на фоне котлована будет ещё проще.....)