Source/Render/Cycles/SourceLayout

< Source‎ | Render‎ | Cycles

Cycles Source Layout

Modules

High level overview of Cycles modules

Folders

The source code is organized into folders as follows:

app/ Standalone session and network rendering server applications.
blender/ Python module and C++ extension to integrate with Blender.
blender/addon Python scripts for the Blender addon.
cmake/ Build and release files.
bvh/ Bounding volume hierarchy constructions for raytracing.
device/ Device abstraction.
device/cpu/ CPU device.
device/cuda/ CUDA device.
device/hip/ HIP device.
device/optix/ Optix device, based on CUDA.
doc/license/ Licenses.
integrator/ Host side code for path tracing integrator, invoking rendering kernels.
graph/ Generic scene node graph.
kernel/ Rendering kernel, that can run on the CPU or GPU.
kernel/closures/ BSDF closures used by svm and osl shader backend.
kernel/device/ Kernel code specific to CPU and GPU devices.
kernel/integrator/ Path tracing integrator kernels.
kernel/svm/ Shader virtual machine to execute shader graphs on the CPU and GPU.
kernel/osl/ OSL render services and shading engine, only runs on the CPU.
kernel/shaders/ OSL shaders used in the shader graph.
render/ Main render engine data structures and control flow.
subd/ Tesselation and subdivision surfaces.
test/ Unit tests.
util/ Utility code.