Skip to content

Commit

Permalink
Falcor 6.0-preview
Browse files Browse the repository at this point in the history
  • Loading branch information
skallweitNV authored May 22, 2023
1 parent 5869ac6 commit 258a214
Show file tree
Hide file tree
Showing 790 changed files with 42,744 additions and 31,839 deletions.
11 changes: 0 additions & 11 deletions .clang-format-ignore
Original file line number Diff line number Diff line change
@@ -1,21 +1,10 @@
Source/Falcor/RenderGraph
Source/Falcor/Rendering
Source/Falcor/RenderPasses
Source/Falcor/Scene
Source/Falcor/Utils
Source/Mogwai
Source/plugins/importers/USDImporter
Source/RenderPasses

# Explicitly whitelisted files
!Source/Falcor/Utils/PathResolving.cpp
!Source/Falcor/Utils/PathResolving.h
!Source/Falcor/Utils/Settings.cpp
!Source/Falcor/Utils/Settings.h
!Source/Falcor/Utils/StringFormatters.h
!Source/Falcor/Utils/Math/Rectangle.cpp
!Source/Falcor/Utils/Math/Rectangle.h
!Source/Falcor/Utils/Algorithm/UnionFind.h
!Source/Falcor/Rendering/Materials/BSDFs
!Source/RenderPasses/DLSSPass/

4 changes: 2 additions & 2 deletions .github/workflows/compile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:

env:
CMAKE_EXE: tools\.packman\cmake\bin\cmake.exe
CMAKE_BUILD_PRESET: windows-ninja-msvc
CMAKE_BUILD_PRESET: windows-ninja-msvc-ci
CMAKE_BUILD_CONFIG: Release

jobs:
Expand All @@ -26,7 +26,7 @@ jobs:
with:
arch: x64
sdk: 10.0.19041.0
toolset: 14.29
toolset: 14.30
- name: Build
run: |
%CMAKE_EXE% --preset %CMAKE_BUILD_PRESET%
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@
# Test output folder.
/tests/data/

# Media folder.
# Media folders.
/media
/media_internal

# Packman folders.
/external/packman/
Expand Down
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,6 @@
[submodule "external/imgui"]
path = external/imgui
url = https://github.com/ocornut/imgui.git
[submodule "external/glm"]
path = external/glm
url = https://github.com/g-truc/glm.git
[submodule "external/vulkan-headers"]
path = external/vulkan-headers
url = https://github.com/KhronosGroup/Vulkan-Headers
7 changes: 5 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -104,9 +104,12 @@ include(git_version)
git_version_setup()

# On Linux, we build with RPATH set to $ORIGIN to make build relocatable.
# Also, we link with precompiled libraries that are compiled with _GLIBCXX_USE_CXX11_ABI=0,
# so we need to compile with the same flag to avoid ABI incompatibilities.
if(FALCOR_LINUX)
set(CMAKE_INSTALL_RPATH $ORIGIN)
set(CMAKE_BUILD_WITH_INSTALL_RPATH ON)
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -D_GLIBCXX_USE_CXX11_ABI=0)
endif()


Expand Down Expand Up @@ -137,7 +140,7 @@ endif()
# -----------------------------------------------------------------------------

if(FALCOR_USE_SYSTEM_PYTHON)
find_package(Python 3.7 EXACT COMPONENTS Interpreter Development REQUIRED)
find_package(Python COMPONENTS Interpreter Development REQUIRED)
else()
set(Python_ROOT_DIR ${CMAKE_SOURCE_DIR}/external/packman/python)
find_package(Python COMPONENTS Interpreter Development REQUIRED)
Expand Down Expand Up @@ -206,7 +209,6 @@ message(STATUS "FALCOR_HAS_NRD: ${FALCOR_HAS_NRD}")
message(STATUS "FALCOR_HAS_DLSS: ${FALCOR_HAS_DLSS}")
message(STATUS "FALCOR_HAS_NV_USD: ${FALCOR_HAS_NV_USD}")
message(STATUS "FALCOR_HAS_MDL_SDK: ${FALCOR_HAS_MDL_SDK}")
message(STATUS "FALCOR_HAS_OPENSUBDIV: ${FALCOR_HAS_OPENSUBDIV}")
message(STATUS "FALCOR_ENABLE_USD: ${FALCOR_ENABLE_USD}")

# -----------------------------------------------------------------------------
Expand Down Expand Up @@ -455,6 +457,7 @@ file(GENERATE OUTPUT ${FALCOR_OUTPUT_DIRECTORY}/settings.json CONTENT "{ \"stand
if(plugin_targets)
add_dependencies(Mogwai ${plugin_targets})
add_dependencies(FalcorPython ${plugin_targets})
add_dependencies(Mogwai FalcorPython)
endif()

# Make Mogwai the default startup project in VS.
Expand Down
122 changes: 73 additions & 49 deletions CMakePresets.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,36 +33,6 @@
"CMAKE_SYSTEM_VERSION": "10.0.19041.0"
}
},
{
"name": "windows-vs2019-base",
"description": "Base Visual Studio 2019 configuration.",
"hidden": true,
"inherits": "windows-base",
"generator": "Visual Studio 16 2019",
"architecture": {
"value": "x64",
"strategy": "set"
},
"toolset": {
"value": "host=x86",
"strategy": "set"
}
},
{
"name": "windows-vs2019",
"displayName": "Windows VS2019",
"inherits": [
"windows-vs2019-base"
]
},
{
"name": "windows-vs2019-ci",
"displayName": "Windows VS2019 (CI)",
"inherits": [
"windows-vs2019-base",
"ci"
]
},
{
"name": "windows-vs2022-base",
"description": "Base Visual Studio 2022 configuration.",
Expand Down Expand Up @@ -99,12 +69,15 @@
"hidden": true,
"inherits": "windows-base",
"generator": "Ninja Multi-Config",
"environment": {
"VCToolsVersion": "14.30"
},
"architecture": {
"value": "x64",
"strategy": "external"
},
"toolset": {
"value": "host=x86,version=14.29",
"value": "host=x86,version=14.3",
"strategy": "external"
},
"cacheVariables": {
Expand Down Expand Up @@ -138,32 +111,59 @@
"name": "linux-base",
"description": "Base Linux configuration.",
"hidden": true,
"inherits": "base"
"inherits": "base",
"generator": "Ninja Multi-Config",
"cacheVariables": {
"CMAKE_MAKE_PROGRAM": "${sourceDir}/tools/.packman/ninja/ninja"
}
},
{
"name": "linux-ninja-clang-base",
"name": "linux-clang-base",
"description": "Base Linux/Clang configuration.",
"hidden": true,
"inherits": "linux-base",
"generator": "Ninja Multi-Config",
"cacheVariables": {
"CMAKE_MAKE_PROGRAM": "${sourceDir}/tools/.packman/ninja/ninja",
"CMAKE_C_COMPILER": "clang",
"CMAKE_CXX_COMPILER": "clang++"
}
},
{
"name": "linux-ninja-clang",
"displayName": "Linux Ninja/Clang",
"name": "linux-clang",
"displayName": "Linux/Clang",
"inherits": [
"linux-clang-base"
]
},
{
"name": "linux-clang-ci",
"displayName": "Linux/Clang (CI)",
"inherits": [
"linux-clang-base",
"ci"
]
},
{
"name": "linux-gcc-base",
"description": "Base Linux/GCC configuration.",
"hidden": true,
"inherits": "linux-base",
"cacheVariables": {
"CMAKE_C_COMPILER": "gcc",
"CMAKE_CXX_COMPILER": "g++"
}
},
{
"name": "linux-gcc",
"displayName": "Linux/GCC",
"inherits": [
"linux-ninja-clang-base"
"linux-gcc-base"
]
},
{
"name": "linux-ninja-clang-ci",
"displayName": "Linux Ninja/Clang (CI)",
"name": "linux-gcc-ci",
"displayName": "Linux/GCC (CI)",
"inherits": [
"linux-ninja-clang-base",
"linux-gcc-base",
"ci"
]
}
Expand Down Expand Up @@ -194,27 +194,51 @@
"configuration": "Debug"
},
{
"name": "linux-ninja-clang-release",
"name": "linux-clang-release",
"displayName": "Release",
"configurePreset": "linux-clang",
"configuration": "Release"
},
{
"name": "linux-clang-debug",
"displayName": "Debug",
"configurePreset": "linux-clang",
"configuration": "Debug"
},
{
"name": "linux-clang-ci-release",
"displayName": "Release",
"configurePreset": "linux-clang-ci",
"configuration": "Release"
},
{
"name": "linux-clang-ci-debug",
"displayName": "Debug",
"configurePreset": "linux-clang-ci",
"configuration": "Debug"
},
{
"name": "linux-gcc-release",
"displayName": "Release",
"configurePreset": "linux-ninja-clang",
"configurePreset": "linux-gcc",
"configuration": "Release"
},
{
"name": "linux-ninja-clang-debug",
"name": "linux-gcc-debug",
"displayName": "Debug",
"configurePreset": "linux-ninja-clang",
"configurePreset": "linux-gcc",
"configuration": "Debug"
},
{
"name": "linux-ninja-clang-ci-release",
"name": "linux-gcc-ci-release",
"displayName": "Release",
"configurePreset": "linux-ninja-clang-ci",
"configurePreset": "linux-gcc-ci",
"configuration": "Release"
},
{
"name": "linux-ninja-clang-ci-debug",
"name": "linux-gcc-ci-debug",
"displayName": "Debug",
"configurePreset": "linux-ninja-clang-ci",
"configurePreset": "linux-gcc-ci",
"configuration": "Debug"
}
]
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Optional:
Falcor uses the [CMake](https://cmake.org) build system. Additional information on how to use Falcor with CMake is available in the [CMake](docs/development/cmake.md) development documetation page.

### Visual Studio
If you are working with Visual Studio, you can setup a native Visual Studio solution by running `setup_vs2019.bat` (or `setup_vs2022.bat`, same process) after cloning this repository. The solution files are written to `build/windows-vs2019` and the binary output is located in `build/windows-vs2019/bin`.
If you are working with Visual Studio 2022, you can setup a native Visual Studio solution by running `setup_vs2022.bat` after cloning this repository. The solution files are written to `build/windows-vs2022` and the binary output is located in `build/windows-vs2022/bin`.


### Visual Studio Code
Expand All @@ -45,10 +45,10 @@ Falcor uses _CMake Presets_ store in `CMakePresets.json` to provide a set of com
$ cmake --list-presets
Available configure presets:
"windows-vs2019" - Windows VS2019
"windows-vs2022" - Windows VS2022
"windows-ninja-msvc" - Windows Ninja/MSVC
"linux-ninja-clang" - Linux Ninja/Clang
"linux-clang" - Linux Ninja/Clang
"linux-gcc" - Linux Ninja/GCC
```

Use `cmake --preset <preset name>` to generate the build tree for a given preset. The build tree is written to the `build/<preset name>` folder and the binary output files are in `build/<preset name>/bin`.
Expand Down
Loading

0 comments on commit 258a214

Please sign in to comment.