пятница, 3 апреля 2015 г.

Пятничные факты #80 от команды factorio.

Это перевод статьи с официального сайта. Вот тут Вы можете прочитать оригинал.

Сумасшедшее начало.


Привет-привет!

Начало апреля выдалось в Праге сумасшедшим! Погода скачет туда сюда от зимней (мороз и снег) к летней (тепло и солнце). Природа определенно шутит первоапрельские розыгрыши! Kovarex укатил со своей подругой в Париж, а остальные отмечали пасху на работе :)

0.11.20


Вышла последняя версия 0.11.20! (примечание: перевод новости об этой версии Вы можете прочитать вот в этой статье). Эта версия - кандидат в стабильные! Она сделана по настоящему хорошо. Если никаких серьезных проблем не обнаружится, то мы объявим версию 0.11 стабильной. Если же нет - придется проглотить свою гордость, исправлять все ошибки и попытаться снова!





Автоматизация работы


0.11.20 был первый релиз полностью сделанный на нашем новом сервере. Blue cube работал над этим некоторое время и вот теперь множество вещей может делаться одновременно. Сервер сейчас способен делать такие вещи:

  • компилирует игру для всех поддерживаемых систем (винда, линукс, маки).
  • запускает тесты этих сборок.
  • создает установочные пакеты для скачивания
  • создает пакеты для обновления игры

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

Сейчас все еще приходится вручную загружать пакеты с обновлениями на сервера S3. Следующий шаг, который Cube уже почти сделал - это отказ от Amazon S3 и переход на виртуальный сервер Linode для хранения загружаемых данных игры. В общем, мы создаем свой простой CDN. Как ни крути, это будет лучше:
  • возможность быстрее скачать для игроков
  • уменьшение стоимости для нас.

Разработка Ракет


В тоже время мы продолжаем работу над версией 0.12. Robert работает над объединением космодрома и ракеты. Наиболее сложный здесь момент - анимация запуска ракеты. С этим связано несколько трюков, а именно:
  • Ракета в основном движется по оси "Z", т.е. летит вверх. Движок factorio не может это сделать. Нам приходится симулировать движение ракеты перемещением по оси "Y". А с этим связано много вопросов: Что должно происходить, если игрок побежит на север в погоне за ракетой? Как должна себя вести тень ракеты? Мы же не можем просто отразить тень на землю. Как ракета будет взаимодействовать с летающими роботами?
  • Космодром является на данный момент крупнейшей постройкой в игре (10 х 10 тайлов). Поэтому требуется переработка алгоритма рисования, который работает только с теми зданиями, центр которых в данный момент на карте. Центр космодрома не попадает в этот диапазон (размер карты + 4 тайла), следовательно он может вдруг стать невидимым, когда на самом деле его края находятся на карте и должны быть нам видны. Фишка тут в том, что нужно сделать код, занимающийся обрисовкой настолько производительным, насколько это возможно (десятки тысяч объектов могут быть на экране).
  • Анимация запуска ракеты очень сложная. В нее входит 12 роликов со множеством слоев. Придется хорошо поработать, чтобы все сделать правильно, ведь наш движок просто не готов к таким эффектам.
  • Мы используем новомодные светящиеся эффекты для прорисовки огня ракеты и они бросают своеобразные тени на окружение космодрома.

Как обычно, сделать все это получается гораздо сложнее, чем ожидалось...

Усиление команды


В последние пару недель мы усиленно пытались найти несколько хороших C++ программистов. В результате мы взяли нового члена команды на испытательный срок. Его зовут Martin, сейчас он учится в местном универе. Если он останется с нами, то ему придется тратить половину своего времени на factorio. Его первая задача - работа над сигналами, вернее, как мы их называем - цепями сигналов. Они будут работать не так, как сигналы в OpenTTD. Мы обязательно поделимся деталями и примерами, когда работа будет сделана, а это ожидается уже скоро.

Albert одичал и сделал небольшой смешной Пасхальный постер (возможно, кого-то это вдохновит на создание мода):


Тема для Ваших комментариев и мнений как всегда на нашем форуме.


Спасибо за внимание!
Если Вам понравилась статья, поделитесь ей с друзьями! Чтобы следить на новыми статьями, подписывайтесь на наш блог или вступайте в сообщества: ВКонтактеgoogle+, twitter.

Комментариев нет:

Отправить комментарий