• Stars
    star
    685
  • Rank 65,524 (Top 2 %)
  • Language
    C++
  • License
    Other
  • Created over 4 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

RTX Global Illumination (RTXGI)

RTX Global Illumination

Version 1.3

Change Log

Introduction

RTX Global Illumination (RTXGI) is a collection of algorithms that leverage GPU ray tracing to provide scalable solutions for rendering real-time Global Illumination (GI). The goal of RTXGI is to provide optimized implementations of global lighting algorithms that are flexible enough to be useful in both real-time and pre-computed lighting scenarios. Focusing on scalability allows RTXGI to be an effective tool across a wide range of platforms with varying computational capabilities.

Algorithm implementations provided here require graphics APIs and platforms with support for GPU ray tracing (e.g. Microsoft DirectX Raytracing or Vulkan Ray Tracing). That said, it is possible to use RTXGI's Dynamic Diffuse Global Illumination algorithm on development machines with GPU ray tracing support, store the lighting data, and then load the (static) lighting data at run-time on platforms without GPU ray tracing support.

For more information on RTXGI, see the NVIDIA Developer Page.

Global Illumination with RTXGI in the Sponza

Contents

This repository contains the RTXGI SDK, a sample application, the RTXGI Unreal Engine 4 plugin, and associated documentation.

Although we aim for RTXGI to eventually provide a collection of global illumination algorithms, the current SDK provides one algorithm based on Dynamic Diffuse Global Illumination (DDGI), first described in this academic publication from NVIDIA Research along with collaborators at McGill University and the University of Montreal. Since DDGI is based on irradiance probes (the pre-computed variety are already commonly used in games), it is an ideal entry point for developers to bring the benefits of real-time ray tracing to their tools, technology, and applications without substantial performance penalties. Furthermore, the implementation here includes performance improvements and optimization techniques not available elsewhere.

  • rtxgi-sdk contains the SDK source code

  • samples contains the Test Harness sample application that demonstrates and exercises the SDK's functionality

  • thirdparty contains third-party software used by the sample application(s)

  • d3d contains a compatible recent version of the DirectX 12 Agility SDK to use when running on Windows (delivered by Packman)

  • dxc contains a compatible recent version of the DirectX Shader Compiler for your platform (delivered by Packman)

  • ue4-plugin contains the RTXGI Unreal Engine 4 plugin source code and documentation

  • docs contains helpful guides and documentation

System Requirements

The RTXGI SDK and sample application(s) require the following hardware and software:

Hardware

  • Any DXR capable GPU. NVIDIA DXR enabled GPUs are:
    • RTX 4090, 4080, 4070 Ti, 4070, 4060 Ti, 4060
    • RTX 3090 Ti, 3090, 3080 Ti, 3080, 3070 Ti, 3070, 3060 Ti, 3060, 3050
    • Titan RTX
    • RTX 2080 Ti, 2080 SUPER, 2080, 2070 SUPER, 2070, 2060 SUPER, 2060
    • GTX 1660 Ti, 1660 SUPER, 1660
    • Titan Xp
    • GTX 1080 Ti, 1080, 1070 Ti, 1070, 1060 Ti, 1060 6GB (or higher)

Software (Windows)

Software (Linux)

Getting Started

Unreal Engine 4

See the Unreal Engine Plugin

More Repositories

1

kaolin

A PyTorch Library for Accelerating 3D Deep Learning Research
Python
4,424
star
2

PhysX

NVIDIA PhysX SDK
C++
2,893
star
3

Falcor

Real-Time Rendering Framework
C++
2,615
star
4

PhysX-3.4

NVIDIA PhysX SDK 3.4
C++
2,307
star
5

kaolin-wisp

NVIDIA Kaolin Wisp is a PyTorch library powered by NVIDIA Kaolin Core to work with neural fields (including NeRFs, NGLOD, instant-ngp and VQAD).
Python
1,451
star
6

rtx-remix

Combined repo for the RTX-Remix runtime
1,354
star
7

DxrTutorials

C++
828
star
8

GettingStartedWithRTXRayTracing

Getting Started with RTX Ray Tracing
C++
613
star
9

RTX-Path-Tracing

Real-time path tracing library and sample
C++
599
star
10

FleX

C++
579
star
11

nvrhi

C++
525
star
12

RayTracingDenoiser

NVIDIA Ray Tracing Denoiser
HLSL
505
star
13

FaceWorks

A middleware library and sample application for high-quality skin and eye rendering
C++
450
star
14

NVIDIAImageScaling

NVIDIA Image Scaling SDK
C
426
star
15

Streamline

Streamline Integration Framework
C
375
star
16

RTXDI

C++
347
star
17

Blast

A modular destruction SDK designed for performance and flexibility, replacing APEX destruction
C++
331
star
18

dxvk-remix

C++
303
star
19

NvCloth

C
296
star
20

KickstartRT

KickstartRT SDK
C++
185
star
21

Flow

Flow is a sparse grid-based fluid simulation library for real-time applications.
C
168
star
22

donut

C++
164
star
23

HBAOPlus

HBAO+
C++
160
star
24

bridge-remix

This is the NVIDIA RTX Remix Runtime Bridge repository
C++
146
star
25

SpatiotemporalBlueNoiseSDK

C
127
star
26

Displacement-MicroMap-Toolkit

C++
125
star
27

UnityPhysXPlugin

Experimental Unity package to enable access to NVIDIA PhysX SDK 4 from within Unity.
C#
122
star
28

NRI

C++
90
star
29

RTXMU

C++
89
star
30

donut_examples

C++
72
star
31

ShaderMake

Shader Compilation Tool
C++
72
star
32

NRDSample

C++
69
star
33

GeForceNOW-SDK

This is the home of the SDK for GeForce NOW
C
65
star
34

KickstartRT_demo

Repo for KickstartRT demo application
C++
50
star
35

Opacity-MicroMap-SDK

Opacity Micro-Map SDK Source Repository
C++
36
star
36

MathLib

C++
28
star
37

Displacement-MicroMap-SDK

C++
19
star
38

nas-sample

C++
16
star
39

Streamline_Sample

C++
16
star
40

ComfyUI-RTX-Remix

ComfyUI RTX Remix
Python
14
star
41

Opacity-MicroMap-Samples

Samples repository for the Opacity MicroMap SDK
C++
11
star
42

Displacement-MicroMap-BaryFile

C++
11
star
43

NRIFramework

C
8
star
44

NRISamples

C++
7
star
45

rtxdi-runtime

HLSL
2
star