Понедельник, 25 Ноября 2024, 22:08

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Движок threejs
al_mtДата: Суббота, 15 Марта 2014, 00:21 | Сообщение # 1
постоянный участник
Сейчас нет на сайте
Нашёл http://threejs.org
Первое впечатление - положительное. Простой, шустрый, на ява-скрипте.
Масса примеров, у мну даже получилось нарисовать кубик с маппингом smile
Кто-нибудь пользуется? А то как-то не густо с русскоязычными сообществами.
NyashkaДата: Вторник, 21 Апреля 2015, 15:30 | Сообщение # 2
уже был
Сейчас нет на сайте
Цитата al_mt ()
Кто-нибудь пользуется?
Пишу сейчас на нем игру. А также создал 3D сайт.
Самое замечательное в это движке - то, что он не требует установки у пользователя.

Добавлено (21 апреля 2015, 15:30)
---------------------------------------------
Возник такой вопрос.

Как правильно сделать панорамные "задники" в игре? Создаю 4 плоскости с 4 сторон с геометрией PlaneGeometry с 4 текстурами. Материалы:THREE.MeshLambertMaterial({map: skyTexture1, color:0xffffff, ambient:0xffffff, specular:0xffffff, transparent: false}), затем skyTexture2, 3 и 4.

Проблема в том, что на стыках плоскостей видно, что на каждой плоскости цвет неба разный, хотя в графическом редакторе был задан одинаковый. Отключение освещения (Directional Light) не помогло, все равно заметна граница. Видел пример "three.js skybox", но там используется куб с пестрой текстурой, на которой, как я понял, просто не видны эти переходы.

Можно сделать задники сферой, но в игре используется квадратная карта, поэтому сферу придется делать слишком большой и текстура для нее будет тоже огромная.

Есть ли способ заставить эти плоскости отображаться на сцене одинаково, то есть, в их оригинальных цветах и яркости?

Проблема временно решена за счет использования общего фонового цвета сцены и прозрачности "задников" (png) в области неба. Для того, чтобы из-за особенностей webGL blending "задники" не выскакивали вперед других объектов, им присвоено более "глубокое" значение рендеринга: plane.renderDepth=1. Но это работает на билде three.js r69. На последующих - другая система задания порядка рендеринга.
Цитата
For r70 is renderDept function removed.

На последнем, r71, еще не экспериментировал.

Однако, решение в виде независимости "задников" от общего освещения сцены по-прежнему было бы интереснее.

Скрины до и после:





Сообщение отредактировал Nyashka - Вторник, 21 Апреля 2015, 15:34
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг