Статьи по dlib
На сайте студии LightHouse Software, использующей и активно продвигающей язык D, опубликовано несколько интересных статей по использованию коллекции библиотек dlib — в частности, о рисовании фрактала Курликю и графических примитивов с использованием dlib.image, а также о процедурном генерировании картинки с Псаем с последующим сохранением в файл.
http://lhs-blog.info/programming/dlang/fraktal-kurlikyu
http://lhs-blog.info/programming/dlang/dobavlenie-graficheskih-primitivov-v-dlib
http://lhs-blog.info/programming/dlang/gangnam-style-v-d
http://lhs-blog.info/programming/dlang/sohranenie-izobrazheniya-v-fayl
PC Magaine: игры изнутри
Не так давно я со своим Atrium принял участие в опросе российского филиала журнала PC Magazine, посвященном разработке современных игр: как устроены игры изнутри, как программируются серверы, как моделируется игровой мир, какие используются средства разработки. Недавно материал опроса был опубликован на сайте журнала — почитать мой ответ, а также информацию от многих других российских разработчиков можно по следующей ссылке:
Русский форум по D
«Создание данного форума преследовало одну единственную цель: восполнить брешь в виде отсутствия русскоязычных форумов по языку программирования D в рунете. Единственный, на сколько мне известно, специализированный сайт по данной тематике — http://dlang.ru, который месяц уже в неработоспособном состоянии. А время идет. Давайте попробуем общаться тут».
Так что — приглашаю всех на новый форум!
Обновление всех проектов
- В коллекции библиотек 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.
Atom
Много лет под Windows пользуюсь текстовым редактором Programmer’s Notepad, решил сейчас попробовать что-то новое. Обратил внимание на фирменный редактор от GitHub — Atom.

Приятно удивила поддержка разделяемых по горизонтали и вертикали рабочих панелей а ля Emacs или Vim. Есть темная и светлая темы оформления. Редактор открывает в качестве проекта любой каталог и отображает дерево файлов — мне лично всегда не хватало такой удобной мелочи.
Но главная «киллер-фича» — поддержка дополнений. Есть встроенный каталог пакетов, через который удобно искать дополнения — всего их очень много, пакеты для Atom создают все, кому не лень. Я, например установил atom-dlang (подсветка синтаксиса для D), atom-terminal (позволяет открыть окно терминала в папке с проектом), color-picker (диалог выбора цвета), atom-html-preview (просмотр HTML-страниц внутри редактора).
Бенчмарк загрузки PNG
Использовалось RGB-изображение размером 2048х2048, компилятор DMD 2.0.67 c флагами -release -inline -O. Задачей была загрузка из PNG, отражение по горизонтали и сохранение в PNG. Результат получился следующий:
C#:
Загрузка — 90 мс
Отражение — 10 мс
Сохранение — 380 мс
D (dlib):
Загрузка — 500 мс
Отражение — 30 мс
Сохранение — 950 мс
D (imageformats):
Загрузка — 230 мс
Отражение — 30 мс
Сохранение — 1100 мс
Тред с обсуждением
На днях обязательно сделаю собственный тест — необходимо выяснить, что именно тормозит в декодере.




