Skip to main content

Hva er selvskygge?

Selvskygging er et begrep som beskriver omstendigheten der en del av et objekt kaster en skygge på seg selv.Eksempler på selvskygging inkluderer skyggen støpt av en menneskelig nese i ansiktet eller overleppen når lyskilden kommer ovenfra, eller skyggen som er støpt av setet til en stol på beina på stolen.Når begrepet brukes i datagrafikk og mdash;Spesielt datagrafikkprogrammering MDASH;Det er en referanse til skygger som er støpt av en scener tredimensjonale (3D) gjenstander på seg selv, eller skygger som blir kastet av dynamiske objekter på seg selv og gjenstander rundt dem.Arten av sanntids 3D-datagrafikkprogrammering får mange applikasjoner til å bruke teknikker som ofte fjerner muligheten for å gjengi selvskygger til fordel for andre optimaliseringer, selv om datamaskinens hastighet og egenskaper øker, sanntids selvskyggingsmetoderhar blitt mer tilgjengelig.Det er flere metoder for å gjengi sanntids selvskyggende objekter, men maskinvarebegrensninger gir vanligvis resultater som har noen ulemper, for eksempel unøyaktige skygger, skygger med kunstig harde kanter, eller scener som gjengir veldig sakte på grafikkort som ikke er utrolig raskt.

Én skille å gjøre når du snakker om selvskygge er forskjellen mellom statiske og dynamiske objekter i sanntidsgrafikk.Statiske objekter er 3D -objekter i en scene som ikke beveger seg og ikke har noen del av geometrien deres endret i løpet av gjengivelsen.Et dynamisk objekt er derimot et objekt som ikke er direkte festet til scenen på noen måte og kan være forskjellig fra en ramme til den neste.For det meste gjør de fleste statiske objekter og scener som ikke er i sanntid selvskygge, enten på grunn av gjengivelsesmotoren eller på grunn av andre grafiske triks som kan brukes.

Flere optimaliseringer som brukes til å gjengi sanntid 3DGrafikk gjør implementering av dynamisk selvskygge vanskelig.Noen eksempler inkluderer en grafikkmotor som bare bruker lyseffekter på statisk bakgrunn, og ignorerer dynamiske objekter som tegn i en scene, eller en motor som bare behandler objekter som silhuetter, uten bevissthet om intern geometri.Med økningen i grafikkprosessorer og datamaskiner, lar nye teknikker selvskyggede objekter vises i en sanntidsscene, med noen begrensninger og avveininger.

Shadow Volumes er en måte som selvskygging kan implementeres i en 3D-scene.Denne metoden lager i hovedsak 3D -objekter som opptar et lukket volum i en scene der en skygge er støpt, slik at gjengivelsen eller Shader kan utføre tester på om noe punkt er innenfor et skyggelagt volum for å bestemme hvordan den er tent.Andre metoder skaper skyggekart, eller omtrentlige skygger fra toppunktposisjoner, for å skape veldig diffuse skygger som ikke nødvendigvis følger troskapen til en kant.

Nesten alle metoder for selvskygge må utveksle verken hastighet eller kvalitet for å få et akseptabelt resultat.Kvalitetsproblemer kan skje ved bruk av raske, men lavoppløselige eller uklare teknikker som kan få noen selvskygger til å virke feil eller malplassert.Hastighetsproblemer oppstår når algoritmene som brukes krever for mye overhead per ramme eller forsøker å beregne skyggefremskrivninger for nøyaktig.Selv om det ikke er en enkelt standard selvskygge-produserende algoritme, inkluderer noen grafikkort naturlig akselerasjon for forskjellige metoder som kan øke hastigheten på noen teknikker.