Raycasting
-
Hallo,
Ich arbeite mit Visual Studio 2008, und benutze C++ und OpenGL mit GLSL für die Shaders. Nun wollte ich mich mit der RayCasting Methode intensiv beschäftigen. Ich wollte mal einen Quader darstellen mit Hilfe der Methode des Raycasting, doch ich weiss jetzt nicht wie ich jetzt anfangen soll, damit ich den schnittpunkt zwischen Strahl und Quader heraus finden kann! Ich bin für jede Hilfe sehr dankbar.
Gruss
-
du berechnest pro pixel den strahl, berechnest pro strahl den schnitpunkt mit deinem quader, wendest daraufhin das von dir gewuenschte shading an und schreibst den pixel.
alles eigentlich sehr simple dinge. wo genau hast du probleme dabei?
-
Die Theorie habe ich auch verstanden, doch wie ich die Schnittpunkte von Strahl und Pixel berechne, habe ich noch nicht herausgefunden.
Wie muss ich mich da anstellen um die richtigen Pixel zufinden wenn ich die Länge Höhe und Breite des Quaders kenne?
-
Da kann ich das Buch "Physical based rendering" nur wärmstens empfehlen:
http://www.pbrt.org/Gruß Kimmi
-
das ist lieb, aber ich habe leider keine Zeit um das buch zu lesen, kanns du mir nicht einen kleinen denkanstoss geben?
-
ClaudeG schrieb:
das ist lieb, aber ich habe leider keine Zeit um das buch zu lesen, kanns du mir nicht einen kleinen denkanstoss geben?
Nimm ein Buch bzw. ein Tutorial über Vektorgeometrie deiner Wahl und beschäftige dich mit Schnittpunkten. Am einfachsten ist es, wenn du mit Strahlen & Kugeln anfängst. Dort musst du dich nur noch mit der Kugelgleichung beschäftigen.
Dann definierst du einen Augpunkt in der Szene, die du rendern möchtest, sowie die Blickrichtung und einen Up-Vektor. Für jeden Pixel auf dem Image, welches du renders addierst du einen bestimmten Vektor zu Augpunkt und Blickrichtung und sendest dann einen Strahl dort hin und tust, wie Rapso gesagt hat.
Alles ist viel einfacher, als es klingt
-
ClaudeG schrieb:
Die Theorie habe ich auch verstanden, doch wie ich die Schnittpunkte von Strahl und Pixel berechne, habe ich noch nicht herausgefunden.
wieso nicht? was ist daran so schwer? im vergleich zum implementieren und verstehen duerfte googlen doch echt trivial sein, wie kann man daran scheitern?
-
Ich habe ja schon gegoogle, aber habe nichts gefunden wo ich gesehen habe wie man einen Quader erstellt mit Hilfe von RayCasting, wenn ich etwas gefunden hätte würde ich mich ja nicht hier im Forum an euch wenden.
-
-
Irgendwie glaube ich nicht, das bei dir momentan mehr rauskommt als einen Beispielcode kopieren und verfummeln.
-
dot schrieb:
Diese Seite ist wirklich super, auch wenn nicht mehr alle Links brauchbar sind
-
ClaudeG schrieb:
Die Theorie habe ich auch verstanden
ClaudeG schrieb:
doch wie ich die Schnittpunkte von Strahl und Pixel berechne, habe ich noch nicht herausgefunden.
nein Freundchen, genau deswegen hast du die Theorie eben nich verstanden !
-
Wer weiß, vielleicht hat ers in den letzten 2 Monaten ja dann doch verstanden...