3 июн в 11:58 S.T.A.L.K.E.R. Community :

«New Project» - откровения разработчиков

Главный разработчик модификации «New Project» под ником Rafa (лидер проекта, главный программист), рассказал о своем пути в моддинге и работе над текущим проектом.
О там как всё начиналось, с какими сложностями пришлось столкнуться и над чем работаем в данный момент – читайте в новой статье из цикла "Откровения разработчиков"!
Предыстория

Работа над Lost Alpha

Оптимизация кода для New Project

Переезд на ЗП и другие работы по обновлению движка

СДК
Работа с редакторами началась еще в Lost Alpha DC, где я реализовал простой, но функциональный редактор погоды. Его можно запустить внутри игры, что позволяет максимально точно создавать погодные циклы. Что касается редактора уровней, то нам достался модифицированный СДК от команды Dezowave, который уже обладал некоторыми фиксами и изменениями. Главная проблема в модификации этого СДК была в том, что он собирался в Borland C++. Это очень старая среда разработки, которая сильно затрудняла процесс. Стояла задача перенести СДК на рельсы современной Visual Studio. Загвоздка была в том, что UI написанный на Borland нельзя просто взять и перенести в Visual Studio. По началу был сделан компромисс по обновлению среды разработки до RadStudio и патчем кода СДК для поддержки x64 сборки, c чем помог RedPanda. Однако, когда он покинул команду, желающих работать с этим инструментарием не было. СДК редко получал какие-либо обновления.






Старый SDK и редактор погоды
В какой-то момент к нам на помощь пришел программист под ником Lord. Он предложил взять WPF за UI основу. После полугода работы Lord так же покинул команду, а СДК в том состоянии еще не имел никакого функционала. Команда по-прежнему пользовалась старой версией. Так как WPF – это написание на C#, для соединения UI с оригинальным C++ функционалам приходилось пилить совершенно не удобную CLI прослойку. В какой-то момент я бросил эти попытки и начал пилить UI заново уже на wxWidgets (C++ UI библиотеке). Так как часть работы по переносу самого C++ кода все же уже была проведена, то вжатые сроки получилось сделать редактор, которым мы теперь и пользуемся. Благодаря нашему СДК мы можем создавать колоссальные по количеству объектов локации и собирать их без рандомных ошибок. Работает он так же гораздо быстрее, чем тот, что собирали в Borland. Более того мне удалось реализовать в нашем SDK внутриигровой рендер, который дал возможность нашим ребятам грамотно работать со светом и шейдерами. Объекты и общая картинка максимально приближены к игровой, что должно помочь уменьшить количество перекомпиляций локаций и заметно ускорить процесс разработки уровней.



Заключение
Сообщество: S.T.A.L.K.E.R. Community
Канал: S.T.A.L.K.E.R.

Комментарии (0)

Показать комментарий
Скрыть комментарий
Для добавления комментариев необходимо авторизоваться
Версия: Mobile | Lite | Доступно в Google Play