Alexandra Instituttets eksperter inden for realistisk interaktiv computergrafik er i gang med et konsulentprojekt for LEGO A/S, hvor der arbejdes med at tilføje avancerede lys og skyggeeffekter til LEGO Digital Designer (LDD).
LDD er et frit tilgængeligt program, som LEGO har udviklet, til at bygge LEGO-modeller i 3D på en almindelig computer. Konsulentaftalen med Alexandra Instituttet har løbet siden december 2009, og vi har i den forløbne tid implementeret en række teknikker, der giver en afgørende bedre realisme i den interaktive grafiske fremstilling af LEGO-klodser.
Det drejer sig om visuelle effekter som bløde skygger fra omkringliggende lys (ambient-occlusion) samt refleksioner af lys på farvede overflader (color bleeding). Disse visuelle fænomener er vigtige for en god forståelse af form, materiale og dybde og hjælper derfor brugeren af programmet til en mere intuitiv byggeoplevelse.
Projektet er bl.a. finansieret af:
Det samlede projektbudget, fordelt på projektets partnere er: kr. 600.000,00
Ønsker du yderligere information om dette projekt kan du henvende dig til Jesper Mosegaard.
Både ambient-occlusion og color-bleeding er i traditionelle formuleringer ikke mulige at implementere i et interaktivt produkt som LEGO Digital Designer. De er simpelthen for avancerede og derfor for langsomme at beregne og vise.
Det problem har vi løst ved at programmere ambient-occlusion (til bløde skygger) samt lokale farvede refleksioner som en post-processeringseffekt i screen-space. Det betyder, at disse effekter beregnes på en grov tilnærmelse af den faktiske 3D-scene, nemlig pixels med dybde. Men effekten er næsten lige så god som den ”ægte” vare - og meget hurtigere. Effekten kaldes i tekniske termer for "Screen Space Directional Occlusion" (SSDO).
Én af grundene til at dette kan lade sig gøre er, at vi kan udnytte GPU’en til fulde, og at netop dette visuelle fænomen er lavfrekvent og derfor ikke så følsomt over for den type approksimation, vi laver. Vi her ydermere programmeret globale refleksioner (både spejl-, glossy og diffuse refleksioner) som en voxel baseret effekt, hvor vi simulerer lysets udbredelse efter at det har ramt en overflade første gang (Light Probagation Volumes).
Senest har vi set på hvordan sådanne effekter kan kombineres med højkvalitets anti-aliasing, dvs. at undgå "hakker" i 3D-grafikken pga. en manglende opløsning på skærmen.
På sigt ønsker vi at opbygge en interaktiv grafik-motor, der kan levere lige så god kvalitet som traditionelle offline algoritmer (raytracing), der simulerer lysets generelle effekter.
Forbedringerne i form af SSDO er implementeret i LEGO Digital Designer 4.0.