De ray tracing-systeem, geïmplementeerd in SQL

Alexey Milovidov, mede-oprichter van de database ClickHouse, heeft met hulp van AI-assistent Claude een ray tracing-systeem gepubliceerd, volledig geïmplementeerd in SQL. De rendering met verlichtingssimulatie gebaseerd op path tracing is gerealiseerd in de vorm van één SQL-query zonder gebruik van gebruikersfuncties (UDF) en zonder externe code. Voor de grafische uitvoer wordt gebruikgemaakt van de mogelijkheid van de database ClickHouse om de resultaten van queries in PNG-formaat op te slaan. Het project functioneert volledig bij uitvoering in de database ClickHouse, maar kan met afzonderlijke fouten 33 keer langzamer werken in de database CedarDB. Het project wordt verspreid onder de Creative Commons BY-NC-SA-licentie.

Elke pixel vertegenwoordigt een rij in een tabel, waarin kolommen zijn met coördinaten (X, Y) en kleurrepresentatie (R, G, B). De wiskundige operaties die nodig zijn voor 3D-berekeningen zijn gebaseerd op tuples — een vector wordt gecodeerd als Tuple(Float64, Float64, Float64).
De cyclus voor het modelleren van meerdere lichtweerspiegelingen van oppervlakken is geïmplementeerd via de SQL-functie arrayFold en wordt binnen elke rij uitgevoerd om de rendering te parallelliseren. Van geometrische primitieve vormen worden cilinders, torussen, sferen en georiënteerde parallellepipedums ondersteund, waarop bewerkingen voor unie en verschil (verwijdering van overlappen) worden uitgevoerd. Het landschap wordt wiskundig gegenereerd.

Eerder hebben ontwikkelaars van de database ClickHouse een Doom-achtige game, een RISC-V emulator en een muziek synthesizer ontwikkeld, allemaal geschreven in SQL.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster