Frage

Ich möchte mit einigen Grafiken Sachen spielen, um. Einfache Animationen und Dinge. Ich will auch mit Raytracing zum Herumtollen. Ich brauche Hilfe eine Bibliothek zu finden, die mir diese Dinge tun helfen. Ich habe ein paar Anforderungen:

  • Muss in der Lage Raytracing zu tun
  • Muss für eine Hochsprache sein (Python, .NET, etc.). Bitte keine C / C ++
  • Müssen gute Dokumentation, vorzugsweise mit Beispielen.

Kennt jemand eine gute Bibliothek kann ich täuschen verwenden um mit?

War es hilfreich?

Lösung

Ich glaube, es gibt nur wenige Menschen, die Zusammenstellung ray-Tracer mit XNA Game Studio .

Ein Beispiel hierfür mit dem Code kann an gesehen über werden:

  

Bespoke Software »Ray Tracing - Materialien

Andere Tipps

Hier finden Sie aktuelle blender.org -. Es ist ein Open-Source-3D-Projekt mit Python Scripting-Fähigkeiten

Das erste, was mir in den Sinn kommen, ist die beliebte Open-Source-P.O.V Raytracer (www.povray.org). POV Szenen sind komplett mit Skriptdateien definiert, und einige Leute aus Python-Code sie leicht zu erzeugen.

http://code.activestate.com/recipes/205451/

http: //-Kisten -unblog.blogspot.com/2007/04/easy-procedural-graphics-python-and-pov.html

Ich bin nicht bekannt, dass Bibliotheken, die Ihre Anfrage entsprechen.

(zumindest nicht, wenn ich den Code für meine eigene Tracer ... zu veröffentlichen entscheiden)

einen Tracer zu schreiben ist nicht wirklich so schwer, sowieso. Ich würde empfehlen dringend halten, eine Kopie bekommen von „An Introduction to Ray Tracing“ von Glassner. Es geht über die eigentliche Mathematik in relativ einfachen Bedingungen zu verstehen, und hat auch einen ganzen Abschnitt auf „wie einen Raytracer schreiben“.

Auf jeden Fall eine „Bibliothek“ ist gar nicht so viel Einsatz auf seine eigene - ziemlich jeder Raytracer hat seine eigenen internen Bibliotheken, aber sie sind auf dem Tracer spezifisch. Sie enthalten in der Regel:

  1. eine Basisklasse 3D-Objekte darstellen
  2. Subklassen, dass für jede geometrische Primitive
  3. Vektor- und Matrix-Klassen (3D und 4D)
  4. Texturierung Funktionen und / oder Klassen
  5. Licht Klassen verschiedenen Typen (Punkt-Licht, Punktlicht, etc.)

Für meinen eigenen Tracer habe ich tatsächlich die javax.vecmath Pakete für # 3 oben, hatte aber zu meinem eigenen Code für # 1 und # 2 basierend auf dem Glassner Buch zu schreiben. Das Ganze ist gut unter 2k Zeilen Code, und die meisten der einzelnen Klassen sind etwa 40 Zeilen lang.

Der gut entwickelt Raytracer, die Open-Source ist

Für Echtzeit-3D (es wird sprachabhängig natürlich) gibt es Jmonkeyengine (Java) nicht sicher ob das Ihre „Hochsprache“ Anforderung erfüllt.

Sie können eine 3D-Spiel Skriptsprache betrachten, wie GameCore oder Blitzbasic

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top