Sistemi i ndjekjes së rrezatimit, i implementuar në gjuhën SQL

Aleksandër Milovidov, bashkëthemelues i DBMS ClickHouse, me ndihmën e asistentit AI Claude publikoi një sistem për ndriçimin me rrezet, të implementuar tërësisht në SQL. Rendering me simulimin e ndriçimit të bazuar në rrezet është realizuar si një SQL kërkesë pa funksione të përdoruesit (UDF) dhe pa lidhje me kodin e jashtëm. Për të nxjerrë grafikën, përdoret mundësia e DBMS ClickHouse për të ruajtur rezultatet e pyetjeve në formatin PNG. Projekti funksionon plotësisht kur ekzekutohet në DBMS ClickHouse, por me disa gabime dhe mund të punojë 33 herë më ngadalë në DBMS CedarDB. Projekti shpërndahet nën licencën Creative Commons BY-NC-SA.

Çdo piksel pĂ«rfaqĂ«son njĂ« rresht nĂ« njĂ« tabelĂ«, ku ka kolona me koordinatat (X, Y) dhe pĂ«rfaqĂ«simin e ngjyrĂ«s (R, G, B). Operacionet matematikore tĂ« nevojshme pĂ«r llogaritjet 3D janĂ« ndĂ«rtuar mbi tuple — vektori kodifikohet si Tuple(Float64, Float64, Float64).
Cikli për simulim të reflektimeve të shumta të dritës mbi sipërfaqe është implementuar përmes funksionit SQL arrayFold dhe ekzekutohet brenda çdo rreshti për të paralelizuar renderimin. Primitivat gjeometrikë që mbështeten janë cilindrat, torusët, sferat dhe paralelepipedët e orientuar, mbi të cilët kryhen operacione unifikimi dhe diferencimi (heqja e ndërprerjeve). Peizazhi gjenerohet në mënyrë matematikore.

Më parë, zhvilluesit e SGBD-së ClickHouse përgatitën një lojë të ngjashme me Doom të shkruar në SQL, një emulator RISC-V dhe një sintetizues muzike.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster