dmech
Итоги года
- Для Atrium был разработан новый графический движок Dagon на основе OpenGL 3.3 и SDL2, поддерживающий множество современных технологий, в том числе CSM и кластерный рендеринг.
- Я написал ради развлечения симулятор автомобиля с использованием физического движка dmech – в итоге, этот код стал частью демонстрационного приложения Dagon.
- Вышли несколько важных релизов коллекции библиотек dlib – 0.10, 0.11 и 0.12. Появились новые компоненты – например, dlib.async и dlib.memory, поддержка анимированных изображений и APNG, а также загрузчик формата HDR.
- Вышли три номера журнала “FPS” (46, 47, 48). В 2018 году журналу исполняется уже 10 лет!
- “Blender. Настольная книга” теперь доступна на GitHub – в виде markdown-исходников, автоматически публикующихся через gh-pages.
- На сайте LightHouse Software вышла моя статья по D – Векторная графика в dlib.
Напоследок, по сложившейся традиции, перечислю самые значимые для меня события в мире CG, СПО и геймдева:
- Бэкенд DMD был перелицензирован под лицензией Boost, что наконец-то сделало компилятор полностью свободным.
- Начало разработки Blender 2.8 с новым фотореалистичным вьюпортом Eevee.
- Выход OpenGL 4.6.
- Закрытие Steam Greenlight.
- Официальное прекращение развития Flash – важный шаг в сторону открытого веба.
- Анонс нового открытого фильма от Blender Institure – “Agent 327”.
Физика автомобиля на D
Я, впрочем, не планирую создание полноценной гоночной игры, поэтому не стал моделировать реальные характеристики двигателя, тормозов и т.д. – автомобиль движется под действием двух сил на каждое колесо, продольной и боковой, основанных на взятых “с потолка” константах. В принципе, ничто не мешает сделать точные расчеты этих сил.
Демка использует модифицированную версию dmech, а также Dagon в качестве графического движка (опять-таки с модификациями, которые совсем скоро войдут в основной репозиторий – к примеру, реализованы тени и шейдерный бэкенд для материалов). Все зависимости включены в архив, кроме dlib 0.11.1. Прилагается сборка для Windows. Можете использовать демку в своих проектах (код доступен под лицензией Boost).
Скачать (9,65 Мб)
Итоги 2015 года
- Вышло 6 номеров электронного журнала “FPS” (№№ 34, 35, 36, 37, 38, 39). В 2016 году журналу исполняется 8 лет, не за горами и юбилейный 40-й номер.
- Открылся ресурс CG World – новостной блог, посвященный компьютерной графике
- Значительно улучшен графический движок DGL, на котором создается Atrium. Реализовано динамическое освещение, шейдерные эффекты, тени, пост-процессинг и т.д.
- Игра “засветилась” в PC Magazine, на IndieDB, а также в официальной группе новостей и русскоязычных сообществах по языку D.
- Обновился сайт Atrium.
- Состоялся выход dlib 0.7.0 со множеством улучшений во всех модулях библиотеки и поддержкой Travis-CI.
- Физический движок dmech обновился до версии 0.2.6, обзавелся C-интерфейсом, компиляцией в динамическую библиотеку и поддержкой Mac OS X. Появились новые демки и уроки по движку.
- Система сборки Cook обновилась до версии 2.1.x. Основные нововведения: поддержка response-файлов, кросс-компиляции и поддиректорий во внешних зависимостях.
Чем для меня был интересен прошедший 2015 год? Вот самые, на мой скромный взгляд, значимые события в мире CG, СПО и любительского геймдева:
- Появление Vulkan, графического API нового поколения, который должен преодолеть недостатки OpenGL и Direct3D, сократив прослойку между пользовательским кодом и видеодрайвером, что позволит более глубоко оптимизировать приложения.
- Выход нового короткометражного открытого фильма от Blender Institute – “Космическая прачечная” (проект Gooseberry).
- Релиз Krum: Edge of Darkness – игры, созданной на Blender Game Engine, которая создавалась несколько лет.
- “Выстрел” Krita, которую я бы смело назвал программой года. Разработка этого малоизвестного ранее пакета сейчас идет семимильными шагами, по популярности Krita догоняет GIMP, а по функциональности превосходит уже многие коммерческие продукты.
- GIMP 2.9 с поддержкой новых цветовых режимов и OpenEXR.
- Открытие исходников Unreal Engine 4 и PhysX.
Обновление всех проектов
- В коллекции библиотек dlib 0.6.0 значительно улучшен декодер JPEG, добавлена поддержка новых типов прореживания и APP-маркеров. Улучшено управление памятью (удалять теперь объекты можно через интерфейсы и родительские классы), добавлены независимые от сборщика мусора реализации классов изображений и файловых потоков. В пакете dlib.math появилась реализация некоторых идиом комбинаторики (dlib.math.combinatorics).
- Физический движок dmech 0.2.0 включает необходимые изменения для поддержки dlib 0.6.x. Также к движку теперь прилагается небольшая документация в виде уроков.
- DGL/GC-free, независимая от сборщика мусора ветка проекта, теперь тоже переведена на dlib 0.6.x.
- Вышла первая альфа-версия Atrium (0.0.1a). Релиз, главным образом, обозначил перевод игры на последние версии вышеперечисленных библиотек. Есть готовые сборки для Windows и Linux.