[3d] Raytracing - De toekomst?

Pagina: 1
Acties:
  • 363 views sinds 30-01-2008

Acties:
  • 0 Henk 'm!

  • TrasherXL
  • Registratie: September 2002
  • Laatst online: 11-03 11:51

TrasherXL

Bicky burger for life

Topicstarter
Op born2oc las ik een artikel over Ray Tracing, een nieuwe implementatie, zowel software als hardwarematig voor 3D acceleratie.

Hier een geheel nieuwe quake III: http://graphics.cs.uni-sb.de/~sidapohl/egoshooter/ volgens het RayTracing principe.

Tot nu toe wordt elk spel softwarematig gerenderd volgens het raster-principe. Dit wordt bijvoorbeeld in elke Geforce toegepast.

Voordelen van ray-tracing:
-complexe geometrie kan worden toegepast
-makkelijke coding
-licht en shaduw makkelijk te implementeren

Voor deze techniek toe te passen in software @ 20fps is tot nu toe een cluster van
20 amd xps nodig, maar hardware matig kan een simpele enkele pipeline chip al een 3x zo hoge prestatie neerzetten.

Een prototype van de hardware is al gemaakt:
http://www.saarcor.de/

Screentje van de q3 raytracing demo
http://graphics.cs.uni-sb...ter/screenshots/fight.JPG

Voor meer informatie zie bovenstaande sites.

[ Voor 9% gewijzigd door TrasherXL op 11-06-2004 18:51 ]

ASUS Commando | Core2Duo E6600 @ 3Ghz air-cooled | Geforce 8800GTX | Raid-0 | 4 GB DDR2-800


Acties:
  • 0 Henk 'm!

  • Maverick
  • Registratie: Oktober 2001
  • Laatst online: 18:55
hm, lijkt een beetje op die PerPixelLighting die je ook voor quake kunt krijgen. ziet er wel netjes uit imho. Dit is geloof ik weer iets geavanceerder :?

PSN: DutchTrickle PVoutput


Acties:
  • 0 Henk 'm!

  • TrasherXL
  • Registratie: September 2002
  • Laatst online: 11-03 11:51

TrasherXL

Bicky burger for life

Topicstarter
Ja maar let op! Dit is een heel andere techniek! Gaat om totale andere hardware aanpak zowel als software aanpak. Het is geen quake mod maar een totaal nieuwe implementatie van de engine!

Het gaat dus niet op quake! Er zijn ook al andere test implementaties voor ray tracing te vinden op de sites.

[ Voor 26% gewijzigd door TrasherXL op 11-06-2004 18:55 ]

ASUS Commando | Core2Duo E6600 @ 3Ghz air-cooled | Geforce 8800GTX | Raid-0 | 4 GB DDR2-800


Acties:
  • 0 Henk 'm!

  • -DarkShadow-
  • Registratie: December 2001
  • Niet online
Hier stond laatst een discussie over op Gamedev.net. De berekeningen voor graphics zijn dermate anders dat GPU's er altijd beter in zullen zijn dan CPU's. Dat voordeel is groter dan alle andere voordelen.

Specialist in:
Soldeerstations
Oscilloscoop


Acties:
  • 0 Henk 'm!

  • tonyisgaaf
  • Registratie: November 2000
  • Niet online
Een leuke ontwikkeling, die zeker kan gaan zorgen voor de betere 'cinematografische' kwaliteiten in games! Ik heb even vluchtig over de verschillende door je gelinkte sites gekeken en was vooral verbaasd over de geclaimde performance. Op zich wel logisch, want raytracing is op zich een ontzettend simpele berekening, die echter wel gigantisch vaak herhaald moet worden.
Dat de simpele door hen ontwikkelde chip echter zo'n enorme performance boost tot gevolg heeft, betekent misschien wel dat de huidige hardware developers weer eens even 'out of the box' moeten gaan denken over de toekomst van virtuele 3d.
Toevallig had ik het vanmiddag met iemand in de trein over de ontwikkelingen van juiste 3d modellen voor oppervlakken. Bijvoorbeeld de huid: waar vroeger werd uitgegaan van een oppervlak met een bepaalde matheid, kleur en textuur bijvoorbeeld, weet men nu dat een veel realistischer huid te renderen valt door middel van de emulatie van de werkelijkheid: een groot aantal lagen op elkaar met elk een eigen transparantie, reflectie, kleur en textuur. Hiervoor is alleen ray-tracing geschikt om een natuurgetrouw resultaat te krijgen. Genoemd voorbeeld heeft overigens niet alleen betrekking op de huid, maar bijvoorbeeld ook gelakt hout, semi-transparant plastic, ander organisch materiaal, etc. Alles wat gelamineerd is en over een bepaalde transparantie en reflectie bezit. Als gespecialiseerde hardware dit realtime op het beeldscherm kan toveren, betekent dit het einde van de rasterization en domme technieken als 'adaptive z-buffer' en wordt eindelijk berekend waar het daadwerkelijk om gaat: licht.
Voor mij een leuke inspiratie bron, merci!

NL Weerradar widget Euro Stocks widget Brandstofprijzen widget voor 's Dashboard


Acties:
  • 0 Henk 'm!

  • oeLangOetan
  • Registratie: Maart 2002
  • Laatst online: 05-06 18:00
tonyisgaaf schreef op 11 juni 2004 @ 22:26:
Bijvoorbeeld de huid: waar vroeger werd uitgegaan van een oppervlak met een bepaalde matheid, kleur en textuur bijvoorbeeld, weet men nu dat een veel realistischer huid te renderen valt door middel van de emulatie van de werkelijkheid: een groot aantal lagen op elkaar met elk een eigen transparantie, reflectie, kleur en textuur. Hiervoor is alleen ray-tracing geschikt om een natuurgetrouw resultaat te krijgen. Genoemd voorbeeld heeft overigens niet alleen betrekking op de huid, maar bijvoorbeeld ook gelakt hout, semi-transparant plastic, ander organisch materiaal, etc.
Voor alle materialen moet je ook in ray-tracing shaders schrijven, dat is juist waar ray-tracing bijna geen voordelen heeft!

Acties:
  • 0 Henk 'm!

  • ErikRo
  • Registratie: Juni 2001
  • Laatst online: 20-05 15:08
Raytracing is al mooi, maar ik las pas iets over een andere techniek. Die weer een realistischer beeld zou geven dan Rt (vraag me alleen niet wat het was)

"I don't have any solution but I certainly admire the problem." -- Ashleigh Brilliant


Acties:
  • 0 Henk 'm!

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Eh, 'mooier beeld' dan raytrace kan niet, omdat raytracing een simulatie van een real-life situatie is. Het is maar net hoe 'netjes' je de raytracing toepast, en hoeveel vertexes je in je scène hebt, en hoe gedetailleerd je scène is. Sky is the limit - evenals het geheugen van je computer / grafische kaart ;-). De computer bekijkt voor elke pixel op het scherm wat je ziet welk object je ziet, en hoe een lichtstraal op het object zou moeten vallen om naar die pixel die we net bekeken te reflecteren. Zo volg je het pad terug naar de lichtbron, en bereken je ook nog eens de kleur van de pixel. Op dit manier kun je dus zeer realistische beelden genereren.

Ik hoop dat deze ontwikkeling doorgezet wordt; op die manier komen er mogelijk in de toekomst misschien wat betaalbaardere kaarten die onder andere professionele producten als 3d Studio Max en Maya kunnen versnellen in het werkelijk renderen van beelden. Veelal gebeurt dit nu nog door toepassing van veel zware cpu's.

[ Voor 14% gewijzigd door HunterPro op 12-06-2004 21:23 ]


Acties:
  • 0 Henk 'm!

  • Sir_Killalot
  • Registratie: Januari 2001
  • Laatst online: 13:28
Ray tracing benchmark: http://www.realstorm.de/

Acties:
  • 0 Henk 'm!

Anoniem: 80154

Bij deze dank voor de _zeer_ interessante links!

Het lijkt erop dat deze heren de Graphics Hardware 2004 op z'n kop gaan zetten _/-\o_.
Het potentieel van een hardwarematige realtime raytracer is werkelijk niet te geloven. Mochten alle filmpjes en tests kloppen dan gaat dit inderdaad de toekomst van 3d-computer weergave veranderen.
Er zal niet meer geklooid hoeven te worden om realtie zaken als belichting door middel van trucjes aan een aanvaardbare framerate op je scherm te toveren. Dit is zoals HunterPro al aangeeft eenvoudigweg een hardwarematige implementatie van het principe zoals ons oog / onze hersenen de wereld in zich opnemen. <- Het registreren van binnenvallend licht.
De snelheid waarmee enorm complexe scenes weer worden gegeven op hun prototype zegt genoeg; dit project wordt een knaller van formaat!
....Maybe wordt ik iets te enthusiast, maar wat wil je als je je de hele avond / nacht al verveeld ;)

Acties:
  • 0 Henk 'm!

  • 4VAlien
  • Registratie: November 2000
  • Laatst online: 24-06 09:47

4VAlien

Intarweb!

Dit wordt pas echt nuttig als de gemiddelde polygoon minder of maximaal een pixel in beslag neemt, tot dan is het renderen met polygonen erg effectief (vooral als je fps wilt) en de technieken daarvoor zijn natuurlijk beter ontwikkeld op dit moment. Raytracing lijkt me nog iets voor de toekomst (5-10 jaar)

Acties:
  • 0 Henk 'm!

  • ErikRo
  • Registratie: Juni 2001
  • Laatst online: 20-05 15:08
HunterPro schreef op 12 juni 2004 @ 21:22:
Eh, 'mooier beeld' dan raytrace kan niet, omdat raytracing een simulatie van een real-life situatie is. Het is maar net hoe 'netjes' je de raytracing toepast, en hoeveel vertexes je in je scène hebt, en hoe gedetailleerd je scène is. Sky is the limit - evenals het geheugen van je computer / grafische kaart ;-). De computer bekijkt voor elke pixel op het scherm wat je ziet welk object je ziet, en hoe een lichtstraal op het object zou moeten vallen om naar die pixel die we net bekeken te reflecteren. Zo volg je het pad terug naar de lichtbron, en bereken je ook nog eens de kleur van de pixel. Op dit manier kun je dus zeer realistische beelden genereren.

Ik hoop dat deze ontwikkeling doorgezet wordt; op die manier komen er mogelijk in de toekomst misschien wat betaalbaardere kaarten die onder andere professionele producten als 3d Studio Max en Maya kunnen versnellen in het werkelijk renderen van beelden. Veelal gebeurt dit nu nog door toepassing van veel zware cpu's.
Toch vind ik al die raytrace plaatjes zo overdreven glanzen, alles is zo kunstmatig scherp en perfect, dat het zo duidelijk nep is.
Weet niet precies hoe ik het moet uitleggen, maar in de echte wereld glanst ook niet alles je tegemoet. Alsof alles van een laagje olie is voorzien.
Wat meer "dof" kan geen kwaad.

Die quake demo ziet er wel leuk uit, vooral die shaduwen en lichtval bewegen realistisch en dat geeft meteen het gevoel van erbij aanwezig zijn.

"I don't have any solution but I certainly admire the problem." -- Ashleigh Brilliant


Acties:
  • 0 Henk 'm!

  • tonyisgaaf
  • Registratie: November 2000
  • Niet online
Het overdreven glanzen van het plaatje heeft waarschijnlijk meer te maken met hoe de omgeving geprogrammeerd is dan met de raytracing techniek. Het is gewoon verdomde moeilijk om de imperfectie van de werkelijkheid na te bootsen.

NL Weerradar widget Euro Stocks widget Brandstofprijzen widget voor 's Dashboard


Acties:
  • 0 Henk 'm!

  • -=unicron=-
  • Registratie: Maart 2001
  • Laatst online: 07-07 12:20

-=unicron=-

Betrayal can never be forgiven

Ik ben al een tijd aan het spelen met Parthenon Renderer (GPU assisted global illumination renderer) Dit is een super cool prog. Ik weet nog een paar prog's maar die moet ik effe zoeken. ;)

AMD Ryzen 7 3800X/MSI MPG X570 Gaming Plus/HyperX Fury RGB HX432C16FB3AK2/64/Inno3D GeForce RTX 3060 TWIN X2 OC 12GB/Samsung SSD 850 EVO 500GB/2XSamsung 870 QVO 2TB


Acties:
  • 0 Henk 'm!

  • Dr. Cheeks
  • Registratie: Oktober 2000
  • Laatst online: 07-06 12:04
HunterPro schreef op 12 juni 2004 @ 21:22:
Eh, 'mooier beeld' dan raytrace kan niet, omdat raytracing een simulatie van een real-life situatie is. <snip>.
Eh, sorry dat ik je uit de droom moet helpen, maar raytracen is totaal geen simulatie van de 'werkelijkheid'. Het is slechts een zeer eenvoudige benadering, een model, en niets meer dan dat.

Om een voorbeeld te noemen: raytracing gaat er vanuit dat alleen lichtbronnen een scene direct verlichten. Terwijl in de werkelijkheid ieder oppervlak elk ander oppervlak in meer of mindere mate belicht (indirect). Daarom leveren raytrace plaatjes ook zeer 'neppe' gladde beelden op. Een techniek die al beter is, is bijvoorbeeld radiosity. Dan wordt wel alle indirecte belichting berekend. (Jij hebt het over Studio Max, en dan zul je weten dat wanneer je een scene bouwt het niet volstaat om slechts de 'echte' lampen te plaatsen. Om een mooie egale belichting te krijgen moet je allerlie hulp-lampen plaatsen. Waarom? Omdat raytracen zeer beperkt is... Of je zet in Max global illumination aan. Maar dat is dus geen raytracen meer. >:))

Maar het is nooit de werkelijkheid. Geen enkele van deze technieken zal bijvoorbeeld als vanzelf een regenboog opleveren wanneer wit licht door een prisma heen valt. (Licht wordt niet gezien als bestaande uit veel verschillende frequenties, nog zo'n tekortkoming.)

[ Voor 24% gewijzigd door Dr. Cheeks op 14-06-2004 18:27 ]


Acties:
  • 0 Henk 'm!

  • Arjan
  • Registratie: Juni 2001
  • Niet online

Arjan

copyright is wrong

UNICRONBOT schreef op 14 juni 2004 @ 18:00:
Ik ben al een tijd aan het spelen met Parthenon Renderer (GPU assisted global illumination renderer) Dit is een super cool prog. Ik weet nog een paar prog's maar die moet ik effe zoeken. ;)
ben het eens met UNICRONBOT, wil je realisme dan wil je GI, of iig een verdomd goede fake van hetzelfde effect. Ik gok dan ook dat het niet meer lang duurt voordat het T&L gedeelte opgesplitst word in een appart lightning gedeelte, aangezien hier enorm veel processor power voor nodig gaat zijn. Maar de resultaten zijn ten alle tijden verbluffend. realisme zit voor 90% in de correcte belichting, kijk maar naar de show je 3d threads. Plaatjes met GI spreken gewoon meer, zelfs als er geen aandacht aan de belichting is gegeven en er gewoon een skylight in de scene is geklikt.

oprecht vertrouwen wordt nooit geschaad


Acties:
  • 0 Henk 'm!

  • ErikRo
  • Registratie: Juni 2001
  • Laatst online: 20-05 15:08
Die Gi ziet er inderdaad een stuk beter en vooral echter uit.
Hoeveel langzamer is dit eigenlijk dan raytracing?

"I don't have any solution but I certainly admire the problem." -- Ashleigh Brilliant


Acties:
  • 0 Henk 'm!

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Dr.Cheeks schreef op 14 juni 2004 @ 18:17:
[...]

Eh, sorry dat ik je uit de droom moet helpen, maar raytracen is totaal geen simulatie van de 'werkelijkheid'. Het is slechts een zeer eenvoudige benadering, een model, en niets meer dan dat.

Om een voorbeeld te noemen: raytracing gaat er vanuit dat alleen lichtbronnen een scene direct verlichten. Terwijl in de werkelijkheid ieder oppervlak elk ander oppervlak in meer of mindere mate belicht (indirect). Daarom leveren raytrace plaatjes ook zeer 'neppe' gladde beelden op. Een techniek die al beter is, is bijvoorbeeld radiosity. Dan wordt wel alle indirecte belichting berekend. (Jij hebt het over Studio Max, en dan zul je weten dat wanneer je een scene bouwt het niet volstaat om slechts de 'echte' lampen te plaatsen. Om een mooie egale belichting te krijgen moet je allerlie hulp-lampen plaatsen. Waarom? Omdat raytracen zeer beperkt is... Of je zet in Max global illumination aan. Maar dat is dus geen raytracen meer. >:))

Maar het is nooit de werkelijkheid. Geen enkele van deze technieken zal bijvoorbeeld als vanzelf een regenboog opleveren wanneer wit licht door een prisma heen valt. (Licht wordt niet gezien als bestaande uit veel verschillende frequenties, nog zo'n tekortkoming.)
De basis van raytracing; het terug-tracen van een lichtpunt naar de bron, bevat wel degelijk dergelijke dingen. Daarom moet je radiosity aanzetten _in je raytrace engine_. Het staat simpelweg uit vanwege performance, maar radiosity etc is wel degelijk een onderdeel van raytracing als theorie. Raytracing omschrijft immers niet zozeer een techniek als radiosity, maar het feit dat licht weerkaatst wordt. En hoe dat gebeurt hangt af van de kwaliteit van je tracer. Ook het breken van licht kan daarbij horen; je tracer moet het alleen wel ondersteunen. Ik weet bijvoorbeeld dat Brazil wel licht kon breken.

Acties:
  • 0 Henk 'm!

  • Arjan
  • Registratie: Juni 2001
  • Niet online

Arjan

copyright is wrong

ErikRo schreef op 15 juni 2004 @ 09:23:
Die Gi ziet er inderdaad een stuk beter en vooral echter uit.
Hoeveel langzamer is dit eigenlijk dan raytracing?
oneindig langzamer :)
raytracing renderd dat wat zichtbaar is, GI renderd alles wat invloed heeft op het zichtbare. Je snapt dat je dit laatste tot in de oneindigheid door kan trekken. Elke reflectie en weerkaatsing wordt een lichtbron, die weer een lichtbron wordt etc. :)
je ontkomt niet aan heel veel rekenwerk. de echte truuk zit hem in het optimaliseren van de berekeningen.

oprecht vertrouwen wordt nooit geschaad


Acties:
  • 0 Henk 'm!

  • Dr. Cheeks
  • Registratie: Oktober 2000
  • Laatst online: 07-06 12:04
HunterPro schreef op 15 juni 2004 @ 12:22:
[...]


De basis van raytracing; het terug-tracen van een lichtpunt naar de bron, bevat wel degelijk dergelijke dingen. Daarom moet je radiosity aanzetten _in je raytrace engine_. Het staat simpelweg uit vanwege performance, maar radiosity etc is wel degelijk een onderdeel van raytracing als theorie. Raytracing omschrijft immers niet zozeer een techniek als radiosity, maar het feit dat licht weerkaatst wordt. En hoe dat gebeurt hangt af van de kwaliteit van je tracer. Ook het breken van licht kan daarbij horen; je tracer moet het alleen wel ondersteunen. Ik weet bijvoorbeeld dat Brazil wel licht kon breken.
Toch is radiosity geen raytracing. Indirecte difuse belichting is iets wat buiten de gebruikelijke definities van raytracing valt. Dat een raytrace-engine ook radiosity features heeft is mooi, maar verandert daar niets aan. Dat is gewoon een extra feature. (Dat je in een Word-tabel ook Excel-achtige berekeningen kan doen is mooi, maar dat maakt een spreadsheet nog geen tekstverwerkings-taak.)

Inderdaad zijn er raytracers die wel de multi-spectrale eigenschappen van licht aan kunnen (en dus ook regenbogen kunnen genereren). Maar dan werkt bijvoorbeeld een tralie-opstelling niet (waar licht een donker-licht patroon opwekt vanwege het deeltjes-karakter wat licht ook kan vertonen). Ik wil alleen maar zeggen dat jouw bewering dat raytracen de werkelijkheid nadoet onzin is. Raytracen is een (beperkt) model van belichting. Net als een rasterizer. En net als radiosity. Het zijn allemaal benaderingen. De een beter dan de ander, maar allemaal zeer beperkt en zeker niet simulaties van de 'werkelijkheid'. Dan zou je fotonen moeten gaan volgen met quantum-mechanische regels (wat ook maar modellen zijn, de beste modellen die we momenteel kennen, maar niets meer dan dat) en de wereld op atomair niveau moeten gaan modellen. Dan duurt een simpele redering wel een paar eeuw om uit te rekenen :)

Global illumination (zoiets als radiosity) is echt iets anders dan raytracen. In een pure raytracer kan een niet lichtgevend, niet reflecterend object nooit aan de belichting van een ander object bijdragen. In de echte wereld gebeurt dit altijd (een beetje).

Maar wij zullen wel van mening verschillen over of je radiosity nu wel of geen raytracing mag noemen. Ik kan je alleen vertellen dat een radiosity-engine geen 'rays traced' om indirecte belichting uit te rekenen. Dat gebeurt door een massaal stelsel van simultane vergelijkingen op te lossen (één vergelijking per oppervlak [of polygon]). Dit staat los van de 'rays' per pixel die terug de scene in getraced worden totdat een lichtbron bereikt wordt of de straal de oneindigheid in ontsnapt.

(Omdat radiosity een kwestie is van een massaal stelsel van vergelijkingen oplossen is, kan als dit eenmaal gedaan is zonder veel berekeningen rondgelopen worden door de scene. [Gegeven dat niets beweegt en lampen ook niet veranderen.] Er is immers al uitgerekend hoe ieder oppervalk zich tot elk ander oppervlak verhoudt. Geinig is dat. De eerste real-time raytracer van complexe scenes moet ik nog zien :o )

[ Voor 24% gewijzigd door Dr. Cheeks op 15-06-2004 15:47 ]


Acties:
  • 0 Henk 'm!

  • Dr. Cheeks
  • Registratie: Oktober 2000
  • Laatst online: 07-06 12:04
<foutje>

[ Voor 152% gewijzigd door Dr. Cheeks op 15-06-2004 15:51 ]


Acties:
  • 0 Henk 'm!

Anoniem: 95864

Nog een paar dagen wachten mensen maar dan releasen wij ons spel/techdemo gebruik makend van Arauna *weg* op het moment een van de snelste realtime ray tracers.

De trailer is al te zien hier: *weg*

Have fun

[ Voor 14% gewijzigd door Pollewob op 25-06-2008 07:38 ]


Acties:
  • 0 Henk 'm!

  • Maarten L
  • Registratie: April 2004
  • Laatst online: 26-05 21:56
Owk, mij ontgaat nu even het speciale hieraan. Ik begrijp dat hiermee super realistische beelden tevoorschijn kunnen worden getoverd? Echter vind ik de filmpjes niet bijster 'wow'? Of .. mis ik iets =)

www.maartenlangelo.nl


Acties:
  • 0 Henk 'm!

  • Pollewob
  • Registratie: December 2000
  • Niet online
Het is niet de bedoeling dat je zo'n oud topic kickt met reclame voor je eigen project. Lees de regels omtrent spam even goed door svp :)
Pagina: 1

Dit topic is gesloten.