Devsh-Graphics-Programming / Nabla-Examples-and-Tests

Nabla's Tests and Examples source code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Examples and Tests

The Nabla Examples are documentation-by-example and building blocks for our future Continuous Integration GPU Integration Tests.

Where can I find the makefiles or IDE projects/solutions?

Given an example in folder XY.ExampleName, CMake will generate either a target or a separate makefile/project/solution called examplename (no number, always lowercase).

Whenever CMake generates separate makefiles/solutions/projects, they will be generated in the ./examples_tests under the build directory you supplied to CMake.

Samples are meant to be built into the ./bin directory in the source (its git-ignored) and invoked with that Current Working Directory.

WARNING: If you're using an IDE different than Visual Studio you need to set the CWD correctly for when you start the example for Debugging!

WARNING: Only generation of IDE projects by standalone CMake is supported, we do not use or rely on IDE integrations of CMake.

Maintenance Matrix

Example MSVCx64Release MSVCx64RWDI MSVCx64Debug Androidx86_64Release Androidx86_64RWDI Androidx86_64Debug Win32Vulkan X11**Vulkan AndroidVulkan RequiredCMakeOptions****
01_HelloWorld
02_ComputeShader
03_GPU_Mesh
04_Keyframe
05_NablaTutorialExample
06_MeshLoaders
07_SubpassBaking
08.
09_ColorSpaceTest
10_AllocatorTest
11_LoDSystem
12_glTF COMPILE_WITH_GLTF_LOADER
13.
14_ComputeScan
15.
16_OrderIndependentTransparency
17_SimpleBulletIntegration BUILD_BULLET
18_MitsubaLoader BUILD_MITSUBA_LOADER
19.
20_Megatexture
21_DynamicTextureIndexing
22_RaytracedAO BUILD_MITSUBA_LOADER
23_Autoexposure
24.
25_Blur
26.
27_PLYSTLDemo COMPILE_WITH_STL_LOADER,COMPILE_WITH_PLY_LOADER
28.
29_SpecializationConstants
30.
31.
32.
33_Draw3DLine
34_LRUCacheUnitTest
35_GeometryCreator
36_CUDAInterop COMPILE_WITH_CUDA
37.
38_EXRSplit
39_DenoiserTonemapper COMPILE_WITH_CUDA,COMPILE_WITH_OPTIX
40_GLITest COMPILE_WITH_GLI_LOADER
41_VisibilityBuffer
42_FragmentShaderPathTracer
43_SumAndCDFFilters
44_LevelCurveExtraction
45_BRDFEvalTest
46_SamplingValidation
47_DerivMapTest
48_ArithmeticUnitTest
49_ComputeFFT
50_NewAPITest
51_RadixSort
52_SystemTest
53_ComputeShaders
54_Transformations
55_RGB18E7S3
56_RayQuery
57_AndroidSample
58_MediaUnpackingOnAndroid
59.
60_ClusteredRendering

Legend

Already Works

Has a known bug

Work-In-Progress, sample logic not complete or temporarily modified

Intended to be Supported (requires some work to port after an API change)

No support

Examples numbered 00 are provisional and are not part of the example suite.

Notes

* Only Nvidia provides a working GLES 3.1 driver with OES_texture_view on Windows, so we only test there.

** Needs the Xcb implementation of the ui:: namespace to be complete.

*** Only x86_64 architecture supported for Android builds, also NBL_BUILD_ANDROID is required.

**** NBL_BUILD_EXAMPLES is needed for any example to build!

About

Nabla's Tests and Examples source code


Languages

Language:C++ 85.0%Language:GLSL 6.9%Language:Groovy 2.8%Language:HLSL 2.8%Language:CMake 1.3%Language:Python 0.8%Language:Batchfile 0.2%Language:C 0.1%Language:Cuda 0.1%