Перейти к содержимому

Игра в 3D под браузер


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 39

#1 Отправлено 06 Март 2015 - 04:34 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Добрый день, уважаемые игроки.

Начались работы по созданию второй части игры и исключительно в 3D. Используется технология Stage3d, встроенная в стандартный флэш плэер от Adobe, посему не требующая никакого специального программного обеспечения на вашем компьютере, чтобы войти в мир игры. Игра без проблем откроется в вашем стандартном браузере. По мере продвижения релиза я буду публиковать здесь скриншоты, отражающие внесённые дополнения.

Свежий крайний релиз проекта всегда можно посмотреть здесь:
dragons-world.ru/Stage3dEngine.html

Итак, пилотный релиз. Сделано:
- сделан достойный скайбокс;
- реализован ландшафт;
- отрисовывается через три текстуры (скалы, песок, трава) с плавными переходами;
- затенение по карте нормалей;
- сделана ИНТЕРАКТИВНАЯ вода;
- реализовано волнообразование, рефлекция (с Френелем), рефракция;
- мануальные настройки света вынесены в меню вплоть до конца альфа релиза.

Прикрепленные изображения

  • Stage3dEngine01.jpg


#2 Отправлено 06 Март 2015 - 04:41 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Если вы обратили внимание, в проекте интерактивная вода, реагирующая на перемещение вашего персонажа. То есть можно в прямом смысле бегать и рассекать волны своим тельцем. Отмечу, что ни в одной современной игре на топовых движках нет такой воды. Почему? Потому что обсчёт волнообразования сильно пожирает ресурсы вашего CPU. Но мы тоже не палкой сделанные и имеем достаточный опыт, чтобы обмануть глаз.

Сделано:
- реализовано дополнительное  мелко-детальное псевдо волнообразование (отражение и преломление) по карте нормалей в дополнение к настоящему физичному волнообразованию;
- это позволяет иметь визуальное качество воды на отличном уровне при самых LOW настройках по размеру обсчитываемой сетки. Это позволяет создавать картинку достойного содержания без особых требований к мощности компьютера.

Прикрепленные изображения

  • Stage3dEngine02.jpg


#3 Отправлено 06 Март 2015 - 04:45 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Долгие несколько месяцев упираясь во всевозможные ограничения релизов всевозможных библиотек низкого уровня, наконец удалось реализовать прогрузку АНИМИРОВАННОГО героя. С чем вас и поздравляю.

Сделано:
- подгрузка и отрисовка меша модели;
- подгрузка и реализация анимаций героя по костям;
- аниматор адаптивный с просчётом плавного перехода между соседними анимациями.

Прикрепленные изображения

  • Stage3dEngine03.jpg
  • Stage3dEngine04.jpg


#4 Отправлено 06 Март 2015 - 04:51 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Сделано:
- view контроллер переписан из "от первого лица", как в шутерах в "от третьего лица", как в MMO;
- загружены и реализованы анимации персонажа: бег вперёд назад, повороты, плавание вперёд назад, повороты;
- перемещение героя программно отслеживается и в области воды он может бегая создавать волны или на большей глубине автоматически переходить в плаванье;
- сделана засветка линзы от солнечного света, если смотреть на солнце;
- реализовано множественное текстурирование сабмешей одного меша;
- реализованы прозрачные текстуры, предназначенные например для создания волос или кроны деревьев.

Прикрепленные изображения

  • Stage3dEngine08.jpg
  • Stage3dEngine10.jpg


#5 Отправлено 06 Март 2015 - 05:01 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Сделано:
- серьёзная работа с тенями во всех вариациях: отбрасываемые, самозатенение, принимаемые;
- в проект внедрён физический движок, можете попинать кубик;
- первые прикидки спрайтования деревьев для уменьшения давления на производительность компьютера пользователя.

Прикрепленные изображения

  • Stage3dEngine12.jpg
  • Stage3dEngine13.jpg
  • ёлки7.jpg


#6 Отправлено 06 Март 2015 - 05:04 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Сделано:
- "работа над ошибками", а именно многие программные изменения и усовершенствования кода для ускорения рендера;
- не смотря на то, что отрисовывает быстрее, но тем не менее добавлен новый тип затенения по карте нормалей для террэйна, что выдаёт в конечном результате отличную "бархатную" картинку для дальних и средних дистанций;

Прикрепленные изображения

  • Stage3dEngine14.jpg


#7 Отправлено 06 Март 2015 - 05:07 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Сделано:
- хард ворк, но всё же сделан и оттестирован алгоритм дистанционной сортировки объектов и подмена их на упрощённые копии в зависимости от дистанции, вплоть до плоских спрайтов на предельной видимости. Алгорит позволил ускорить рендер в 4 раза для того же количества объектов на сцене;
- по многочисленным просьбам: изменён скайбокс, введён туман по кромке видимой дистанции, в меню предложен выбор мануальной настройки дистанции для компа любого быстродействия. Диапазон дистанции от километра до 20 метров.

Прикрепленные изображения

  • Stage3dEngine15.jpg


#8 Отправлено 06 Март 2015 - 05:12 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Сделано:
- допилены до ума и сведены в единое целое разрешение исходного хай-мэпа, детализация террэйна, физ.движок, позволяющий герою передвигаться по поверхности ландшафта;
- на карте появился мост, как знаковое событие, демонстрирующее возможность создания физичного перекрытия (а это возможность создавать например пещеры и т.д.). По мосту можно бегать. Под мостом можно плавать.

Прикрепленные изображения

  • Stage3dEngine18.jpg


#9 Отправлено 06 Март 2015 - 05:16 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Сделано:
- игра переозвучена. В частности синронизирован звук с анимацией героя;
- альфа релиз системы травообразования, в корне отличной от системы сортировки объектов (типа деревьев);
- временно реализованно через крестообразные меши, текстурированные прозрачной текстурой. Что дико вытормаживает систему. Позже будет заменено на настоящую полигональную траву. Надеюсь, быстродействие придёт в норму...

to be continue...
dragons-world.ru/Stage3dEngine.html

Прикрепленные изображения

  • Stage3dEngine21.jpg


#10 Отправлено 13 Июль 2015 - 19:15 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Ведётся пристрелка к возможностям технологии в плане новых деревьев. Количество / качество / свет / тени / быстродействие / приемлемость уровня багов. Экспериментальный образец на скриншотах.

Прикрепленные изображения

  • screen04.jpg
  • screen05.jpg


#11 Отправлено 20 Июль 2015 - 21:03 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

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

Прикрепленные изображения

  • screen09.jpg
  • screen10.jpg
  • screen14.jpg
  • screen16.jpg
  • screen17.jpg
  • screen21.jpg


#12 Отправлено 25 Июль 2015 - 12:59 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Путём последовательных итераций снизил количество спрайтов на одно дерево со 150-ти через 78 до конечного 29 шт. Иначе, комп не тянет.

Буду привинчивать разные деревья, посему реалтайм релиз пока не выкладываю. Но текущие картинки покажу ;)

Прикрепленные изображения

  • screen27.jpg
  • screen28.jpg
  • screen29.jpg


#13 Отправлено 27 Июль 2015 - 05:17 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Убрал все баги, максимально оптимизировал реалтайм алгоритм генерации травы, увеличил дальность прорисовки, повысил "кустистость" ёлочек, уменьшил время отклика, при этом увеличил скорость и выровнял нагрузку на процессор, устранив пиковые нагрузки.

Сделал новое анимированное небо. Очень красиво!

Прикрепленные изображения

  • screen31.jpg
  • screen32.jpg
  • screen33.jpg


#14 Отправлено 28 Июль 2015 - 11:29 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Попробовал сделать полигональную траву с приёмом и отбрасыванием тени. Результаты быстродействия не утешительные.

Прикрепленные изображения

  • screen35.jpg
  • screen36.jpg
  • screen37.jpg
  • screen39.jpg
  • screen40.jpg


#15 Отправлено 28 Июль 2015 - 17:49 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Раз есть блик на линзе, значит должен быть свет. А раз есть яркий свет, должна быть тень. Сделал вариант с тенями. Обучил деревья на всех дистанциях и главное траву (hard work!) хватать на себя тень правильно. Причём тень считается для всех объектов до самого горизонта.

Прикрепленные изображения

  • screen43.jpg
  • screen44.jpg
  • screen41.jpg
  • screen42.jpg
  • screen45.jpg
  • screen46.jpg
  • screen47.jpg
  • screen48.jpg


#16 Отправлено 04 Август 2015 - 18:09 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Теперь деревья самозатеняются и отбрасывают тень на всех дистанциях, что делает картинку более, чем реалистичной.

Прикрепленные изображения

  • screen50.jpg
  • screen51.jpg
  • screen53.jpg
  • screen57.jpg
  • screen58.jpg
  • screen55.jpg
  • screen61.jpg
  • screen63.jpg


#17 Отправлено 03 Ноябрь 2015 - 10:47 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Обновлена базовая версия:
http://dragons-world...ge3dEngine.html

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

Прикрепленные изображения

  • Stage3dEngine27.jpg
  • Stage3dEngine28.jpg
  • Stage3dEngine26.jpg
  • Stage3dEngine30.jpg
  • Stage3dEngine29.jpg


#18 Отправлено 04 Май 2016 - 20:33 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Перевёл проект с 60 на 30 fps для экономии ресурсов CPU. Выкроенное лишнее отдал на увеличение количества объектов на карте в 2,5 раза. А также:
- загрузил кусты,
- загрузил большие лиственные деревья,
- улучшил дальность, качество рендера и тенеобразования.

http://dragons-world...ge3dEngine.html
Заодно перелопачиваю встроенную физику, как развлекуху заливаю вам мод покатушек на "админском сноуборде". Можете пофаниться, пока я не перезалью файл следующей версией.

Прикрепленные изображения

  • 2016_05_03_Colorization_03.jpg
  • 2016_05_03_Colorization_02.jpg


#19 Отправлено 23 Май 2016 - 04:46 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Проводятся капитальные работы по насыщению мира различной растительностью. Сегодня провёл экспериментальный стресс-тест. Результаты на скринах.

Естественная густота растительности при 30 fps - в два раза разряжённее. Работы продолжаются.

Прикрепленные изображения

  • 2016_05_23_StressTest_02.jpg
  • 2016_05_23_StressTest_04.jpg
  • 2016_05_23_StressTest_06.jpg
  • 2016_05_23_StressTest_12.jpg
  • 2016_05_23_StressTest_13.jpg
  • 2016_05_23_StressTest_16.jpg
  • 2016_05_23_StressTest_18.jpg
  • 2016_05_23_StressTest_22.jpg


#20 Отправлено 24 Май 2016 - 23:43 Автор: Dragons' Lord

  • Dragons' Lord
  • Администраторы
  • Администратор

  • 103 сообщений
Убрал механизм спрайтования деревьев на дальней дистанции.
Увеличил плотность деревьев в два раза.
Все скриншоты сняты на средней настройке "Medium".

Ссылка для реалтайм-теста:
http://dragons-world...ge3dEngine.html

Прикрепленные изображения

  • 2016_05_24_no_sprites_35.jpg
  • 2016_05_24_no_sprites_34.jpg
  • 2016_05_24_no_sprites_30.jpg
  • 2016_05_24_no_sprites_27.jpg
  • 2016_05_24_no_sprites_25.jpg
  • 2016_05_24_no_sprites_17.jpg
  • 2016_05_24_no_sprites_16.jpg
  • 2016_05_24_no_sprites_13.jpg
  • 2016_05_24_no_sprites_12.jpg
  • 2016_05_24_no_sprites_11.jpg
  • 2016_05_24_no_sprites_09.jpg
  • 2016_05_24_no_sprites_07.jpg
  • 2016_05_24_no_sprites_06.jpg
  • 2016_05_24_no_sprites_04.jpg
  • 2016_05_24_no_sprites_03.jpg
  • 2016_05_24_no_sprites_02.jpg