# openmoonray/openmoonray

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/openmoonray-openmoonray).**

4,693 stars · 304 forks · CMake · Apache-2.0

## Links

- GitHub: https://github.com/OpenMoonRay/openmoonray
- Homepage: https://openmoonray.org/
- awesome-repositories: https://awesome-repositories.com/repository/openmoonray-openmoonray.md

## Description

OpenMoonray is a production-grade physically based rendering system and path-tracing engine. It simulates the physical behavior of light to generate high-fidelity photorealistic images and is compatible with Universal Scene Description files for visualizing complex 3D scenes and production pipelines.

The system is designed as a distributed rendering framework, capable of splitting heavy computational workloads across multiple machines or cloud clusters to accelerate image generation. It integrates OpenColorIO for consistent color management across different display devices and color spaces.

The project covers a broad range of capabilities, including 3D geometry and material authoring, volumetric effect rendering, and non-photorealistic stylization. It features a post-render compositing pipeline for image processing and a suite of monitoring tools for render performance analysis and log inspection.

The engine supports integration with external 3D software and host applications via a plugin architecture and Hydra render delegates.

## Tags

### Graphics & Multimedia

- [Physically Based Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/materials-shading/physically-based-rendering-materials/physically-based-rendering.md) — Implements a production-grade physically based rendering system that simulates the physical behavior of light for photorealistic images. ([source](https://cdn.jsdelivr.net/gh/openmoonray/openmoonray@main/README.md))
- [Ray Tracing Engines](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/3d-intersection-ray-calculators/hardware-accelerated-ray-tracing/photorealistic-ray-tracing/ray-tracing-engines.md) — Simulates light transport by tracing rays from the camera into a scene to generate physically based images.
- [Bidirectional Scattering Distribution Functions](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/material-systems/material-property-managers/surface-material-properties/bidirectional-scattering-distribution-functions.md) — Uses bidirectional scattering distribution functions to simulate physically based light transport and material appearance. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Scene Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/scene-renderers.md) — Generates high-fidelity, physically based images from 3D scene descriptions. ([source](https://docs.openmoonray.org/getting-started/))
- [Path Tracing Implementations](https://awesome-repositories.com/f/graphics-multimedia/path-tracing-implementations.md) — Provides a production-grade path tracing engine that simulates physical light behavior to generate high-fidelity photorealistic images and animations.
- [3D Scene Descriptions](https://awesome-repositories.com/f/graphics-multimedia/3d-scene-descriptions.md) — Uses a native scene format available in human-readable text for authoring and optimized binary for production. ([source](https://docs.openmoonray.org/getting-started/about/rdl-scene-format/))
- [USD Scene Translation](https://awesome-repositories.com/f/graphics-multimedia/3d-scene-descriptions/usd-scene-translation.md) — Processes USD files through a specialized plugin to translate external scene data into an internal rendering format.
- [3D Scene Visualization](https://awesome-repositories.com/f/graphics-multimedia/3d-scene-visualization.md) — Processes Universal Scene Description (USD) files to visualize complex 3D environments and assets. ([source](https://docs.openmoonray.org/getting-started/test-scenes/))
- [GPU Accelerated Rendering](https://awesome-repositories.com/f/graphics-multimedia/gpu-accelerated-rendering.md) — Offloads computationally intensive path-tracing tasks to graphics hardware to accelerate image generation. ([source](https://docs.openmoonray.org/getting-started/installation/moonray-dependencies/))
- [Light Source Functions](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/lighting-systems/3d-lighting-models/light-source-functions.md) — Implements abstract light entities that illuminate 3D geometry without needing to be solid objects. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Hardware-Accelerated Ray Tracing](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/3d-intersection-ray-calculators/hardware-accelerated-ray-tracing.md) — Leverages processor lanes and ray batching via hardware acceleration to speed up intersection queries. ([source](https://docs.openmoonray.org/user-reference/execution-modes/))
- [Ray Tracing Set Definitions](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/3d-intersection-ray-calculators/hardware-accelerated-ray-tracing/photorealistic-ray-tracing/ray-tracing-engines/ray-tracing-set-definitions.md) — Provides the ability to group geometric primitives to control ray tracing behavior for effects like subsurface scattering. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Distributed Rendering Systems](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/scene-renderers/distributed-rendering-systems.md) — Processes interactive and batch render jobs across local machines, multi-machine clusters, or cloud environments. ([source](https://cdn.jsdelivr.net/gh/openmoonray/openmoonray@main/README.md))
- [High-Quality Scene Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/scene-renderers/high-quality-scene-rendering.md) — Processes native RDL2 scene files to generate high-quality photorealistic images and animations. ([source](https://docs.openmoonray.org/getting-started/test-scenes/))
- [USD Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/scene-renderers/usd-renderers.md) — Processes Universal Scene Description (USD) files to visualize complex 3D scenes and production pipelines.
- [Volumetric Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/gpu-accelerated-ui-rendering/3d-scene-renderers/volumetric-rendering.md) — Simulates light interaction within homogeneous and heterogeneous volumes for atmospheric and cloud effects. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Scene Management Systems](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/scene-management-systems.md) — Defines complex 3D environments and their attributes using a structured scene description format. ([source](https://docs.openmoonray.org/user-reference/))
- [3D Camera Projection Systems](https://awesome-repositories.com/f/graphics-multimedia/3d-camera-projection-systems.md) — Defines how 3D scenes are projected onto 2D images using perspective, orthographic, fisheye, or spherical mapping. ([source](https://docs.openmoonray.org/user-reference/scene-objects/cameras/))
- [Procedural Surface Authoring](https://awesome-repositories.com/f/graphics-multimedia/3d-geometry-generators/procedural-surface-authoring.md) — Defines complex 3D scenes using procedural geometry, displacement maps, and bidirectional scattering distribution functions.
- [Vertex Displacement](https://awesome-repositories.com/f/graphics-multimedia/3d-geometry-generators/procedural-surface-authoring/vertex-displacement.md) — Offsets surface vertices using displacement maps to create physical geometric detail. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Shadow Casting Controls](https://awesome-repositories.com/f/graphics-multimedia/3d-lighting-and-shadows/shadow-casting-controls.md) — Suppresses or prevents specific geometry from casting shadows relative to designated light sets. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Native Scene Formats](https://awesome-repositories.com/f/graphics-multimedia/3d-scene-descriptions/native-scene-formats.md) — Uses a native scene format available in human-readable text for authoring and optimized binary for production.
- [Scene Description Transcoders](https://awesome-repositories.com/f/graphics-multimedia/3d-scene-descriptions/scene-description-transcoders.md) — Transforms scene data between different formats to ensure compatibility across production pipelines. ([source](https://docs.openmoonray.org/user-reference/tools/))
- [Camera Perspective Configurations](https://awesome-repositories.com/f/graphics-multimedia/camera-systems/camera-perspective-configurations.md) — Provides configurations for perspective and orthographic camera projections. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Custom Shader Programming](https://awesome-repositories.com/f/graphics-multimedia/custom-shader-programming.md) — Allows for the creation of plugin-based shaders to define custom light and material interactions. ([source](https://docs.openmoonray.org/developer-reference/))
- [Final Output Definition](https://awesome-repositories.com/f/graphics-multimedia/final-output-definition.md) — Allows specification of final produced images, including beauty passes and arbitrary output variables. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Node-Based Procedural Geometry](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/3d-math-and-geometry-toolkits/geometry-primitives/node-based-procedural-geometry.md) — Implements a system for building complex 3D shapes through procedural generation rules. ([source](https://docs.openmoonray.org/user-reference/scene-objects/geometry/))
- [Toon Shading Models](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/lighting-systems/3d-lighting-models/toon-shading-models.md) — Implements stylized lighting and color quantization to create non-photorealistic toon-shaded animation looks. ([source](https://docs.openmoonray.org/user-reference/scene-objects/display-filters/ToonDisplayFilter/))
- [Multi-Pass Rendering Pipelines](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/post-processing-pipelines/multi-pass-rendering-pipelines.md) — Refines final image buffers through a sequence of mathematical operations and color filters after the main render pass.
- [Depth of Field](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/post-processing-effects/depth-of-field.md) — Controls focal length and bokeh effects to create realistic blur for objects outside the focus plane. ([source](https://docs.openmoonray.org/user-reference/scene-objects/cameras/PerspectiveCamera/))
- [SIMD Ray Intersections](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/3d-graphics-pipelines/3d-intersection-ray-calculators/ray-intersection-acceleration/simd-ray-intersections.md) — Optimizes rendering speed by processing multiple ray intersections simultaneously using processor lanes and ray batching.
- [3D Software Plugins](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/gpu-accelerated-ui-rendering/3d-scene-renderers/3d-software-plugins.md) — Provides dedicated plugins to connect the rendering engine to supported 3D software for streamlined scene visualization. ([source](https://docs.openmoonray.org/))
- [Image Denoising](https://awesome-repositories.com/f/graphics-multimedia/image-denoising.md) — Includes algorithms to remove visual noise from sampled path-traced images to create clean final frames. ([source](https://docs.openmoonray.org/getting-started/installation/building-moonray/repo_deps/))
- [Interactive Visual Rendering](https://awesome-repositories.com/f/graphics-multimedia/interactive-visual-rendering.md) — Embeds a real-time rendering session into external applications to provide immediate visual feedback. ([source](https://docs.openmoonray.org/developer-reference/))
- [Render Progress Visualizers](https://awesome-repositories.com/f/graphics-multimedia/interactive-visual-rendering/render-progress-visualizers.md) — Displays rendered images and job progress through a graphical user interface for real-time review. ([source](https://docs.openmoonray.org/getting-started/installation/building-moonray/repo_deps/))
- [Stylized Rendering Techniques](https://awesome-repositories.com/f/graphics-multimedia/media-production-suites/animation-tools/mathematical-visualization-engines/3d-surface-visualizations/3d-visual-effects/stylized-rendering-techniques.md) — Implements stylized rendering techniques such as toon shaders and halftone effects for non-photorealistic animation and digital art.
- [Micro-Detail Surface Simulation](https://awesome-repositories.com/f/graphics-multimedia/micro-detail-surface-simulation.md) — Modifies geometry at render time using height and normal maps to create physical relief. ([source](https://docs.openmoonray.org/user-reference/scene-objects/displacement/))
- [Motion Blur Simulations](https://awesome-repositories.com/f/graphics-multimedia/motion-blur-simulations.md) — Simulates speed by averaging light samples over time intervals to produce realistic blur for moving objects. ([source](https://docs.openmoonray.org/user-reference/scene-objects/geometry/))
- [Pixel Sampling Strategies](https://awesome-repositories.com/f/graphics-multimedia/pixel-sampling-strategies.md) — Varies the number of samples per pixel using a sample map to optimize quality in specific image areas. ([source](https://docs.openmoonray.org/user-reference/scene-objects/cameras/PerspectiveCamera/))
- [Post-Render Compositing Pipelines](https://awesome-repositories.com/f/graphics-multimedia/post-render-compositing-pipelines.md) — Applies compositing operations such as blending, color correction, and blurring to pixel values after the main render pass. ([source](https://docs.openmoonray.org/user-reference/scene-objects/display-filters/))
- [Render Job Management](https://awesome-repositories.com/f/graphics-multimedia/render-job-management.md) — Provides a graphical interface to configure settings and trigger rendering jobs for complex 3D scenes. ([source](https://docs.openmoonray.org/user-reference/tools/))
- [Rendering Performance Analysis](https://awesome-repositories.com/f/graphics-multimedia/rendering-performance-analysis.md) — Analyzes timing, memory, and preparation statistics from render logs to identify performance bottlenecks. ([source](https://docs.openmoonray.org/getting-started/installation/building-moonray/repo_deps/))
- [Rendering Precision Modes](https://awesome-repositories.com/f/graphics-multimedia/rendering-precision-modes.md) — Balances performance and feature completeness by choosing between high-speed vectorized modes or full-feature scalar modes. ([source](https://docs.openmoonray.org/user-reference/execution-modes/))
- [Scene Geometry Instancing](https://awesome-repositories.com/f/graphics-multimedia/scene-geometry-instancing.md) — Implements geometry instancing to create multiple copies of objects with unique transforms. ([source](https://docs.openmoonray.org/user-reference/scene-objects/geometry/RdlInstancerGeometry/))
- [Surface Normal Computations](https://awesome-repositories.com/f/graphics-multimedia/surface-normal-computations.md) — Configures and alters shading normals to create light-responsive surface effects. ([source](https://docs.openmoonray.org/user-reference/scene-objects/))
- [Texture Baking](https://awesome-repositories.com/f/graphics-multimedia/texture-baking.md) — Generates textures by tracing rays from geometry surfaces using UV coordinates. ([source](https://docs.openmoonray.org/user-reference/scene-objects/cameras/BakeCamera/))

### Data & Databases

- [Distributed Resource Pooling](https://awesome-repositories.com/f/data-databases/in-memory-caches/distributed-memory-caches/distributed-resource-pooling.md) — Allocates CPU and memory across a pool of machines to coordinate distributed render sessions. ([source](https://docs.openmoonray.org/getting-started/about/arras/))
- [3D Scene Importers](https://awesome-repositories.com/f/data-databases/query-translators/multi-format-exports/3d-scene-importers.md) — Processes scenes created in Universal Scene Description (USD) formats through a plugin to prepare them for rendering. ([source](https://docs.openmoonray.org/getting-started/))

### DevOps & Infrastructure

- [Distributed Rendering Frameworks](https://awesome-repositories.com/f/devops-infrastructure/distributed-computing-frameworks/distributed-rendering-frameworks.md) — Splits program execution across multiple machines or processes to isolate components and increase shading speed. ([source](https://docs.openmoonray.org/))

### Operating Systems & Systems Programming

- [Hardware Acceleration](https://awesome-repositories.com/f/operating-systems-systems-programming/hardware-interfacing-drivers/hardware-acceleration.md) — Offloads computationally intensive path-tracing tasks to graphics hardware to maximize total performance.

### Software Engineering & Architecture

- [Rendering Workload Distribution](https://awesome-repositories.com/f/software-engineering-architecture/distributed-task-queues/rendering-workload-distribution.md) — Splits heavy rendering workloads across multiple machines or cloud clusters to accelerate image generation.
- [Hybrid Hardware Execution](https://awesome-repositories.com/f/software-engineering-architecture/hybrid-hardware-execution.md) — Runs rendering workloads on processors or hybrid hardware to maximize overall computational performance. ([source](https://cdn.jsdelivr.net/gh/openmoonray/openmoonray@main/README.md))
- [Plugin-Based Architectures](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures/plugin-based-architectures.md) — Connects the rendering core to external 3D applications through a modular plugin interface to avoid library conflicts.

### Part of an Awesome List

- [Hydra Render Delegates](https://awesome-repositories.com/f/awesome-lists/devtools/hydra-render-delegates.md) — Functions as a Hydra render delegate to visualize scenes directly within compatible 3D software environments. ([source](https://docs.openmoonray.org/getting-started/installation/))
- [Polygonal Mesh Generation](https://awesome-repositories.com/f/awesome-lists/devtools/mesh-and-geometry/polygonal-mesh-generation.md) — Enables the creation of complex polygonal and subdivision meshes. ([source](https://docs.openmoonray.org/user-reference/scene-objects/geometry/RdlMeshGeometry/))

### Game Development

- [External DCC Integrations](https://awesome-repositories.com/f/game-development/external-dcc-integrations.md) — Integrates the rendering engine with external digital content creation software via a standardized plugin architecture. ([source](https://docs.openmoonray.org/getting-started/installation/building-moonray/repo_deps/))

### System Administration & Monitoring

- [Rendering Performance Monitors](https://awesome-repositories.com/f/system-administration-monitoring/rendering-performance-monitors.md) — Tracks execution metrics and runs regression tests to ensure consistent rendering efficiency and quality. ([source](https://cdn.jsdelivr.net/gh/openmoonray/openmoonray@main/README.md))

### Testing & Quality Assurance

- [Test Result Comparison](https://awesome-repositories.com/f/testing-quality-assurance/agent-performance-benchmarks/benchmark-result-analysis/test-result-comparison.md) — Compares performance results between adjacent tests to highlight regressions based on a configurable threshold. ([source](https://docs.openmoonray.org/user-reference/tools/render-profile-viewer/))

### User Interface & Experience

- [Color Management Systems](https://awesome-repositories.com/f/user-interface-experience/color-spaces/color-management-systems.md) — Integrates OpenColorIO to ensure consistent color transformation and reproduction across different display devices and color spaces.
- [Tangent Space Normal Mapping](https://awesome-repositories.com/f/user-interface-experience/texture-mapping/tangent-space-normal-mapping.md) — Generates tangent-space normal maps via baking cameras for high-fidelity surface detail. ([source](https://docs.openmoonray.org/user-reference/scene-objects/display-filters/TangentSpaceDisplayFilter/))
