Заказ закрыт
Сетевая 3D-сцена (виртуальный зал) на Babylon.js с поддержкой VR и аватаров

s
Заказчик
Отзывы фрилансеров: + 2 - 0
Зарегистрирован на сайте 1 год и 6 месяцев
Бюджет: по договоренности
# 1. Цель проекта
Создать многопользовательскую 3D-среду (виртуальный зал) на Babylon.js, в которой пользователи могут совместно находиться в одной сцене, взаимодействовать, просматривать синхронизированное видео, использовать VR или обычный режим, выбирать аватары и отображать анимацию движений рук при использовании VR-контроллеров.
Система должна работать в браузере без установки клиента
# 2. Основной функционал
## 2.1. Общие требования
* Клиентская часть: Babylon.js.
* Сетевая часть: WebSocket или Colyseus (Node.js).
* Голосовая связь
* Поддержка WebXR для VR устройств.
* Визуализация сцены – от первого лица.
# 3. Функциональные модули
## 3.1. Сцена «Зал»
Зал представляет собой:
1. Пространство с местами для сидения
2. Зона «сцены» для выступлений.
3. Большой экран (видеопанель) для синхронного воспроизведения видео.
4. Легкое интерьерное освещение и базовые материалы.
Требования:
* 3D-модель можно взять готовую, бесплатную или использовать простую сцену из примитивов.
* Все сидения должны иметь фиксированные точки посадки.
* Легкий декор приветствуется (перила, ступени, стеновые панели), но без перегрузки полигонами.
## 3.2. Вход в сцену
Пользователь при подключении:
1. Выбирает аватар из списка.
2. Устанавливает имя/ник.
3. Подключается к комнате.
Сервер присваивает пользователю ID и отправляет текущее состояние комнаты (кто в ней, позиции игроков, состояние видео).
## 3.3. Аватары
* Формат: glTF / GLB.
* Единый гуманоидный скелет.
* Поддержка базовой анимации idle (ожидание).
* В режиме VR движения головы и рук привязаны к скелету.
* В обычном режиме – камера управляется мышью/клавиатурой, руки имеют стандартную анимацию.
Требуется:
* Реализация корректного управления костями аватара (голова, кисти).
* В VR – отображение положения контроллеров как позы рук.
## 3.4. VR-режим
Используется WebXR.
Функционал:
* Вход в WebXR посредством стандартного API Babylon.js.
* Позиция головы = камера XR.
* Трекинг левой/правой руки.
* Перенос движения контроллеров на кости аватара:
  * допускается простое позиционирование
  * желательно базовая IK-логика
## 3.5. Перемещение по сцене
Два режима: ### VR:
* Телепортация
* Опционально smooth locomotion
### Non-VR:
* WASD + мышь.
## 3.6. Синхронизация пользователей
Обязательная репликация:
* позиции
* вращения
* позы рук (в VR)
* индикатор сидит/стоит
Частота обновлений: 10-30 Гц.
На клиенте – интерполяция движения остальных игроков.
## 3.9. Серверная часть

На сервере должна быть реализована:

* Логика комнат.
* Поддержка до 20-30 одновременных пользователей.
* Авторитет хранения состояния:

  * кто сидит
  * позиции игроков
  * состояние видео
* WebSocket API или Colyseus (предпочтение обсуждается).
* Возможность перезапуска без потери доступности.

---

# 4. Технические требования

---

## 4.1. Производительность

* Средняя цель FPS ≥ 60 на ПК.
* В VR – 72/90 Hz, но допускается fallback до 60 FPS.
* Использовать инстансы или оптимизацию геометрии для сидений.
* До 30 игроков без заметных лагов (при хорошей сети).

---

## 4.2. Кросс-браузерность

* Chromium-браузеры (Chrome, Edge, Opera).
* Firefox – желательно, но не критично для VR.
* Поддержка мобильных устройств не обязательна.

---

## 4.3. Код

* JavaScript или TypeScript.
* Чистая архитектура: разделение клиент / сервер.
* Комментарии на английском или русском.
* GitHub репозиторий.

---

# 5. Этапы реализации (предпочтительный план)

## Этап 1 – MVP

1. Базовая сцена (зал)
2. Сетевое подключение + синхронизация позиций
3. Аватары и выбор аватара
4. Поддержка VR режима
5. Управление руками через контроллеры
6. Система сидений
7. Видеоэкран с синхронизацией

## Этап 2 – Улучшения

1. Оптимизация анимаций рук
2. Более реалистичный зал
3. Поддержка голосового чата (WebRTC)
4. UI меню (для выбора видео)
5. Система ролей (модератор, зритель и т.д.)
6. Запоминание настроек пользователя

---

# 6. Материалы, которые предоставит заказчик

* Список моделей аватаров или один примерный аватар.
* Пример видео или URL-источник.
* Референс дизайна зала (если есть).
* Текстуры и логотипы (опционально).
* Сцена зала в Unity

---

# 7. Ожидаемые результаты

* Полностью рабочий прототип виртуального зала.
* Исходные коды на GitHub.
* Сборка, которую можно запустить на хостинге (Node.js + статические файлы).
* Документация по запуску (README).
* Структура проекта, позволяющая дальнейшее расширение функционала.

---

# 8. Критерии качества

* Плавные перемещения и анимации.
* Отсутствие резких скачков аватаров (interpolation/lerp).
* Корректная синхронизация видео (расхождение ≤ 0.3 сек).
* Стабильная работа в VR браузере.
* Чистый и структурированный код.

---

# 9. Дополнительная информация

При отклике обязательно указать:

* Примеры WebGL/WebXR проектов (Babylon.js или Three.js).
* Опыт сетевой синхронизации в реальном времени.
* Опыт работы с WebRTC (если есть).
Разделы:
Опубликован:
16.11.2025 | 12:47 [поднят: 16.11.2025 | 12:47] [последние изменения: 16.11.2025 | 12:47]
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.

Посмотреть другие заказы

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

Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».