Civilization и Total War

 

Имя
Пароль  
Забыли пароль?
Регистрация


CIVru.com / "Совет по концепции" - "Мозговой штурм" / Великие племена (The Great tribes)
<< . 1 . 2 . 3 . 4 .  .   Версия для печати . Вверх
Автор Сообщение
Zemlaynin
Участник


Репутация: 1000(???)
# Дата: 15 Янв 2019 05:05:00 Цитата

Вышла статья на Хабре https://habr.com/post/436040/

fantakt
Участник



Репутация: 1265(???)

# Дата: 15 Янв 2019 13:47:58 Цитата

На хабре конечно, больше спецов )))

Zemlaynin
Участник


Репутация: 1000(???)
# Дата: 15 Янв 2019 14:28:50 Цитата

Хорошие конструктивные комментарии там, по технической части

Zemlaynin
Участник


Репутация: 1000(???)
# Дата: 18 Фев 2019 09:41:05 Поправил: Zemlaynin Цитата

Дневник разработки №34


Всем привет!
Прошло уже больше месяца с выхода последнего дневника. Скажу честно, тяжелый был для меня месяц в плане разработки.

Большую часть времени было уделено построению структуры общества, взаимодействию населения, переходу из одной страты в другую. Очень много времени ушло на построение экономических связей.

В один момент, я решил накидать некоторую схему нашего проекта, что позволило малость систематизировать все свои мысли и увидеть степень выполнения тех или иных задач. Кому интересно оценить масштаб, можно посмотреть полученную схему: https://mm.tt/1209438933?t=mBE5c38pFT

В перерывах между работами по геймплейной части баловался с горами, и вернул им опять снежные шапки:
Скрытый текст, щёлкните чтобы прочитать



Алексей сделал новые оптимизированные пальмы -270-350 треугольников на один субтайл

Скрытый текст, щёлкните чтобы прочитать



Отличный результат при таком полигонаже!

Еще я успел поэкспериментировать с пользовательским интерфейсом и сделал вот такой набросок:

Скрытый текст, щёлкните чтобы прочитать



И более менее довел его до ума:

Скрытый текст, щёлкните чтобы прочитать


Мне больше по душе такая концепция интерфейса. Раньше интерфейс был очень тяжелый и все выглядело как будто смотришь в трубу. Но сейчас явно не хватает каких либо завитушек Улыбка


Потом я поэкспериментировал с прозрачными объектами, была задумка у нас изначально реализовать подобные поля:

Скрытый текст, щёлкните чтобы прочитать




Но, в итоге, решили остановиться на подобном варианте:

Скрытый текст, щёлкните чтобы прочитать




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

Скрытый текст, щёлкните чтобы прочитать



Задача оказалась не тривиальной, пришлось проводить массу вычислений чтобы определить необходимость наличия стены со входом, вот пример подобного случая:

Скрытый текст, щёлкните чтобы прочитать





А вот шедевральные лиственные деревья на 800 треугольников на субтайл:

Скрытый текст, щёлкните чтобы прочитать



Потом я все взял и сломал:

Скрытый текст, щёлкните чтобы прочитать




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

Но, результат все равно получился впечатляющим. Первое что хочу отметить — у нас сейчас 16 субтайлов на тайл, а было 9. Раньше сетка субтайлов была 3х3, сейчас 4х4. 484 вершины против 1089 сейчас. В 2.25 раза увеличилось количество вершин на тайл, а производительность осталось на прежнем уровне и генерация карты происходит теперь быстрее, так как самый трудоемкий процесс просчета нормалей теперь происходит быстрее. Это получилось за счет того, что я убрал из расчетов все числа с периодом после запятой, такие как 1\3 и 2\3. Теперь все расчеты как на стороне CPU так GPU происходят быстрее.

Это особенно заметно на больших и огромных мирах:

Скрытый текст, щёлкните чтобы прочитать




Увеличение числа вершин и субтайлов позволило реализовать более реалистичные горы:

Скрытый текст, щёлкните чтобы прочитать





Теперь наш рендер вывозит 32 миллиона полигонов!!! Правда на моейт GTX660 это всего 10FPS

Скрытый текст, щёлкните чтобы прочитать




Переделка всего мира на структуру 4х4 субтайлов повлекло переделку генерации гор, холмов, рек, масштабированию всех моделей. Что в совокупности отняло эти 10 дней.

Скрытый текст, щёлкните чтобы прочитать



- Также были реализованы следующие моменты о которых хотелось бы мельком рассказать:
- Нормалмапы для всего террейна.
- Ошибка с вычислением нормалмап.
- Исправленна ошибка интерфейса на контейнерах возникающаяя при событиях MouseEntered MouseExited.
- Режим перехода в/из полноэкранный режим по нажатию клавиши F11.



Очень много времени у меня занял один баг:

Скрытый текст, щёлкните чтобы прочитать



5 часов я убил на его поиски Улыбка


Спасибо за внимание!
Вступайте в нашу группу в ВК: https://vk.com/thegreattribes

Zemlaynin
Участник


Репутация: 1000(???)
# Дата: 23 Мар 2019 12:45:04 Цитата

Дневник разработки №35

Всем привет!
На этот месяц приходились следующие задачи:
0. Решить нужно ли нам реализовать АО (ambient occlusion) или нет.
1. Прикрутить оптимизацию террейна, т. е. вернуть ее на прежний уровень.
2. Реализовать создание файлика настроек и его сохранение.
3. Загрузка текстур в зависимости от настроек качества.
4. Реализовать предзагрузку объектов.
5. Прикрутить разные шахты, и реализовать новый тип построек - карьеры.
6. Сделать как я их называю мультиобъекты. Это такие объекты на карте, которые будут рисовать несколько объектов инстансингом.
7. Реализовать объект интерфейса окно которое можно будет перетаскивать. В том числе и на второй экран, соответственно реализовать поддержку второго экрана.
8. И наконец допилить создание новых городов со стратами и первыми экономическими связями.

Но после прочтения интересной статьи https://gamedev.ru/industry/articles/Godot_making_game откинул ряд поставленных задач и список получился:

1. Прикрутить оптимизацию террейна, т. е. вернуть ее на прежний уровень.
2. Реализовать создание файлика настроек и его сохранение.
3. Загрузка текстур в зависимости от настроек качества.
4. Прикрутить разные шахты, и реализовать новый тип построек - карьеры.
5. И наконец допилить создание новых городов со стратами и первыми экономическими связями.

Над проектом как и раньше продолжал работать минимум по 12 часов в день. Но в один прекрасный день я забыл флешку на работе с проектом и дома им не занимался...
И вот после такого, так сказать вынужденного отдыха, следующий день прошел продуктивно.
Решил по практиковать такой подход к разработке. В итоге производительность вроде как возросла, видимо сказалась накопившаяся усталость. В итоге я сделал двух недельный перерыв в разработке. Неделю отдыхал и неделю отдал на все различные накопившиеся личные и рабочие дела.

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















Первым из основного списка были сделаны шахты и карьеры:
Скрытый текст, щёлкните чтобы прочитать





И у нас появилось одно небольшое чудо света:

Скрытый текст, щёлкните чтобы прочитать



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




В общем реализовал 4 из 5 основных пунктов. Опять обделил геймплей.
На сегодняшний день с движком завязал. Осталось только поправить генерацию рек. И все, следующий месяц только геймплей на повестке. Постараюсь Улыбка

Спасибо за внимание!

<< . 1 . 2 . 3 . 4 .  .   Версия для печати . Вверх

ОСТАВЛЯТЬ СООБЩЕНИЯ МОГУТ ТОЛЬКО ЗАРЕГИСТРИРОВАННЫЕ ПОЛЬЗОВАТЕЛИ!

Администрация форума: editors@civru.com
Rambler's Top100
XML [?]