Skip to content

Commit 3f30b44

Browse files
authored
Falcor 6.0 (#366)
1 parent 258a214 commit 3f30b44

File tree

447 files changed

+7136
-3353
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

447 files changed

+7136
-3353
lines changed

CMakeLists.txt

+5-1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ set(FALCOR_USE_SYSTEM_PYTHON OFF CACHE BOOL "Use system Python distribution")
2727
set(FALCOR_ENABLE_USD ON CACHE BOOL "Enable USD")
2828

2929

30+
# Enable/disable Address Sanitizer.
31+
set(FALCOR_ENABLE_ASAN OFF CACHE BOOL "Enable Address Sanitizer")
32+
3033
# Header validation.
3134
# If enabled, additional targets are generated to validate that headers are self sufficient.
3235
set(FALCOR_VALIDATE_HEADERS OFF CACHE BOOL "Enable header validation")
@@ -200,6 +203,7 @@ add_subdirectory(external)
200203
message(STATUS "Feature flags:")
201204
message(STATUS "FALCOR_HAS_D3D12: ${FALCOR_HAS_D3D12}")
202205
message(STATUS "FALCOR_HAS_VULKAN: ${FALCOR_HAS_VULKAN}")
206+
message(STATUS "FALCOR_HAS_AFTERMATH: ${FALCOR_HAS_AFTERMATH}")
203207
message(STATUS "FALCOR_HAS_NVAPI: ${FALCOR_HAS_NVAPI}")
204208
message(STATUS "FALCOR_HAS_PIX: ${FALCOR_HAS_PIX}")
205209
message(STATUS "FALCOR_HAS_CUDA: ${FALCOR_HAS_CUDA}")
@@ -451,7 +455,7 @@ if(plugin_targets)
451455
endif()
452456

453457
# Generate settings.toml file.
454-
file(GENERATE OUTPUT ${FALCOR_OUTPUT_DIRECTORY}/settings.json CONTENT "{ \"standardsearchpath\" : { \"media\" : \"\${FALCOR_MEDIA_FOLDERS}\"}}")
458+
file(GENERATE OUTPUT ${FALCOR_OUTPUT_DIRECTORY}/settings.json CONTENT "{ \"standardsearchpath\" : { \"media\" : \"\${FALCOR_MEDIA_FOLDERS}\", \"mdl\" : \"\${FALCOR_MDL_PATHS}\" }}")
455459

456460
# Make Mogwai and FalcorPython depend on all plugins.
457461
if(plugin_targets)

Source/Falcor/CMakeLists.txt

+41-9
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ target_sources(Falcor PRIVATE
99
GlobalState.h
1010

1111
Core/Assert.h
12+
Core/Enum.h
1213
Core/ErrorHandling.cpp
1314
Core/ErrorHandling.h
1415
Core/Errors.cpp
@@ -31,14 +32,15 @@ target_sources(Falcor PRIVATE
3132
Core/Window.cpp
3233
Core/Window.h
3334

35+
Core/API/Aftermath.h
36+
Core/API/Aftermath.cpp
3437
Core/API/BlendState.cpp
3538
Core/API/BlendState.h
3639
Core/API/BlitContext.cpp
3740
Core/API/BlitContext.h
3841
Core/API/BlitReduction.3d.slang
3942
Core/API/Buffer.cpp
4043
Core/API/Buffer.h
41-
Core/API/Common.cpp
4244
Core/API/Common.h
4345
Core/API/ComputeContext.cpp
4446
Core/API/ComputeContext.h
@@ -94,10 +96,9 @@ target_sources(Falcor PRIVATE
9496
Core/API/RtStateObject.h
9597
Core/API/Sampler.cpp
9698
Core/API/Sampler.h
97-
Core/API/Shader.cpp
98-
Core/API/Shader.h
9999
Core/API/ShaderResourceType.h
100100
Core/API/ShaderTable.h
101+
Core/API/ShaderType.h
101102
Core/API/Swapchain.cpp
102103
Core/API/Swapchain.h
103104
Core/API/Texture.cpp
@@ -133,6 +134,7 @@ target_sources(Falcor PRIVATE
133134

134135
Core/Program/ComputeProgram.cpp
135136
Core/Program/ComputeProgram.h
137+
Core/Program/DefineList.h
136138
Core/Program/GraphicsProgram.cpp
137139
Core/Program/GraphicsProgram.h
138140
Core/Program/Program.cpp
@@ -247,7 +249,6 @@ target_sources(Falcor PRIVATE
247249
Rendering/Materials/StandardMaterialInstance.slang
248250
Rendering/Materials/StandardMaterial.slang
249251
Rendering/Materials/TexLODHelpers.slang
250-
Rendering/Materials/TexLODTypes.cpp
251252
Rendering/Materials/TexLODTypes.slang
252253

253254
Rendering/Materials/PBRT/PBRTDiffuseMaterial.slang
@@ -534,6 +535,8 @@ target_sources(Falcor PRIVATE
534535
Utils/ObjectIDPython.h
535536
Utils/PathResolving.cpp
536537
Utils/PathResolving.h
538+
Utils/Properties.cpp
539+
Utils/Properties.h
537540
Utils/Settings.cpp
538541
Utils/Settings.h
539542
Utils/SharedCache.h
@@ -666,9 +669,9 @@ target_sources(Falcor PRIVATE
666669

667670
Utils/Scripting/Console.cpp
668671
Utils/Scripting/Console.h
669-
Utils/Scripting/Dictionary.h
670672
Utils/Scripting/ndarray.cpp
671673
Utils/Scripting/ndarray.h
674+
Utils/Scripting/PythonDictionary.h
672675
Utils/Scripting/ScriptBindings.cpp
673676
Utils/Scripting/ScriptBindings.h
674677
Utils/Scripting/Scripting.cpp
@@ -830,16 +833,43 @@ target_compile_options(Falcor
830833
-Wno-literal-suffix
831834
-Wno-class-memaccess
832835
-Wno-strict-aliasing
836+
-Wno-maybe-uninitialized
837+
-Wno-stringop-truncation
833838
>
834839
PRIVATE
835840
$<$<COMPILE_LANG_AND_ID:CXX,MSVC>:/bigobj> # big object files
836841
)
837842

843+
if(FALCOR_ENABLE_ASAN)
844+
target_compile_options(Falcor
845+
PUBLIC
846+
$<$<COMPILE_LANG_AND_ID:CXX,MSVC>:
847+
/fsanitize=address
848+
>
849+
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:
850+
-fsanitize=address
851+
>
852+
)
853+
target_link_options(Falcor
854+
PUBLIC
855+
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:
856+
-fsanitize=address
857+
>
858+
)
859+
target_compile_definitions(Falcor
860+
PUBLIC
861+
$<$<COMPILE_LANG_AND_ID:CXX,MSVC>:
862+
_DISABLE_VECTOR_ANNOTATION
863+
_DISABLE_STRING_ANNOTATION
864+
>
865+
)
866+
endif()
867+
838868
if(FALCOR_PRECOMPILED_HEADERS)
839-
target_precompile_headers(Falcor
840-
PRIVATE
841-
Falcor.h
842-
)
869+
target_precompile_headers(Falcor
870+
PRIVATE
871+
Falcor.h
872+
)
843873
endif()
844874

845875
target_link_options(Falcor
@@ -865,6 +895,7 @@ target_compile_definitions(Falcor
865895
# Falcor feature flags.
866896
FALCOR_HAS_D3D12=$<BOOL:${FALCOR_HAS_D3D12}>
867897
FALCOR_HAS_VULKAN=$<BOOL:${FALCOR_HAS_VULKAN}>
898+
FALCOR_HAS_AFTERMATH=$<BOOL:${FALCOR_HAS_AFTERMATH}>
868899
FALCOR_HAS_NVAPI=$<BOOL:${FALCOR_HAS_NVAPI}>
869900
FALCOR_HAS_CUDA=$<BOOL:${FALCOR_HAS_CUDA}>
870901
FALCOR_HAS_D3D12_AGILITY_SDK=$<BOOL:${FALCOR_HAS_D3D12_AGILITY_SDK}>
@@ -902,6 +933,7 @@ target_link_libraries(Falcor
902933
glfw mikktspace nvtt
903934
$<$<BOOL:${FALCOR_HAS_D3D12}>:d3d12>
904935
$<$<BOOL:${FALCOR_HAS_D3D12_AGILITY_SDK}>:agility-sdk>
936+
$<$<BOOL:${FALCOR_HAS_AFTERMATH}>:aftermath>
905937
$<$<BOOL:${FALCOR_HAS_NVAPI}>:nvapi>
906938
# Windows system libraries.
907939
$<$<PLATFORM_ID:Windows>:shcore.lib>

0 commit comments

Comments
 (0)