Last Updated on October 17, 2023
Sunflow Global Illumination Rendering System (Sunflow) is an open source rendering system for photo-realistic image synthesis.
It is built around a flexible ray tracing core and an extensible object-oriented design.
It was created as a framework for experimenting with global illumination algorithms and new surface shading models.
Features include:
- Fully extensible architecture. Almost every aspect of the renderer can be customized.
- User extensible features are exposed as interfaces, making it easy to integrate into existing applications.
- Simple API for procedural scene creation.
- Direct Illumination with soft shadows from area lights.
- Adaptive sampling of area light sources.
- Quasi-Monte Carlo sampling architecture: all sampling operations are fully deterministic.
- Depth of field.
- Camera motion blur.
- Multi-threading.
- Photon Mapping (for global illumination and caustics).
- Run-time compilation of shaders (via Janino).
- Lazy processing of tesselation, acceleration structure building and texture loading.
- Lightmap generation (render to texture).
- Instancing (many copies of the same object take up very little additional memory).
- Bucket renderer:
- Adaptive anti-aliasing (over and under sampling).
- Bucket based rendering (programmable ordering).
- Multi-pixel image filtering.
- Progressive refinement renderer.
- Texture mapping (JPG, PNG, TGA, HDR loaders).
- Bump mapping.
- Normal mapping.
- Custom scene format: basic translators exist for 3ds files and Blender.
- Output formats: HDR, PNG, TGA, OpenEXR (tiled only).
- Written 100% in Java.
- Simple Swing GUI with progressive rendering display and console.
- Simple Swing display driver that can be embedded in other applications.
- Primitives
- Triangle mesh.
- Hair curves.
- Disk.
- Sphere.
- Torus.
- Banchoff surface.
- Bezier patches (built-in teapot and gumbo models) – tesselated on demand.
- Infinite plane.
- Cube-grid (eg: Menger Sponge).
- Cornell Box.
- Julia Quaternion Fractal.
- Particle Surface (large sets of spheres).
- Programmable (surfaces can be tesseleated by Java code compiled and executed on demand).
- Cameras lenses:
- Pinhole.
- Spherical (produces a longitude/lattitude environment map.
- Thinlens (produces depth of field effects, including bokeh).
- Fisheye.
- Ray intersection accelerators:
- SAH KD-Tree.
- Bounding Interval Hierarchy (paper).
- Uniform grid.
- Bounding volume hierarchy.
- Null (for simple scenes).
- Surface shaders:
- Diffuse.
- Mirror.
- Glass (with absorption)
- Phong (with glossy reflections).
- Ambient occlusion.
- Shiny diffuse.
- Anisotropic ward.
- Wireframe.
- Programmable (in Java – compiled during scene loading).
- Surface modifiers:
- Bump mapping.
- Normal mapping.
- Light sources:
- Point light.
- Directional spotlight.
- Triangle area light (paper).
- Image-based infinite area light.
- Physically based sun/sky system (paper).
- Photon mapping engines:
- KD-Tree.
- Grid based.
- Image filters:
- 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” – based on “Illumination in the Presence of Weak Singularities” (Thomas Kollig, Alexander Keller).
- Path tracing.
- Fake ambient term.
- Ambient occlusion.
Website: sunflow.sourceforge.net
Support:
Developer: Christopher Kulla
License: MIT License
Sunflow is written in Java. Learn Java with our recommended free books and free tutorials.
Return to Graphics | Return to Renderers
Popular series | |
---|---|
The largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions. | |
Hundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information. | |
The Big List of Active Linux Distros is a large compilation of actively developed Linux distributions. | |
Replace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS. | |
Awesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series. | |
Machine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source. | |
New to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux. | |
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities. | |
Essential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users. | |
Linux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine. | |
Surveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal. | |
Saving Money with Linux looks at how you can reduce your energy bills running Linux. | |
Home computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum. | |
Now and Then examines how promising open source software fared over the years. It can be a bumpy ride. | |
Linux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged. | |
Linux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery. | |
Getting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers. | |
Best Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series. | |
These best free books accelerate your learning of every programming language. Learn a new language today! | |
These free tutorials offer the perfect tonic to our free programming books series. | |
Linux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts. | |
Stars and Stripes is an occasional series looking at the impact of Linux in the USA. |