Sunflow ist ein Open-Source-Rendering-Engine für die fotorealistische Bildsynthese. Es ist in Java geschrieben und basiert auf einem flexiblen Raytracing-Kern und einem erweiterbaren objektorientierten Design. Es wurde als Rahmen für Experimente mit „Global Illumination“-Algorithmen und neuen Surface Shading Modellen entwickelt.

Render-Engine Sunflow

Aktuelle Features:

  • Vollständig erweiterbare Architektur. Fast jeder Aspekt des Renderers kann angepasst werden.
  • Benutzer erweiterbarer Funktion werden als Schnittstellen zur Verfügung gestellt, was die Integration in bestehende Anwendungen erleichtert.
  • Einfache API zur prozeduralen Szenenerstellung.
  • Direkte Illumination mit weichen Schatten von Flächenlichtern.
  • Adaptive Abtastung von Flächenlichtquellen.
  • Quasi-Monte Carlo Stichprobenarchitektur: Alle Stichprobenvorgänge sind vollständig deterministisch.
  • Depth of Field.
  • Kamera Motion Blur.
  • Multi-Threading.
  • Photon Mapping (für global Illumination und Kaustik).
  • Laufzeitkompilierung von Shadern.
  • Lazy Processing von Tesselation, Acceleration Structure Building und Texture Loading.
  • Erstellen von Lightmaps (Rendern in Texturen).
  • Instancing (viele Kopien desselben Objekts beanspruchen nur sehr wenig zusätzlichen Speicherbedarf).
  • Bucket Renderer.
    • Adaptives Anti-Aliasing (Over und Under Sampling).
    • Bucket-basiertes Rendering (programmierbare Reihenfolge).
    • Multi-Pixel Bildfilterung.
  • Renderer mit progressiver Verfeinerung.
  • Texture Mapping (JPG, PNG, TGA, HDR Loaders).
  • Bump Mapping.
  • Normal Mapping.
  • Benutzerdefiniertes Szenenformat: es gibt grundlegende Übersetzer für 3ds-Dateien und Blender.
  • Output-Formate: HDR, PNG, TGA, OpenEXR (nur gekachelt).
  • 100% in Java geschrieben.
  • Einfache Swing GUI mit progressiver Renderinganzeige und Konsole.
  • Einfacher Swing-Display-Treiber, der in andere Anwendungen eingebettet werden kann.
  • Primitive
    • Triangel Mesh.
    • Hair Curves.
    • Disk.
    • Sphere.
    • Torus.
    • Banchoff Surface.
    • Bezier-Patches (eingebaute Teekanne und Gumbo-Modelle) – auf Wunsch tesseliert.
    • Unbegrenzte Ebene.
    • Cube-Grid.
    • Cornell Box.
    • Julia Quaternion Fraktal.
    • Partikeloberfläche (große Mengen von Kugeln).
    • Programmierbar (Oberflächen können durch Java-Code, der bei Bedarf kompiliert und ausgeliefert wird, tesseliert werden).
  • Kamera-Linsen.
    • Pinhole.
    • Sphärisch (erzeugt eine Environment Map für Längen- und Breitengrad).
    • Dünnes Objektiv (erzeugt Tiefenschärfe-Effekt, einschließlich Bokeh).
    • Fisheye.
  • Ray Intersection Accelerators.
    • SAH KD-Tree.
    • Bounding Volume Hierarchie.
    • Uniform Grid.
    • Null (für einfache Szenen).
  • Surface Shader.
    • Diffuse.
    • Mirror.
    • Glass.
    • Phong.
    • Ambient Occlusion.
    • Glänzend diffus.
    • Anisotrophe Station.
    • Wireframe.
    • Programmierbar (in Java – kompiliert beim Laden der Szene).
  • Surface Modifier.
    • Bump Mapping.
    • Normal Mapping.
  • Light Sorces.
    • Point Light.
    • Directional Spotlight.
    • Triangle Area Light.
    • Bildbasiertes Licht mit unendlicher Fläche.
    • Physikalisch basiertes Sun-/Sky-System.
  • Photon Mapping Engines.
    • KD Tree.
    • Grid-Based.
  • Bildfilter.
    • Box.
    • Triangle.
    • Gaussian.
    • Blackman Harris.
    • Catmull-Rom.
    • Mitchell.
    • Lanczos.
    • Sinc.
  • Bucket Orderings.
    • Hilbert.
    • Spiral.
    • Row.
    • Column.
    • Diagonal.
    • Random.
  • Global Illumination Engines.
    • Irradiance Caching.
    • „Instant GI“ basierend auf „Illumination in der Gegenwart schwacher Singularitäten“.
    • Path Tracing.
    • Fake Ambient Term.
    • Ambient Occlusion.

Geplante Features:

  • Dokumentation.
  • Unendliches progressives Rendering.
  • Shader-Graphen.
  • Verbesserte Shader-API.
  • Dataflow-Formulierung der Rendering-Pipeline.
  • Erweiterte Swing GUI mit Support für alle Renderingoptionen.
  • Volume Shader für eingebettete Medien.
  • Geometrische und leichtes Source Motion Blur.
  • Spektrales Rendering.

Ich hoffe, dass wir ihnen mit diesem Beitrag einen ersten kleinen Überblick zu Sunflow verschaffen konnten. Sollten Sie noch Anmerkungen oder Fragen haben, hinterlassen Sie uns unten einen Kommentar.

Vielen Dank für ihren Besuch.