Система трассировки лучей, реализованная на языке SQL

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 1808
Зарегистрирован: 20.08.2022

#

Система трассировки лучей, реализованная на языке SQL
Дата публикации:Wed, 01 Jul 2026 21:00:28 +0300

Алексей Миловидов, сооснователь СУБД ClickHouse, при содействии AI-ассистента Claude опубликовал систему трассировки лучей, реализованную целиком на языке SQL. Рендеринг с симуляцией освещения на базе трассировки путей реализован в виде одного SQL-запроса без пользовательских функций (UDF) и без подключения внешнего кода. Для вывода графики используется возможность СУБД ClickHouse, сохранять результат запросов в формате PNG. Полноценно проект работоспособен при запуске в СУБД ClickHouse, но с отдельными ошибками и в 33 раза медленнее может работать в СУБД CedarDB. Проект распространяется под лицензией Creative Commons BY-NC-SA.
Каждый пиксель представляет собой строку в таблице, в которой имеются столбцы с координатами (X, Y) и представлением цвета (R, G, B). Необходимые для 3D-вычислений математические операции построены а кортежах - вектор кодируется как Tuple(Float64, Float64, Float64). Цикл для моделирования многократных отражений света от поверхностей реализован через SQL-функцию arrayFold и выполняется внутри каждой строки для распараллеливания рендеринга. Из геометрических примитивов поддерживаются цилиндры, торы, сферы и ориентированные параллелепипеды, над которыми выполняются операции объединения и разности (удаления пересечений). Ландшафт генерируется математически.
Изображение
Ранее разработчики СУБД ClickHouse подготовили написанные на SQL Doom-подобную игру, эмулятор RISC-V и синтезатор музыки.

Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=65820

Жизнь за Нер'зула!

Ответить