Seite 1 von 5

Echtzeit-Raytracing

Verfasst: 29.05.2005 19:45
von Deeem2031
Seitdem DarkDragon hier im Forum einen Link zu einer Beschreibung von Subsampling bei Raytracing geschrieben hat, hab ich (mal wieder) ein wenig mit Raytracing rumexperimentiert. Aber diesmal ist sogar etwas halbwegs Sinnvolles bei rausgekommen ;)
Es läuft zwar nicht sonderlich schnell (bei mir 4-11 FPS), aber es ist auch alles in PB geschrieben und kein bischen optimiert. Subsampling ist bisher auch nur in der Horizontalen eingebaut, dort liegt also auch nochmal ein Möglichkeit das Programm zu optimieren.

Download: www.deeem2031.de/Raytracing.exe

Steuerung:

Pfeiltasten,a,y: Kamera bewegen
e,s,d,f: Kamera drehen
F1: Zeigt welche Pixel berechnet wurden
F2: unwichtig (buggy)
F3: Kamera um die Kugeln drehen
+,-,1,2: Eigenschaften vom Subsampling verändern
3,4: maximale Anzahl von Reflektionen verändern

Und noch ein Screenshot:

Bild

Das Ganze ist wie gesagt mehr Spielerei als Ernst, ich wollte aber trotzdem mal eure Meinung dazu hören ;)

BTW. das die Kamera nicht richtig funkioniert (die Kugeln werden unter bestimmten umständen schief/länglich) weiß ich.

Verfasst: 29.05.2005 19:52
von DarkDragon
Nicht schlecht herr specht. Läuft sogar aufm Laptop noch ziemlich flüssig.

Verfasst: 29.05.2005 20:50
von Norbie
Wo liegt der Sinn? :?

Verfasst: 29.05.2005 21:05
von DarkDragon
Norbie hat geschrieben:Wo liegt der Sinn? :?
Realitätsgeträue schnellstmöglich rendern.

Verfasst: 29.05.2005 21:32
von remi_meier
RESPEKT :shock:

Verfasst: 29.05.2005 22:29
von Darky
:o :allright: :freak: ( Mehr gibts da net zu sagen :lol: :lol: :lol: )

Verfasst: 30.05.2005 01:39
von Epyx
WoW sehr beeindruckend :shock:

Re: Echtzeit-Raytracing

Verfasst: 30.05.2005 03:48
von Danilo
Deeem2031 hat geschrieben:Es läuft zwar nicht sonderlich schnell (bei mir 4-11 FPS), aber
es ist auch alles in PB geschrieben und kein bischen optimiert.
Wenn Du das ganze mit einem DirectX-Screen machst und direkt
in den VideoSpeicher schreibst (bzw. mit einem Hauptspeicher-
bereich arbeitest und den dann komplett in den VideoMem kopierst),
dann kannst Du das alles bestimmt noch um einiges beschleunigen.

Die Textausgabe sollte dann mit einem Spritefont erfolgen. Dazu
vielleicht noch eine Taste um die Schrift ganz abzuschalten.

Ich denke mal das Du da gegenüber GDI (SetPixelV, TextOutA, etc.)
noch einiges rausholen kannst.

Verfasst: 30.05.2005 13:47
von DarkDragon
LOL das ding nutzt GDI? ^^ Das is ja mal krass.

Verfasst: 30.05.2005 13:54
von Deeem2031
Jo, alles "geplottet" :mrgreen:
Ich wollte mich ja erstmal nur auf das eigentliche Raytracing konzentrieren und nicht darauf was ich ich wo in den Speicher schreiben muss. Und solange nicht alles so funktioniert wie es soll, werd ich auch nicht damit anfangen es zu optimieren. Zum Testen reichen mir 3 FPS...

@Danilo: Danke für die Tips - auch wenn ich das schon vorher wusste ;)