15 сент. 2014 г.

Работаем над протоколом "OpenXD TCP" (OXD_TCP) - v.0.0.05a

История
Очень давно, уже года два минимум, на пару с Рамилем обсуждаем тему интерактива в 5D. Каждый пытался что-то делать в этом направлении, но видимо делали не так или рынок был не готов. В общем сейчас все совсем по другому, и если производители железа жалуются на стагнацию и спад продаж, то я уверенно (впервые за долгое время), не только прогнозирую, но и пытаюсь создать условия в которых рынок обретет новый смысл бытия )))
Рамиль активно участвует в этом процессе. Понемногу подключаются и другие лица.

Пока речь идет о создании протокола, при помощи которого можно согласовать работу интерактивных приложений и разношерстные технические решения в области строения 5D платформ.

В идеале протокол должен стать стандартом для всех. Так же как AVI, MOV и пр... (грубо сравниваю)

И не важно какая у вас платформа. Если производитель платформы заитересовался OXD_TCP, то он встроил поддержку протокола, и теперь ваш зал крутит не только видео, но и интерактив.

Интерактив большая часть людей воспринимает как "игру", с использованием джойстиков и пр...
Ну... как бы да...
Но сейчас мы акцентируемся не на этом:

  1. Интерактив это тот же "мультик", но вы можете подключить к нему Oculos Rift
  2. Технологически производство интерактива сильно отличается от производства видео. Видео снято 1 раз и уже ничего изменить нельзя. Интерактив подразумевает несколько уровней, с разным освещением, с разной динамикой, с разными эффектами. Для маленьких детей один уровень, для отвязанных подростков другой, при этом цена 1 за всё.
  3. Сценарий может меняться случайным образом или в зависимости от реакции зрителя. Например кричат громче - снижаем обороты, молчат - пугаем до смерти )))
  4. Ну и да... можно и пострелять, если очень захочется, но сейчас мы думаем, что это не главное.
  5. Офигенские бонусы - одно и то же приложение работает с любым FPS (60 и более, если видео карта позволяет), а заодно может проецировать радиалку.

Цель протокола
Организовать двустороннюю передачу данных между приложением на базе игрового движка (ниже, условно называем как клиент) и приложением, которое управляет динамической платформой (далее условно называем как сервер).

Обмен данных осуществляется по средствам TCP протокола. Адрес и порт соединения должен быть настраиваемый.
По умолчанию используется IP 127.0.0.1 и порт 11000.
Протокол состоит из набора сообщений, которые могут распознаваться как команды, отчеты, поток данных.

Очень важная штука - зачем?
Разумеется всякий производитель платформ не готов делиться своим протоколом, да и мы не смогли бы подстроиться под все десятки производителей.
Поэтому была придумана очень простая штука: OXD_TCP, он един для всех, все работают с ним. Производители платформ с ним работают и производители контента с ним работают. В результате - все у всех поддерживается и никто не выдал своих заветных секретов )))

Приветствуем любознательных
Это версия протокола 0.0.05а

Это первая и довольно "сырая" версия, но основной вектор развития задан. Большая часть протокола уже реализована в тестовом приложении на базе UE4 и в скором времени будет так же опубликована.
В конечном итоге получится исчерпывающий SDK, в который входит документация (пока только на русском), тестовые приложения на базе UE4, Unity. Отладочный тестовый сервер, для тестирования протокола.
Не исключаю возможность поддержки CryEngine в SDK.

Однако, если вы опытны и прозорливы, то даже текстового описания протокола вам будет достаточно, чтобы встроить его в ЛЮБОЙ движок.