Обработка исключений — это всегда скучно и многословно, никому не хочется загромождать свой код вездесущими try/catch. Кроме того, в D обработка исключений на уровне языка не работает с SEH-исключениями под x86_64, что сильно усложняет отлов багов, связанных с доступом по невалидному указателю — приложение просто падает молча, что не соответствует принципу «fail loudly». Но оказалось, что есть относительно простой способ решения этой проблемы.
(далее…)windows
Кластерный рендеринг — обновленная демка
Скачать для Windows
Vulkan, SDL и D
https://github.com/gecko0307/vulkan-demos
Пример представляет собой минимальное приложение, создающее окно SDL, инициализирующее Vulkan и закрашивающее в цикле экран синим цветом. Больше ничего рисоваться не должно.
Функциональность, относящаяся с Vulkan, отделена от SDL и остальной логики приложения, вынесена в модуль vkctx.d. Используются Derelict 2, SDL 1.2 и модифицированный биндинг VulkanizeD. Линковалось и тестировалось на системе с Windows 8.1 и видеокартой NVIDIA GeForce GT 740 с драйвером версии 356.39.
Техно-демо
Демка с новым освещением
В демке видно, как окружение реагирует на перемещение светящихся желтых контейнеров.
Правда, есть один минус — после полного перехода на шейдеры перестали работать тени (реализация теней работала на фиксированном конвейере). Так что следующим шагом будет рефакторинг теней.














