ich bin zwar nicht dabei, den Tracer in Delphi zu implementieren, aber das Tutorial ist sehr gut für die Grundlagen. Damit ich dabei aber auch richtig was lerne und nicht nur kopiere, hab ich 2 Dinge, die ich bisher noch nicht verstanden habe.
1. In der Methode RayIntersect() ist in der zweiten Zeile das zu finden: ray.Origin -= Position; Ich verstehe nicht genau, warum das gemacht werden muss. Wenn ich den Ursprung des Rays nicht mit der Position der Sphäre subtrahiere, dann bekomme ich auch absolut nichts zu erkennen. Nur ich irgendwie bekomm ich den Grund nicht in meinen Kopf hinein.
Ich finde aber in anderen Quellen nur verweise auf die Diskriminante.
Ich hab ehrich gesagt auch noch nie gehört/gelesen (außer halt im Tut), dass das ne Determinante wäre. Muss aber deswegen nicht ne Verwechslung sein. zB heißt ausklammern (oder so ähnlich) in österreich herausheben (*1). Kann natürlich sein, dass das auch irgendwo anders heißt.
(*1): Zumindest hab ich mal gehört, dass einige Deutsche das nicht "herausheben" nennen. Also vermute ich mal, dass es in Deutschland nicht so heißt
Zitat:
ray.Origin -= Position;
Einfach deswegen, weil die Kugelgleichung viel einfacher ist, wenn die Kugel im Ursprung liegt. Nur sind Kugeln nicht besonders spannend, wenn sie nur im Nullpunkt liegen können. Und ob man die Kugel verschiebt, oder den Strahl in die andere Richtung ist egal (*2). Aber eines davon muss verschoben werden.
(*2): jedenfalls, wenn sich daraus kein Unterschied für die Koordinaten des Schnittpunkts ergeben, oder diese hinterher noch berücksichtigt werden.
Zitat:
ich bin zwar nicht dabei, den Tracer in Delphi zu implementieren
Sondern in c#? (sonst könntest du nicht "nur kopieren", jedenfalls nicht, wenn sich das Tut nicht geändert hat, seit ichs das letzte mal angeschaut hab^^)
Danke für die Antwort. Jetzt ist einiges klarer. ich implementiere das ganze in "good old" Java und konnte recht viel über nehmen. Aber wie sagte mir mal ein amerikanischer Kollege: never use code you don't understand.... daher meine Nachfrage
ach richtig, hab ganz vergessen dass c# mehr oder weniger ein nachgemachtes Java ist (wobei ich jetzt nicht weiß, inwieweit das wirklich stimmt, weil ich kein Java kann)
//edit: und ich hab auch vergessen, dass im Tut nicht erwähnt war, ob das c# oder Java ist. Oder wars erwähnt? na egal)
Ich finde aber in anderen Quellen nur verweise auf die Diskriminante.
Ich glaub es ist eine Diskriminante, zumindest steht die bei Wikipedia mit genau den gleichen Variabelnamen: http://de.wikipedia.org/wiki/Diskrimina ... _Gleichung Für eine Determinante bräuchte man irgendwie ein lineares Gleichungssystem...nichts quadratisches.
Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.