Привет всем! Как то раз, я загорелся одной идеей: Что будет, если попробовать совместить создание видео и Виртуальную реальность, а именно, передавать движения, на виртуального персонажа и в дальнейшем иметь возможность записывать ролики. В итоге, вот уже третий месяц, длится разработка данного концепта. Я программист-самоучка, начинал все не имея какого-либо опыта в этой сфере, но благо, в интернете полно информации на все случаи жизни. Делается все на Unity, с использованием C#.

Вот небольшой шоукейс из того, что уже получилось:

image

Ваши движения передаются на виртуального персонажа.

Но проблема заключается в том, что Vive позволяет получить только 3 точки в пространстве, а именно: 1 голова, и 2 руки. Для решения, используется инверсная кинематика, которая достраивает движения остальных частей тела. Поэтому, сейчас аватар «волочиться» за этими тремя точками. На самом деле, небольшая плата, за ограниченное количество параметров:

image

Также, можно использовать любых 3d персонажей, имеющих гуманоидный скелет:

image

Итак, с захватом движения все понятно, давайте перейдем к творческой части. В итоге, у Вас в распоряжении оказывается виртуальная студия, с которой можно и нужно взаимодействовать. Можете расставлять камеры, свет, декорации, и готовиться к дальнейшим съемкам:

image

Взаимодействие с камерой:

image

Перемещение в виртуальном пространстве, реализовано с использованием джойстика на контроллере. Никаких телепортов!

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

Спасибо за внимание, прошу прощения за ошибки. Всем хорошего дня!

Upd: Вот так видит сам игрок, от первого лица:
image
Поделиться с друзьями
-->

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


  1. mannaro
    17.04.2017 19:13

    Это, конечно, очень круто!


    А вид в очках идет от головы аватара? Или так, как мы видим на гифках?


    1. Bobrodon
      17.04.2017 19:18

      Спасибо!
      Используется 2 уровня камер:
      Первый — это вид от первого лица, которые видно в очках;
      Второй — это вид с камер, которые расставлены в студии, их можно перемещать как угодно и переключаться между ними. От вида этих камер и идет трансляция на экран компьютера, чтобы можно было записывать )


  1. Fox_exe
    17.04.2017 22:03

    Можно увеличить уровень погружения, добавив LeapMotion (Благо стоит недорого).


    1. Bobrodon
      17.04.2017 22:41

      Спасибо за совет, обязательно ознакомлюсь с данным вариантом.


  1. ZaEzzz
    17.04.2017 22:08

    На первой гифке создается некоторое ощущение, что живой человек повторяет движения за своим аватаром.


    1. Bobrodon
      17.04.2017 22:40

      Согласен! Думаю этот легкий рассинхрон пришел во время монтажа, экран записывался с частотой 60 кадров, а камера снимала 29.


  1. perfect_genius
    18.04.2017 08:51

    Что вам мешает привязать ещё два контроллера к ногам?


    1. dDoom
      18.04.2017 08:58

      тогда уж vive tracker докупить, на авито уже продают их в Москве


      1. Bobrodon
        18.04.2017 12:01

        Совершенно верно, решение с vive tracker наиболее подходящее.


        1. Trottle
          18.04.2017 15:09

          Vive Tracker — путь для нищих духом.
          Распознавать изображение со встроенной камеры Vive, корректируя его данными трекинга 2 контроллеров и самого шлема, чтобы правильно отслеживать положение ног, когда их видишь через шлем, — вот путь настоящих джедаев!


          1. Fox_exe
            18.04.2017 18:06

            Leapmotion для ног? o_O


  1. DarWiM
    18.04.2017 12:00

    Я думаю это отличный проект! Надеюсь вы опубликуете еще хоть немного «вкусненького» :)


  1. ProLimit
    18.04.2017 13:44

    А почему не Microsoft Kinect? По моему идеальное совпадение цели и инструмента для ее достижения. Там вся кинематика уже под человека расчитана, идет захват не отдельных точек, где навесили сенсоры, а всего тела.


    1. Bobrodon
      18.04.2017 14:27

      Kinect имеет большие ограничения в свободе движений, а также маленькая игровая зона.