Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
e2aa2bb
add creation params and geoemtrycreator reference to IAssetLoaderOver…
Feb 19, 2026
ef14edf
Add a primitive reveral mode to `IIndexingCallback::SContext`
Feb 19, 2026
0136b63
make hash recompute optinal on all mesh manipulation functions
Feb 19, 2026
63cc269
all shapes in MitsubaLoader must be geometry collections
Feb 19, 2026
c3bfff9
Merge branch 'master' of github.com:Devsh-Graphics-Programming/Nabla
Feb 19, 2026
a53f301
showcase the solution to `IAssetLoader::ELPF_RIGHT_HANDED_MESHES` dep…
Feb 19, 2026
dada0d3
Merge Fixes for Geotex streaming#952 (#1002)
Erfan-Ahmadi Feb 19, 2026
7e0938f
Install FullScreenTriangle in relocatable package
AnastaZIuk Feb 19, 2026
45228f0
Build Full Nabla In CI
AnastaZIuk Feb 19, 2026
e4c8bb0
Export FullScreenTriangle Builtins Library
AnastaZIuk Feb 19, 2026
d7980d7
Build And Install Nabla In One CI Step
AnastaZIuk Feb 19, 2026
a66f3af
tiny fixes
Feb 19, 2026
f2c60f4
hook up external loaders to Mitsuba XML
Feb 19, 2026
76b761e
Merge branch 'master' of github.com:Devsh-Graphics-Programming/Nabla
Feb 19, 2026
dc31aa0
post merge submodule update
Feb 19, 2026
03b5e34
Fix FullScreenTriangle Builtins RelWithDebInfo Name
AnastaZIuk Feb 19, 2026
86779cc
Fix NSC lookup mode for build and install runs
AnastaZIuk Feb 20, 2026
0093d51
make more `operator bool()` explicit, notice a missing `_BIT` suffix …
Feb 20, 2026
ad362fc
went a bit overboard with previous commit, also fix inifinite recursi…
Feb 20, 2026
08d3808
nobody used ICPUTLAS's build ranges
Feb 20, 2026
e2f981f
rework the BLAS exports of geometry collections completely
Feb 20, 2026
56b5f39
introduce TLAS export
Feb 20, 2026
9a6da86
Merge branch 'master' of github.com:Devsh-Graphics-Programming/Nabla
Feb 20, 2026
23ae60a
fix a compiler warning
Feb 20, 2026
07cefd0
wait for a better solution from Arkadiusz
Feb 20, 2026
64107fe
silence a few warnings
Feb 21, 2026
4466edd
Guard install lookup paths with package defines
AnastaZIuk Feb 21, 2026
7607849
Merge branch 'master' of github.com:Devsh-Graphics-Programming/Nabla …
AnastaZIuk Feb 21, 2026
1c456ef
Remove NSC build interface env wrapper
AnastaZIuk Feb 21, 2026
b64184a
Refactor runtime module lookup and smoke override tests
AnastaZIuk Feb 21, 2026
0f8b6c1
Remove smoke override test flow
AnastaZIuk Feb 21, 2026
35f348b
Add one call runtime lookup flow for package consumers
AnastaZIuk Feb 21, 2026
b5bc065
Add smoke install selftest and runtime module install rules
AnastaZIuk Feb 21, 2026
61e250b
Consolidate smoke runtime flows and CI execution
AnastaZIuk Feb 21, 2026
edd1bec
Refine runtime module setup API and smoke flows
AnastaZIuk Feb 21, 2026
6c23014
Use cmake parse arguments for runtime module destinations
AnastaZIuk Feb 22, 2026
833009b
Add minimalistic smoke flow and consumption reference
AnastaZIuk Feb 22, 2026
4742eab
Add minimalistic smoke flow to CI
AnastaZIuk Feb 22, 2026
1b6611b
Fix runtime sync trigger and Docker setup retries
AnastaZIuk Feb 22, 2026
e502199
Merge pull request #1004 from Devsh-Graphics-Programming/moduleLookup
AnastaZIuk Feb 22, 2026
6e42854
fix 4 year old Junior code
Feb 27, 2026
f543598
Merge branch 'master' of github.com:Devsh-Graphics-Programming/Nabla
Feb 27, 2026
82e3ae1
handle when we have more than 128kb of command data to track
Feb 27, 2026
65f0f5b
Merge pull request #1005 from Devsh-Graphics-Programming/resource_tra…
devshgraphicsprogramming Feb 27, 2026
168ca4d
merge master, fix conflicts
keptsecret Mar 2, 2026
f1493ed
changes to linear, bilinear, box muller for pdf and backward pdf
keptsecret Jan 20, 2026
5933fe0
changes to solid angle method name, simplified a lot of code in spher…
keptsecret Jan 21, 2026
3ac7b83
removed redundant/unused variables from spherical triangle sample
keptsecret Jan 22, 2026
4ed1cbc
spherical rectangle stores origin, extent, basis and takes observer i…
keptsecret Jan 22, 2026
65ef4b3
added compressed spherical rectangle, comments for info of implementa…
keptsecret Jan 22, 2026
7fc8281
minor fixes to spherical rectangle stuff
keptsecret Feb 25, 2026
855dac4
spherical rectangle constructor for same rectangle and observer
keptsecret Mar 2, 2026
468031f
spherical rectangle create only from compressed, minor fix for spheri…
keptsecret Mar 2, 2026
0f143a0
reduced duplicate methods to only ones matching (close to) concept in…
keptsecret Mar 2, 2026
fb0e8a5
spherical rect generate don't divide by extents, let user do that
keptsecret Mar 2, 2026
ab5ee78
store only needed members from tri
keptsecret Mar 3, 2026
17c85ba
forward/backward pdfs for spherical triangle/rectangle, projected sph…
keptsecret Mar 3, 2026
d95cfa7
copied over fixed linear sampling because merge fucked up, added forw…
keptsecret Mar 3, 2026
0bb7b39
add forward pdf, generate inverse to bilinear
keptsecret Mar 4, 2026
89f6d5f
uniform hemi/sphere samplign make static methods private, added metho…
keptsecret Mar 4, 2026
e07ebc1
cosine hemi/sphere sampling make static methods private, added method…
keptsecret Mar 4, 2026
c4e63b3
box muller transform add forward pdf, generate wasn't merged from pt …
keptsecret Mar 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 40 additions & 19 deletions .github/workflows/build-nabla.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
matrix:
# vendor: [msvc, clangcl]
# TODO: Yas please fix ClangCL, we have a few new compile errors
# if we build MSVC then build "run-compiler-explorer" target, for ClangCL build just "nsc"
# build full Nabla preset, run-compiler-explorer is pulled in via ALL when Docker integration is enabled
vendor: [msvc]
config: [Release, Debug, RelWithDebInfo]
tag: ['17.13.6']
Expand All @@ -50,9 +50,35 @@ jobs:
Set-MpPreference -DisableArchiveScanning $true
Set-MpPreference -DisableScanningMappedNetworkDrivesForFullScan $true

if (-not (docker network ls --format '{{.Name}}' | Where-Object { $_ -eq 'docker_default' })) {
docker network create --driver nat docker_default
if ($LASTEXITCODE -ne 0) { exit 1 }
$maxAttempts = 12
$delaySeconds = 5
$dockerReady = $false

for ($attempt = 1; $attempt -le $maxAttempts; $attempt++) {
$networkNames = docker network ls --format '{{.Name}}'
if ($LASTEXITCODE -eq 0) {
if (-not ($networkNames | Where-Object { $_ -eq 'docker_default' })) {
docker network create --driver nat docker_default
if ($LASTEXITCODE -eq 0) {
$dockerReady = $true
break
}
}
else {
$dockerReady = $true
break
}
}

if ($attempt -lt $maxAttempts) {
Write-Host "Docker not ready yet (attempt $attempt/$maxAttempts), retry in ${delaySeconds}s..."
Start-Sleep -Seconds $delaySeconds
}
}

if (-not $dockerReady) {
Write-Error "Docker was not ready after $($maxAttempts*$delaySeconds)s total wait"
exit 1
}

- name: Set prefix
Expand Down Expand Up @@ -122,22 +148,17 @@ jobs:
docker exec orphan `
${{ env.entry }} ${{ env.cmd }} -Command cmake `
--preset ci-configure-dynamic-${{ matrix.vendor }} `
-DCMAKE_INSTALL_PREFIX:PATH=C:/mount/nabla/build-ct/install `
--profiling-output=profiling/cmake-profiling.json `
--profiling-format=google-trace

- name: Container – Build NSC
- name: Container – Build & Install Nabla
run: |
docker exec orphan `
${{ env.entry }} ${{ env.cmd }} -Command cmake --build `
--preset ci-build-dynamic-${{ matrix.vendor }} `
-t run-compiler-explorer --config ${{ matrix.config }}

- name: Container – Install Nabla
run: |
docker exec orphan `
${{ env.entry }} ${{ env.cmd }} -Command cmake --install `
${{ env.binary }} --config ${{ matrix.config }} `
--prefix ${{ env.install }}
--target install `
--config ${{ matrix.config }}

- name: API / Examples / Check Run (Create)
id: check-run-create
Expand Down Expand Up @@ -390,11 +411,11 @@ jobs:
if (-not (Test-Path "smoke/build-ct/install")) { throw "smoke/build-ct/install not found" }
tree.com smoke /F

- name: Configure Smoke
run: cmake -S smoke -B smoke/out
- name: Smoke Flow MINIMALISTIC
run: cmake -D FLOW=MINIMALISTIC -D CONFIG=${{ matrix.config }} -P smoke/RunSmokeFlow.cmake

- name: Build Smoke
run: cmake --build smoke/out --config ${{ matrix.config }}
- name: Smoke Flow CONFIGURE_ONLY
run: cmake -D FLOW=CONFIGURE_ONLY -D CONFIG=${{ matrix.config }} -P smoke/RunSmokeFlow.cmake

- name: CTest Smoke
run: ctest --verbose --test-dir smoke/out --force-new-ctest-process --output-on-failure --no-tests=error -C ${{ matrix.config }}
- name: Smoke Flow BUILD_ONLY
run: cmake -D FLOW=BUILD_ONLY -D CONFIG=${{ matrix.config }} -P smoke/RunSmokeFlow.cmake
32 changes: 29 additions & 3 deletions .github/workflows/run-nsc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,35 @@ jobs:
Set-MpPreference -DisableArchiveScanning $true
Set-MpPreference -DisableScanningMappedNetworkDrivesForFullScan $true

if (-not (docker network ls --format '{{.Name}}' | Where-Object { $_ -eq 'docker_default' })) {
docker network create --driver nat docker_default
if ($LASTEXITCODE -ne 0) { exit 1 }
$maxAttempts = 12
$delaySeconds = 5
$dockerReady = $false

for ($attempt = 1; $attempt -le $maxAttempts; $attempt++) {
$networkNames = docker network ls --format '{{.Name}}'
if ($LASTEXITCODE -eq 0) {
if (-not ($networkNames | Where-Object { $_ -eq 'docker_default' })) {
docker network create --driver nat docker_default
if ($LASTEXITCODE -eq 0) {
$dockerReady = $true
break
}
}
else {
$dockerReady = $true
break
}
}

if ($attempt -lt $maxAttempts) {
Write-Host "Docker not ready yet (attempt $attempt/$maxAttempts), retry in ${delaySeconds}s..."
Start-Sleep -Seconds $delaySeconds
}
}

if (-not $dockerReady) {
Write-Error "Docker was not ready after $($maxAttempts*$delaySeconds)s total wait"
exit 1
}

$sendDiscord = "${{ inputs.withDiscordMSG }}" -eq "true"
Expand Down
3 changes: 0 additions & 3 deletions 3rdparty/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -530,9 +530,6 @@ nbl_install_dir(imath/src/Imath)

nbl_install_file(blake/c/blake3.h)

nbl_install_file_spec(nlohmann_json/include/nlohmann/json_fwd.hpp nlohmann)
nbl_install_file_spec(nlohmann_json/include/nlohmann/detail/abi_macros.hpp nlohmann/detail)

nbl_install_dir(boost/superproject/libs/preprocessor/include/boost)

nbl_install_file_spec(renderdoc/renderdoc_app.h renderdoc)
Expand Down
27 changes: 26 additions & 1 deletion CMakePresets.json
Original file line number Diff line number Diff line change
Expand Up @@ -295,7 +295,32 @@
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
}
}
},
{
"name": "n4ce-configure-windows-msvc",
"hidden": false,
"binaryDir": "build/production/n4ce",
"cacheVariables": {
"NBL_STATIC_BUILD": "OFF",
"NBL_SKIP_BUILD_OPTIONS_VALIDATION": "ON",
"CMAKE_SUPPRESS_REGENERATION": "OFF",
"NBL_COMPILER_DYNAMIC_RUNTIME": "ON",
"NBL_EMBED_BUILTIN_RESOURCES": "ON",
"NBL_UPDATE_GIT_SUBMODULE": "OFF",
"NBL_COMPILE_WITH_CUDA": "OFF",
"NBL_BUILD_OPTIX": "OFF",
"NBL_BUILD_MITSUBA_LOADER": "OFF",
"NBL_BUILD_RADEON_RAYS": "OFF",
"_NBL_COMPILE_WITH_OPEN_EXR_": "ON",
"NBL_EXPLICIT_MODULE_LOAD_LOG": "ON",
"NBL_CPACK_NO_BUILD_DIRECTORY_MODULES": "ON",
"GIT_FAIL_IF_NONZERO_EXIT": "OFF"
},
"displayName": "[N4CE]: Dynamic library target, Visual Studio 17 2022 generator, MSVC v143 toolset",
"description": "Configure as dynamic library with Visual Studio 17 2022 generator and MSVC v143 toolset",
"generator": "Visual Studio 17 2022",
"toolset": "v143"
}
],
"buildPresets": [
{
Expand Down
Loading
Loading