Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

NRI Samples

Status

This is the test bench for NRI (NVIDIA Rendering Interface).

Build instructions

Windows

  • Install WindowsSDK and VulkanSDK
  • Clone project and init submodules
  • Generate and build project using cmake
    • To build the binary with static MSVC runtime, add -DCMAKE_MSVC_RUNTIME_LIBRARY="MultiThreaded$<$<CONFIG:Debug>:Debug>" parameter

Or by running scripts only:

  • Run 1-Deploy.bat
  • Run 2-Build.bat

Linux

  • Install VulkanSDK, xorg-dev,
  • Clone project and init submodules
  • Generate and build project using cmake

Or by running scripts only:

  • Run ./1-Deploy.sh
  • RUn ./2-Build.sh

CMake options

  • DISABLE_SHADER_COMPILATION - disable compilation of shaders (shaders can be built on other platform)
  • NRIF_USE_WAYLAND - use Wayland instead of X11 on Linux

How to run

The executables from _Bin directory load resources from _Data, therefore the samples need to be run with the working directory set to the project root folder. But the simplest way to run ALL samples sequentially is to click on 3-Test samples.bat.

Samples

  • AsyncCompute - demonstrates parallel execution of graphic and compute workloads
  • BindlessSceneViewer - bindless GPU-driven rendering test
  • Buffers - various buffer-related stuff
  • Clear - minimal example of rendering using framebuffer clears only
  • ClearStorage - clear storage testing
  • DeviceInfo - queries and prints out information about device groups in the system
  • DescriptorHeapIndexing - HLSL dynamic resources demonstration (dynamically indexed descriptor heaps)
  • InputAttachment - "dynamic rendering local read" demonstration (reading on-chip rendering results)
  • LowLatency - low latency demonstration
  • Multisample - multisample rendering testing
  • MultiThreading - shows advantages of multi-threaded command buffer recording
  • Multiview - multiview demonstration in LAYER_BASED mode (VK and D3D12 compatible)
  • RayTracingBoxes - a more advanced ray tracing example with many BLASes in TLAS
  • RayTracingTriangle - simple triangle rendering through ray tracing
  • Readback - getting data from the GPU back to the CPU
  • Resize - demonstrates window resize
  • Resources - various resources allocation related stuff
  • SceneViewer - loading & rendering of meshes with materials (also tests programmable sample locations, shading rate and pipeline statistics)
  • Triangle - simple textured triangle rendering (also multiview demonstration in FLEXIBLE mode)
  • Wrapper - shows how to wrap native D3D11/D3D12/VK objects into NRI entities

关于 About

A collection of NRI samples demonstrating basic usage (also works as a test bench)

语言 Languages

C++86.6%
HLSL5.9%
C5.8%
CMake1.2%
Batchfile0.4%
Shell0.1%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
238
Total Commits
峰值: 31次/周
Less
More

核心贡献者 Contributors