-
Notifications
You must be signed in to change notification settings - Fork 328
Browsing appleseed Source Code
Jonathan Topf edited this page Sep 19, 2019
·
15 revisions
The team at Woboq is kindly hosting a fully cross-referenced version of appleseed's source code (but it is unfortunately quite outdated): https://code.woboq.org/appleseed/appleseed/
-
appleseed/foundation/
: base code, utilities, etc. Nothing specific to rendering. -
appleseed/renderer/
: the entire renderer is there. -
appleseed/main/
: entry point of the appleseed shared library / DLL.
-
appleseed/foundation/math/bvh/
: generic BVH implementation. -
appleseed/foundation/math/intersection/
: low-level intersection primitives.
-
appleseed/renderer/kernel/intersection/
: intersection subsystem, built on top of the generic BVH code and relying on the low-level intersection primitives. -
appleseed/renderer/kernel/lighting/pathtracer.h
: generic path tracing loop used whenever a path needs to be traced. -
appleseed/renderer/kernel/lighting/pt/ptlightingengine.cpp
: unidirectional path tracer. -
appleseed/renderer/modeling/
: all the entities to model a scene are defined there. -
appleseed/renderer/modeling/bsdf/bsdf.h
: the interface that a BSDF must implement. -
appleseed/renderer/modeling/bsdf/lambertianbrdf.cpp
: implementation of one of the simplest BRDF, the Lambertian BRDF. -
appleseed/renderer/kernel/rendering/generic/genericsamplerenderer.cpp
: the code that renders a single pixel sample. -
appleseed/renderer/kernel/rendering/final/uniformpixelrenderer.cpp
: the code that renders a single pixel (uniform, non-adaptive sampling). -
appleseed/renderer/kernel/rendering/final/adaptivepixelrenderer.cpp
: the adaptive version.
-
appleseed.cli/main.cpp
: entry point of appleseed.cli, the command line interface of appleseed. -
appleseed.cli/main.cpp
: function that renders a project file in appleseed.cli. -
appleseed.studio/main/main.cpp
: entry point of appleseed.studio, the graphical user interface of appleseed.
The "hottest" functions when rendering (the ones that have the biggest impact on performance):