Atom

Много лет под Windows пользуюсь текстовым редактором Programmer’s Notepad, решил сейчас попробовать что-то новое. Обратил внимание на фирменный редактор от GitHub — Atom.

Приятно удивила поддержка разделяемых по горизонтали и вертикали рабочих панелей а ля Emacs или Vim. Есть темная и светлая темы оформления. Редактор открывает в качестве проекта любой каталог и отображает дерево файлов — мне лично всегда не хватало такой удобной мелочи.

Но главная «киллер-фича» — поддержка дополнений. Есть встроенный каталог пакетов, через который удобно искать дополнения — всего их очень много, пакеты для Atom создают все, кому не лень. Я, например установил atom-dlang (подсветка синтаксиса для D), atom-terminal (позволяет открыть окно терминала в папке с проектом), color-picker (диалог выбора цвета), atom-html-preview (просмотр HTML-страниц внутри редактора).

Бенчмарк загрузки PNG

Не так давно один из участников сообщества D провел любопытный тест, сравнив скорости загрузки изображения в формате PNG с различными библиотеками. В сравнении участвовали D-библиотеки (dlib и imageformats), а также C#.

Использовалось 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 мс

Тред с обсуждением

На днях обязательно сделаю собственный тест — необходимо выяснить, что именно тормозит в декодере.

Cook 2.1.0

Вышла новая версия моей системы сборки Cook2. Основное нововведение релиза — поддержка response-файлов при компоновке: это файлы, через которые можно передавать параметры компилятору DMD, если не хватает максимальной длины команды в терминале (под Windows и cmd.exe это 8192 байт, что, конечно, для крупных проектов маловато). Для использования response-файла запускайте Cook с параметром —rsp.
Также в новой версии улучшена поддержка кросс-компиляции через Wine, имена файлов кэша теперь специфичны для ОС и профиля.

https://github.com/gecko0307/cook2

Растягиваемое окно

Atrium теперь поддерживает окна любого размера (развернуть окно игры на весь экран можно в режиме паузы — Esc). Также в свежей сборке исправлены различные баги физики и управления.

Сборка под Windows
Сборка под Linux

Atrium в Tumblr

У проекта Atrium появился микроблог в Tumblr — планирую регулярно выкладывать туда свежие скриншоты:

http://atrium-game.tumblr.com

dmech 0.1

Физический движок dmech обновился до версии 0.1. Ключевым новшеством релиза является полный переход движка на ручное управление памятью. В ближайшем будущем планируется добавить в dmech поддержку convex cast.

https://github.com/gecko0307/dmech