RTX Character Rendering
October 20, 2025 · View on GitHub

Introduction
RTX Character Rendering implements techniques used for rendering realistic human hair and skin.
RTX Character Rendering implements two hair shading techniques, the traditional near-field Chiang BSDF [ Chiang15 ], and a novel far-field analytical approach developed by the Omniverse team. It also includes an optimized, high-fidelity morph target animation system for realistic hair animation. For more information on that solution and how to integrate it, please check the RTX Character Rendering Hair Guide.
RTXCR introduces a novel hair data structure called Linear-Swept Sphere (LSS). It delivers high performance in tracing and BVH updates while maintaining exceptionally low memory consumption. Additionally, it enables SOL tracing using the LSS Hardware Intersector on 4th-generation Ray Tracing Cores in Blackwell GPUs. For other RTX GPUs, we provide a fallback solution known as Disjoint Orthogonal Triangle Strips (DOTS), which replaces traditional triangle-based strands. For more details, check our LSS Technical Blog.
For skin, RTX Character Rendering implements a combined subsurface scattering solution which extended SOTA Burley Diffusion Profile [ Burley15 ] with a single scattering term. This provides better support for both backward scattering from diffusion profile and forward transmission from single scattering. For Technique Details and integration, check RTX Character Rendering SSS Guide.
Project structure
| Directory | Details |
|---|---|
| /docs | Documentation for showcased tech |
| /external | Helper dependencies and framework used for the samples |
| /assets | Assets and scene definitions |
| /samples | Samples showcasing usage of RTX Character Rendering |
| /libraries | Binaries, src, includes for RTX Character Rendering |
Provided samples:
- Pathtracer (default): showcases the most common use case - a pathtracer that relies on RTX Character Rendering to show the hair and skin techniques, including the hair BCSDF/BSSRDF evaluation, importance sampling and denoising (DLSS-RR/NRD).
For more details of running sample, check RTX Character Rendering User Guide.
Getting up and running
Prerequisites
RTX 20 series or newer. Radeon RX 7000 Series or newer. Intel Arc Series. | Driver ≥ 580.88 | CMake v3.30.0 | Git LFS | Vulkan SDK 1.4.313.2 | Windows SDK ≥ 10.0.22621.0
Building and Running the Sample Apps
-
To get started, clone the repository along with all submodules:
git clone --recursive https://github.com/NVIDIA-RTX/RTXCR.git
If the repository was cloned without submodules, update them separately:
git submodule update --init --recursive
There are three ways to build and run the sample. Choose the method that best suits your workflow.
1. Building and Running with Scripts
If you only need to build and run the sample without modifying the code:
-
Run the
build.batscript.- For AMD or Intel users, include the
-disableStreamlineparameter to disable Streamline.
- For AMD or Intel users, include the
-
Once the build completes successfully, execute
run.batto launch the application.
2. Generating and Using a Visual Studio Solution
If you want to inspect or modify the code in Visual Studio:
-
Run the
generateSolution.batscript to generate a Visual Studio solution. To automatically open the solution after generation, add the-vparameter.- For AMD or Intel users, include the
-disableStreamlineparameter to disable Streamline.
- For AMD or Intel users, include the
-
We recommend selecting the
RelWithDebInfosolution configuration and building the project in Visual Studio to achieve the best balance between performance and debugging capabilities. -
Run the application from within Visual Studio.
3. Generating a Visual Studio Solution Using CMake GUI
If you prefer configuring the solution manually:
-
Assuming that the RTXCR SDK tree is located in
D:\RTXCR, open CMake GUI and set the following parameters:- "Where is the source code" to
D:\RTXCR - "Where to build the binaries" to
D:\RTXCR\build
- "Where is the source code" to
-
Click "Configure", set "Generator" to the Visual Studio version you're using, set "Optional platform" to x64, click "Finish".
- The data assets used for the sample will be automatically downloaded to the
/assetsfolder in this step. - For AMD or Intel users, untick the "USE_VK_STREAMLINE" option in the CMake GUI to disable Streamline.
- The data assets used for the sample will be automatically downloaded to the
-
Click "Generate", then "Open Project".
-
We recommend selecting the
RelWithDebInfosolution configuration and building the project in Visual Studio to achieve the best balance between performance and debugging capabilities. -
Open the
RTXCR.slnin the/buildfolder. -
Build and run the application using Visual Studio.
4. Run Animation (Optional)
Animation is not enabled by default. To run the animation, you can either:
-
From the command line:
run.bat -enableAnimation 1 -scene claire.animation.scene.jsonor add-enableAnimation 1 -scene claire.animation.scene.json -
From Visual Studio:
- Go to the Debugging tab under your project properties.
- Add the following to Command Arguments:
-enableAnimation 1 -scene claire.animation.scene.json
Performance
LSS reduces memory usage by up to 38% and improves frame rate by 30% compared to traditional PolyTube geometry.
See detailed profiling data and analysis in the LSS (Linear Swept Spheres) Performance Analysis.
Contact
RTXCR is actively being developed. Please report any issues directly through the GitHub issue tracker. For any information or suggestions, contact us at rtxcr-sdk-support@nvidia.com
Citation
If you use RTXCR in a research project leading to a publication, please cite the project.
BibTex:
@online{RTXCR,
title = {{{NVIDIA}}\textregistered{} {RTXCR}},
author = {{NVIDIA}},
year = 2025,
url = {https://github.com/NVIDIA-RTX/RTXCR},
urldate = {2025-02-06},
}
License
See License.txt
Reference
[1]A practical and controllable hair and fur model for production path tracing, MJY Chiang, B Bitterli, C Tappan, B Burley Computer Graphics Forum 35 (2), 275-283 | Paper Link
[2]Approximate Reflectance Profiles for Efficient Subsurface Scattering. Per H. Christensen, B Burley.“An approximate reflectance profile for efficient subsurface scattering.” ACM SIGGRAPH (2015): 1-1 | Paper Link