+ Ответить в теме
Показано с 1 по 20 из 287

Тема: Великие племена (The Great tribes)

Комбинированный просмотр

  1. #1
    Дневник разработки № 1


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


    В данном дневнике я опишу лишь общие черты концепта. Концептуально игра представляет собой нечто среднее между Цивилизацией и стратегиями Парадоксов (Крестоносцы, Европа и Виктория). Параллели с цивилизацией, пожалуй, ограничиваются лишь временным отрезком, охватываемым в игре и Чудесами. Остальные элементы тоже присутствуют, но они есть и в других играх. Как и в Крестоносцах, мы хотим отразить роль личности в истории. Только вместо отдельных личностей на историю воздействуют различные фракции. С Европой игру роднит относительно высокая детализация различных исторических явлений. Наконец, экономическая система схожа с той, что использовалась в Виктории. Приведенные параллели не дают адекватного представления об игре, но позволяют представить некоторые ее особенности.


    Т. к. проект планируется большой и амбициозный в команду требуются следующие специалисты:
    - Моделлер (создание моделей для карты)
    - Художник (в первую очередь, надо нарисовать текстуры местности)
    В перспективе могут понадобиться:
    - Программист
    - Звуковорежиссер
    - Тестировщики
    Если Вы хотите принять участие в разработке, но не нашли себя в приведенном списке - все равно пишите нам!


    С Новым годом!
    продвинь это сообщение в соцсеть:  

  2. #2

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

    С моего последнего поста прошло уже почти 2 месяца, но это не спроста.
    Данный проект я пишу на Java и все отображение графики происходило стандартными средствами Java и поэтому все рисовалось силами процессора. Но в какой-то момент, на моем достаточно мощном компьютере, все стало притормаживать и при больших масштабах даже подлагивать.

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

    И на этом этапе наступил переломный момент. Я решил все это дело перенести в 3D, дабы вся отрисовка происходила на видео карте, так как процессор нам нужен для другого

    Стоит отметить, что в 3D на этот момент я был полный ноль и все мои знания были чисто теоретическими и поверхностными.

    Начал я с ознакомления с существующими библиотеками для работы c 3D на Java. Выбор оказался не велик и в результате я взялся за изучение LWJGL. Помимо этого пришлось доставать из уголков своей памяти знание основ OpenGL и оказывается мои знания безнадежно устарели.

    Скрипя зубами и даже на какой-то момент жалея, что я взялся за эту затею с 3D, я перелопатил кучу информации по данной теме, работу замедляло то что вся доступная актуальная информация была на английском языке.
    Спустя неделю, или около того я выкатил свой первый 3D генератор карты, можете посмотреть на этот ужас на скрине:




    Мир был жутко страшным с нелепыми треугольными горами:



    Я понимал, что сейчас весь этот ужас происходит из-за таких страшных текстур и начал поиск более подходящих, даже купил текстурпак:



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



    Ну что-же, выглядят они намного лучше. Пора избавляться от нашего плоско выглядящего мира к более объемному. Для этого нужно добавить освещение, чтобы заиграли все неровности! И о боже что это?



    Полное отсутствие нормалей дает такой результат. Высчитываю нормаль для каждого треугольника:



    Получилось не очень, высчитываю нормаль для каждой вершины:




    Усредняю нормали для соседних вершин на стыках тайлов:



    Теперь видны холмы и горы. Но поверхность слишком бугристая



    Теперь предстоит сгладить поверхность, сгенерировать холмы и более реалистичные горы, добавить слой воды, реки и прочую уже мелочь.

    За несколько дней сделал все до слова «реки» и озадачился одним вопросом... вы, наверное, заметили в окне в левом уголку циферки? Это FPS. Я их конечно замечал в самом начале, но откладывал на потом, понимая, что у меня отрисовывается вся карта, а не её видимая часть. Взялся за оптимизацию и результат:



    Рек все еще нет, но я занялся сглаживанием краев воды и красивым прибоем, жалко на скрине не видно прибой:



    Все красиво и хорошо, но рек все же еще нет и пора браться за них. Сразу столкнулся с проблемой что мой алгоритм из 2D версии не подходит к 3D из-за того, что тут тайлы квадратные, а там были ромбовидные и все реки стали прямыми и некрасивыми. Пришлось переписывать весь алгоритм с нуля. Жалко я не сохранил скрин первых рек, они были в принципе ничего. Но они были квадратными!
    И все это из-за того, что весь мир у меня строился на тайлах, а каждый тайл у меня строился из девяти субтайлов и, в свою очередь, каждый тайл разбивался на 9 квадратов что соответствовало 18 полигонам. 18 полигонов это очень мало для придания рекам хоть какой-то формы отличной от квадратно-угловатой.

    Решил попробовать увеличить число полигонов на субтайл, по моим прикидкам 100 квадратов (200 полигонов) на субтайл было бы самое то, и на бумаге даже красиво получалось...
    Но 3200000 полигонов рисуемые в 2 прохода... плюс еще будут десятки тысяч объектов от 100 до 1000 полигонов... получается многовато, да и памяти хорошо отъедает и строиться такой мир долго очень, а как его сохранять потом? Подумав малость пришлось отказаться от такого подхода. И начались бессонные ночи в расчетах и поиске золотой середины. Три дня и три ночи я не спал и думал. Я переосмыслил все что-только можно было, и уже даже почти успел впасть в депрессию из-за невозможности найти решение, да и просто и от усталости. В ночь на 20 декабря я наконец-то смог уснуть...я уснул ровно на 20 минут и проснулся... Ведь какая штука наш мозг... проснувшись ко мне пришло полное осмысление всей информации, полное осмысление и понимание устройства OpenGL (конечно преувеличиваю), я проснулся с решением поставленной задачи. В 3 раза сократил потребление видеопамяти, в несколько раз сократил и потребление оперативной памяти, увеличил общую производительность, убрал один жесткий лаг. В общем жизнь заиграла другими красками.

    В итоге, я все же решил сократить количество полигонов и вместо сетки 10х10 на субтайле, я сделал 7х7. Единственное пришлось много времени потратить на перерисовку гор и берегов и 30 декабря я выкатил вот такой результат:





    31 декабря - 1 января был синдром нового года.

    И второго дня нового года я принялся за реки, к сожалению, я не сохранил скриншотов всех промежуточных вариантов рек. Задача казалась не очень сложной, но признаюсь я 4 раза писал и все под корень удалял, начиная с нуля.
    В итоге получил неплохие реки




    Но пришлось еще малость по колдовать, чтобы нивелировать такие резкие повороты




    И в итоге получить нечто подобное



    Тяжелые были 2 месяца, но предстоит еще больше! Проекту очень требуется в помощь художник и 3D-моделлер!
    продвинь это сообщение в соцсеть:  

+ Ответить в теме

Похожие темы

  1. [Карта] Great Ocean (моё)
    от Daemon в разделе Civ5 - Карты и сценарии
    Ответов: 20
    Новое: 16.06.2016, 08:41
  2. The Great War v4.6, Первая мировая война
    от Snake_B в разделе NAPOLEON: TOTAL WAR
    Ответов: 0
    Новое: 11.02.2013, 00:56
  3. Инки, Майя и другие дружественные племена
    от UserCivAlex в разделе Цивилизация 4 - ПОЕХАЛИ!
    Ответов: 35
    Новое: 18.09.2008, 07:01

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
Рейтинг@Mail.ru

free counters