Совсем недавно вышла бета-версия готовящегося к релизу LDC 0.10.0 – компилятора D, использующего LLVM для генерации машинного кода.
Решив проверить LDC на практике, я только что собрал им Atrium. Результат очень обрадовал, при компиляции в релизном режиме и с уровнем оптимизаций -O3, LDC выдал весьма шустрый код: ~100 FPS против ~80 у DMD 2.060! При этом я всего один раз столкнулся с необходимостью поправить исходники – при использовании ассоциативного массива указателей.
Как вывод: LDC вполне созрел для использовании в качестве основного компилятора D под Linux – во всяком случае, для работы с OpenGL и графикой реального времени. К сожалению, я не в курсе, как у него обстоят дела c поддержкой Windows – надеюсь, со временем этот вопрос устаканится.
Доступна первая играбельная сборка моего текущего проекта под кодовым названием Atrium. На данный момент идет отладка графического движка игры, а также работа над экспортером контента для Blender. Данная сборка демонстрирует не столько геймплей, сколько возможности движка в его текущем состоянии, как то: скелетная анимация персонажа, обнаружение столкновений с картой и игровыми объектами, камера от третьего лица, вывод текста, мультитекстурирование (для реализации лайтмаппинга), а также элементы игровой логики и несложные спецэффекты (свечение объектов, затемнение персонажа, когда он находится в тени).
Управление:
– клавиши-стрелки = движение вперед/назад и поворот;
– пробел = прыжок
– F11 = переключение привязки камеры к персонажу (в “свободном” режиме камера управляется при помощи мыши: левая кнопка = вращение, средняя = перемещение, колесико = приближение/отдаление).
Решил вспомнить былое и централизованно выложить в открытый доступ свои старые игры. Возможно, кого-то они заинтересуют – сейчас мода на ретро =) Все ресурсы и исходники – под Public Domain, за исключением чужого контента (лицензионные оговорки – в тексте COPYING.txt)
Crematorium Игра была сделана мной для II конкурса портала GameCreating.ru (сам сайт давно уже прекратил существование, но сообщество еще живо: http://gamecreating.borda.ru). Конкурс проводился в 2005 году. Кому интересно – тред с голосованием. Представляет собой несложный шутер от первого лица в стиле первых Doom и Quake. Спрайтовые враги и оружие на фоне трехмерных одноэтажных локаций – подземных лабиринтов. В игре всего 5 уровней, (в начале каждого выводится краткий инструктаж с миссией), 3 типа оружия (пистолет, автомат, гранаты), 2 вида врагов + 1 финальный босс. Скачать (Google Диск) – 8.3 МБ. City Builder Симулятор градостроительства. Каждый построенный жилой дом увеличивает население вашего города, которое ежемесячно платит налог в казну. Размер налога зависит от степени развития городской инфраструктуры: количества магазинов, ресторанов, банков, отелей, садово-парковых зон и т.д. Можно строить заводы, которые ухудшают условия жизни в городе, но зато приносят высокий доход, а также сажать деревья, прокладывать асфальт, газон, песок и воду. Есть возможность сохранять и загружать города, а также выбирать фоновую музыку. Скачать (Google Диск) – 1.3 МБ. Croggler Простенький платформер из 15 уровней, на каждом из которых вы должны победить черного призрака, летающего под потолком. Ваше единственное оружие – бомбы, которые призрак время от времени скидывает. Если бомбу вовремя не подобрать, она взрывается. На некоторых уровнях есть также второстепенные враги – их уничтожить невозможно, остается только уворачиваться… Скачать (Google Диск) – 1.4 МБ.
Сегодня стала доступна первая тестовая сборка ожидаемого релиза Blender 2.65. В данной версии пакета пользователей ждет значительное число серьезных нововведений:
Наконец-то появилась долгожданная поддержка Open Shading Language (OSL) – нового языка программирования шейдеров от Sony Pictures. Теперь рендер-движок Cycles является полностью программируемым в прямом смысле этого слова: материалы можно описывать не только в виде графа узлов, но и шейдерных программ в духе традиционных GLSL или RSL. К сожалению, OSL-шейдеры пока не компилируются для GPU и работают только в CPU-режиме – однако скорость исполнения байт-кода OSL и без того поражает воображение…
Для Cycles также добавлена поддержка анизотропных материалов и размытия при движении (Motion Blur).
Подвергся серьезному обновлению симулятор дыма: теперь он “из коробки” поддерживает симуляцию огня. Объект Domain работает на порядок быстрее. Дым теперь можно выпускать с поверхности мешей без использования системы частиц.
Новинки в сфере моделирования: улучшенный инструмент “Фаска” (Bevel) и невероятно полезный новый инструмент “Симметризация” (Symmetrize), позволяющий, как ясно из названия, симметризировать топологию относительно координатных осей. Кроме того, был улучшен модификатор Decimate, позволяющий уменьшить количество полигонов в меше – появились новые алгоритмы редуцирования. Также был добавлен новый модификатор Triangulate, “на лету” упрощающий N-гоны до треугольников.
Более подробный обзор новинок ждите в следующем номере журнала “FPS”. Скачать сборку Blender 2.65 для Windows, Linux и Mac OS X можно здесь.