Я решил запустить краудфандинг на Patreon: https://www.patreon.com/gecko0307. Упор, в основном, на три моих главных проекта – dlib, Dagon, dmech. Если я наберу ежемесячное финансирование в $100, то допишу документацию по dlib. Если $500, то буду заниматься разработкой dlib, Dagon и dmech в режиме полного дня, включая написание документации и новых уроков. Все, кто пожертвует $10 и выше, будут перечислены в списке спонсоров в репозиториях и на сайтах проектов.
dlib
dlib 0.13.0 и Dagon 0.7.0
На днях состоялись новые релизы двух основных моих проектов – dlib 0.13.0 и Dagon 0.7.0.
Изменения в dlib:
- Из основной ветки был удален пакет dlib.async. Решение об удалении было принято из соображений безопасности. К сожалению, у пакета в настоящее время нет активных мейнтейнеров, некому исправлять баги, поэтому я посчитал dlib.async недостаточно стабильным для существования в качестве официальной части dlib – хотелось бы, чтобы все компоненты dlib были в одинаковой степени актуальны и поддерживаемы. dlib.async продолжит существование в рамках ветки async, но пользователям рекомендую обратить внимание на более актуальные и законченные асинхронные движки – такие, как vibe-core
- Добавлен модуль dlib.image.canvas с реализацией класса Canvas – векторного рендер-движка с интерфейсом, похожим на HTML5 canvas. В настоящее время он поддерживает отрисовку полигонов и фигур Безье с заливкой и контуром. Рендеринг осуществляется в заданное пользователем изображение SuperImage.
- Улучшен декодер файлов Radiance HDR/RGBE – теперь он читает файлы, начинающиеся со строки “#?RGBE”
- Добавлены функции tone mapping’а (hdrTonemapReinhard, hdrTonemapHable), новые алгоритмы выделения краев (edgeDetectLaplace, edgeDetectSobel), новые методы для структуры Color4f (toLinear, toGamma)
- Добавлены новые функции для векторов (reflect, refract, faceforward)
- Добавлены функции для вычисления касательного вектора кривых Безье (bezierTangentVector2, bezierTangentVector3).
Изменения в Dagon:
- Полноценный HDR-рендеринг с автоматической экспозицией и tone mapping’ом
- Поддержка HDR-карт окружения в формате Radiance HDR/RGBE
- Улучшенные каскадные тени (более эффективное заполнение каскадами пирамиды видимости)
- Переписан весь код, отвечающий за PBR. Теперь используется модель Кука-Торренса вместо Блинна-Фонга. Добавлена поддержка текстур шероховатости (roughness) и металличности (metallic)
- Переписана система пост-обработки. Все фильтры теперь являются частью стандартной сцены (BaseScene3D), их остается только включить и настроить. Добавлены фильтры размытия при движении, свечения и цветокоррекции (LUT), улучшен фильтр хроматической аберрации
- Улучшено встроенное процедурное небо – теперь движок сам генерирует геометрию небесного купола
- Добавлены слои для сортировки объектов при рендеринге
- Камера от первого лица облегчает рендеринг оружия в шутерах, предоставляя матрицу оружия
- Улучшена поддержка джойстиков, добавлена поддержка рулей
- Dagon теперь использует dlib 0.13.0.
Обновление демонстрационного приложения с использованием Dagon 0.7.0 планируется в ближайшие дни.
Итоги года
Близится конец года, и, значит, настало время для очередного подведения итогов. К сожалению, в связи с постоянными разъездами и дипломной работой у меня было мало времени на хобби-проекты, но какой-то прогресс все же имеется.
- Для 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”.
Векторная графика в dlib
На сайте LightHouse Software вышла очередная моя гостевая статья – “Векторая графика в dlib”. Рассматривается рендеринг многоугольников и фигур Безье средствами dlib.image, dlib.math и dlib.geometry.
Сверточные фильтры в dlib с выводом в QtE
Очередной замечательный материал по dlib от LightHouse Software – продолжение серии статей по обработке изображений в dlib.
От автора:
“В этой статье мы попытаемся подружить QtE5 и dlib, сделав несложный и удобный интерфейс для накладывания фильтров на изображения, оставив при этом возможность для пользователя добавлять свои фильтры”.