From 81e440a97fa4ca8610ced2a8d4d4b293ab3a6173 Mon Sep 17 00:00:00 2001 From: Przemek Date: Thu, 27 Feb 2025 12:19:19 +0100 Subject: [PATCH 01/49] Update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index e2e8ed0874..8058cff295 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit e2e8ed0874f94fdb2850ec7756b5976d6a284cc8 +Subproject commit 8058cff295589b358eba291ed22804601cc6c7bf From be37c6af3a9c74ff8b56ef02341fe7342734dcb8 Mon Sep 17 00:00:00 2001 From: Przemek Date: Thu, 20 Mar 2025 12:38:09 +0100 Subject: [PATCH 02/49] Updated examples --- examples_tests | 2 +- src/nbl/video/CVulkanPhysicalDevice.cpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/examples_tests b/examples_tests index 8058cff295..a215f450b8 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 8058cff295589b358eba291ed22804601cc6c7bf +Subproject commit a215f450b8432c27c5ed0a352185e22b34aa2794 diff --git a/src/nbl/video/CVulkanPhysicalDevice.cpp b/src/nbl/video/CVulkanPhysicalDevice.cpp index fc45b987bd..e7586c5b4c 100644 --- a/src/nbl/video/CVulkanPhysicalDevice.cpp +++ b/src/nbl/video/CVulkanPhysicalDevice.cpp @@ -1564,7 +1564,8 @@ core::smart_refctd_ptr CVulkanPhysicalDevice::createLogicalDevic enableExtensionIfAvailable(VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME); - enableExtensionIfAvailable(VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME); + VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR fragmentShaderBarycentricFeatures = { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, nullptr}; + enableExtensionIfAvailable(VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME,&fragmentShaderBarycentricFeatures); VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR subgroupUniformControlFlowFeatures = { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR,nullptr }; enableExtensionIfAvailable(VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME,&subgroupUniformControlFlowFeatures); From c9e0926263925d1e3d8dfb38b2919d046a52c412 Mon Sep 17 00:00:00 2001 From: Przemek Date: Wed, 26 Mar 2025 11:18:54 +0100 Subject: [PATCH 03/49] Implemented height shading --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index a215f450b8..8900f9cf5b 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit a215f450b8432c27c5ed0a352185e22b34aa2794 +Subproject commit 8900f9cf5b2f4c8d424aabbaf5237a371957e21f From 896d0c4edd87e4b4d75f4a4f207557913c8a558c Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Sun, 30 Mar 2025 08:20:32 +0330 Subject: [PATCH 04/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 8900f9cf5b..10791e9f48 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 8900f9cf5b2f4c8d424aabbaf5237a371957e21f +Subproject commit 10791e9f48d5563b319b58a7ea47dbd19639abe2 From 25eceed8a5afaafb87c9dc0746bd18b3010b12b4 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 10 Apr 2025 06:01:01 +0330 Subject: [PATCH 05/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 10791e9f48..06f72c50cd 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 10791e9f48d5563b319b58a7ea47dbd19639abe2 +Subproject commit 06f72c50cd2b575741faa61ad9624f688817f41c From df77044327ff3add0d475173a911b1a437a815d7 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 10 Apr 2025 08:44:34 +0330 Subject: [PATCH 06/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 06f72c50cd..e4e7f1ec84 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 06f72c50cd2b575741faa61ad9624f688817f41c +Subproject commit e4e7f1ec8476ff7d8c3f9bf71002c40c9585b81d From a327c2986c3775f8352117136367d4c23f69cdf2 Mon Sep 17 00:00:00 2001 From: Przemek Date: Sat, 12 Apr 2025 12:42:52 +0200 Subject: [PATCH 07/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index e4e7f1ec84..fd4e576665 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit e4e7f1ec8476ff7d8c3f9bf71002c40c9585b81d +Subproject commit fd4e576665b228ede3acd28fc32119cc42d8cf5e From 3bf7c616c56898166ae498bd7e5eee8ad2b968ee Mon Sep 17 00:00:00 2001 From: Przemek Date: Mon, 14 Apr 2025 12:55:13 +0200 Subject: [PATCH 08/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index fd4e576665..6c907e49bc 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit fd4e576665b228ede3acd28fc32119cc42d8cf5e +Subproject commit 6c907e49bce8d7bde928af6b521fa2d7cc280584 From a77ca954ca3b68946312153e0808f260d50bc829 Mon Sep 17 00:00:00 2001 From: Przemek Date: Mon, 14 Apr 2025 16:01:23 +0200 Subject: [PATCH 09/49] Updated_examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 6c907e49bc..f173c71866 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 6c907e49bce8d7bde928af6b521fa2d7cc280584 +Subproject commit f173c71866259189779de0edc8bb209717bbf7b2 From 4ed3af9b2786b246ab22b76c49513201dd0cdbb1 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 15 Apr 2025 12:52:24 +0330 Subject: [PATCH 10/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index f173c71866..1db627c52e 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit f173c71866259189779de0edc8bb209717bbf7b2 +Subproject commit 1db627c52e32644bdf276bfcdec4afbf92cf16c8 From 631c63eb8dcf25a48111297dca84cf3b934059bd Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 15 Apr 2025 12:55:54 +0330 Subject: [PATCH 11/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 1db627c52e..432b931caa 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 1db627c52e32644bdf276bfcdec4afbf92cf16c8 +Subproject commit 432b931caa1192bf6982178af4a0c9686d7222ba From f85956dc6ca5c70a221c2c1e59b84a2488c58d67 Mon Sep 17 00:00:00 2001 From: Przemek Date: Tue, 15 Apr 2025 13:04:50 +0200 Subject: [PATCH 12/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 432b931caa..88dcf44da0 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 432b931caa1192bf6982178af4a0c9686d7222ba +Subproject commit 88dcf44da0465b3e04a7255ba26a67fa342b5552 From 24561277adc1719ef89db960f251d43eedb7dce1 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 15 Apr 2025 14:44:17 +0330 Subject: [PATCH 13/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 88dcf44da0..906443947f 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 88dcf44da0465b3e04a7255ba26a67fa342b5552 +Subproject commit 906443947fb830c1d1d75ed48f3d47e97b6b335c From 7674e432175e731c7d021b5a4ab5eee2395c8c95 Mon Sep 17 00:00:00 2001 From: Przemek Date: Sat, 19 Apr 2025 16:39:24 +0200 Subject: [PATCH 14/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 906443947f..c8653573a6 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 906443947fb830c1d1d75ed48f3d47e97b6b335c +Subproject commit c8653573a6b93a3962de2f0b5662cb630e9ee51b From 603004511ee68529e0fbc98ffed8fcdf505c9f58 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Mon, 21 Apr 2025 14:41:34 +0330 Subject: [PATCH 15/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index c8653573a6..95ed1adb21 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit c8653573a6b93a3962de2f0b5662cb630e9ee51b +Subproject commit 95ed1adb218dfc3159ace39ff69a852e81913cda From f9978949bb8c0cab5c8c68b1c3bf4c3dcd470b78 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Mon, 21 Apr 2025 16:09:01 +0330 Subject: [PATCH 16/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 95ed1adb21..b36e702ed6 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 95ed1adb218dfc3159ace39ff69a852e81913cda +Subproject commit b36e702ed6f9e57e966e450b5d3bbb7e8681165d From 38d5ee2d8bd0b0179507290af19777d050a3114a Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 22 Apr 2025 08:58:49 +0330 Subject: [PATCH 17/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index b36e702ed6..2462d0adfa 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit b36e702ed6f9e57e966e450b5d3bbb7e8681165d +Subproject commit 2462d0adfa9a49e30dacbb0d25c3bd1acc47a62f From ca49224901976c6d24a4b745f0ee8e5e100af285 Mon Sep 17 00:00:00 2001 From: Przemek Date: Tue, 22 Apr 2025 11:07:42 +0200 Subject: [PATCH 18/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 2462d0adfa..287688e18f 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 2462d0adfa9a49e30dacbb0d25c3bd1acc47a62f +Subproject commit 287688e18f75aa1a24c054691e5e0e197c9f751f From ab57b02755f07361f4c26318536cbbe6ac80433d Mon Sep 17 00:00:00 2001 From: Przemek Date: Tue, 22 Apr 2025 21:05:55 +0200 Subject: [PATCH 19/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 4346a6024c..daa51f68fc 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 4346a6024cdd1910062c7001d1e17be3a54eb061 +Subproject commit daa51f68fc040b8927a9c5d1e0bd8e6dc4e3cac1 From 38baf9f2a3f90b720f29b404c7af88992b0189aa Mon Sep 17 00:00:00 2001 From: Przemek Date: Wed, 23 Apr 2025 11:04:28 +0200 Subject: [PATCH 20/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index daa51f68fc..8a771a6400 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit daa51f68fc040b8927a9c5d1e0bd8e6dc4e3cac1 +Subproject commit 8a771a64002c6f2e2b3af035227ed18fe3947477 From f810b5d46d1bb9191132778e7be7aad1b574758b Mon Sep 17 00:00:00 2001 From: Przemek Date: Thu, 24 Apr 2025 14:06:20 +0200 Subject: [PATCH 21/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 8a771a6400..fa5d7f1e2e 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 8a771a64002c6f2e2b3af035227ed18fe3947477 +Subproject commit fa5d7f1e2ea73767e36319d4e40d704855ceb16d From e19e644060719dc26985a370ffd483c973b1f18f Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 25 Apr 2025 12:09:07 +0330 Subject: [PATCH 22/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index fa5d7f1e2e..9ddaa810cf 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit fa5d7f1e2ea73767e36319d4e40d704855ceb16d +Subproject commit 9ddaa810cf0bfc19130f66de25f43b1be3ad8092 From 5c27651b9b1d419b346a35f614cf1dbc74ddb8e0 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 1 May 2025 14:09:09 +0400 Subject: [PATCH 23/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 9ddaa810cf..496cec4e8a 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 9ddaa810cf0bfc19130f66de25f43b1be3ad8092 +Subproject commit 496cec4e8aff7d2e6e101b56b496b9ae19d8bfb1 From 6d2011f1ec8694b93f8d0518795e5dbd3ff91130 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 2 May 2025 11:20:11 +0400 Subject: [PATCH 24/49] update examples tests --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 496cec4e8a..7381460e1c 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 496cec4e8aff7d2e6e101b56b496b9ae19d8bfb1 +Subproject commit 7381460e1c9a5b0bc1a8f319c0f81b0d577e97d8 From 0d6542a07b1d55275fa1338c87c6998f9481793c Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 2 May 2025 13:04:31 +0400 Subject: [PATCH 25/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 7381460e1c..1db6e0461f 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 7381460e1c9a5b0bc1a8f319c0f81b0d577e97d8 +Subproject commit 1db6e0461f06c9316ae4181d25e9e42e97c34707 From 095eda5f386d25aab04faa289c4fa2e8d9cab497 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 2 May 2025 13:07:26 +0400 Subject: [PATCH 26/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 1db6e0461f..7521f571d8 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 1db6e0461f06c9316ae4181d25e9e42e97c34707 +Subproject commit 7521f571d80aee25bb88f6ee30e416e709f60d74 From 93297f2e906f9f63303b42cfac1952ddfb650830 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Sat, 3 May 2025 10:45:08 +0400 Subject: [PATCH 27/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 7521f571d8..7ab6f5d7fb 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 7521f571d80aee25bb88f6ee30e416e709f60d74 +Subproject commit 7ab6f5d7fbe22841da07b3fcf03a235e5b04e1e3 From 219b3b060ca5ea34cee8f64b13d985ab5c52728b Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Sun, 4 May 2025 17:42:55 +0400 Subject: [PATCH 28/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 7ab6f5d7fb..f88f6b6a07 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 7ab6f5d7fbe22841da07b3fcf03a235e5b04e1e3 +Subproject commit f88f6b6a0710c052bac6b1d5bedbd2af9842af53 From 3540cc9d8c52110a2069bee5a7ee75b5288777fb Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Mon, 5 May 2025 15:09:54 +0400 Subject: [PATCH 29/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index f88f6b6a07..4ec49382be 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit f88f6b6a0710c052bac6b1d5bedbd2af9842af53 +Subproject commit 4ec49382bee48a8cf5b1d5f5916a40c350c354e3 From 02488dfa9aa049666a097a09c3c2812a2c9b44a8 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Mon, 5 May 2025 17:06:31 +0400 Subject: [PATCH 30/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 4ec49382be..8677f1fc20 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 4ec49382bee48a8cf5b1d5f5916a40c350c354e3 +Subproject commit 8677f1fc20c10a41603f75a445a9901132e54321 From 8c935783422346a459062d5689764cc2e4fb1e87 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Mon, 12 May 2025 08:38:30 +0400 Subject: [PATCH 31/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 8677f1fc20..48b3125a32 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 8677f1fc20c10a41603f75a445a9901132e54321 +Subproject commit 48b3125a32c722ef46a8fae79aa985670b07f12a From 7e428bd2aacb6e50f9a5ddf78ee449fb8bb786f2 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 13 May 2025 10:59:34 +0400 Subject: [PATCH 32/49] LRUCache new functionalities --- include/nbl/core/containers/LRUCache.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/nbl/core/containers/LRUCache.h b/include/nbl/core/containers/LRUCache.h index 25554d60b2..3505df8c70 100644 --- a/include/nbl/core/containers/LRUCache.h +++ b/include/nbl/core/containers/LRUCache.h @@ -400,6 +400,19 @@ class ResizableLRUCache : protected impl::LRUCacheBase 0) + return &base_t::m_list.getBack()->data.first; + else + return nullptr; + } + + inline size_t size() const { return m_shortcut_map.size(); } + + inline bool empty() const { return size() > 0ull; } /** * @brief Resizes the cache by extending its capacity so it can hold more elements. Returns a bool indicating if capacity was indeed increased. From 460475b60a29510e8847bbcf53228fc6f99c693a Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 13 May 2025 11:01:31 +0400 Subject: [PATCH 33/49] small dumb fix --- include/nbl/core/containers/LRUCache.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/nbl/core/containers/LRUCache.h b/include/nbl/core/containers/LRUCache.h index 3505df8c70..fb36401288 100644 --- a/include/nbl/core/containers/LRUCache.h +++ b/include/nbl/core/containers/LRUCache.h @@ -412,7 +412,7 @@ class ResizableLRUCache : protected impl::LRUCacheBase 0ull; } + inline bool empty() const { return size() <= 0ull; } /** * @brief Resizes the cache by extending its capacity so it can hold more elements. Returns a bool indicating if capacity was indeed increased. From 0f3f2076a0d1471ab48ad84030d46cc517162008 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 13 May 2025 15:52:25 +0400 Subject: [PATCH 34/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 48b3125a32..daf6810283 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 48b3125a32c722ef46a8fae79aa985670b07f12a +Subproject commit daf68102835a819250e907079106d366fd4cd47f From 6efb44c6b5390746eb1a2d22e16bf6ffe51c4f74 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Wed, 14 May 2025 14:06:08 +0400 Subject: [PATCH 35/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index daf6810283..ce29c74f52 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit daf68102835a819250e907079106d366fd4cd47f +Subproject commit ce29c74f5258851d5cafa105758c45b07ed8f516 From ddba6e460c8b666f670a74598ead46549f9566d0 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Wed, 14 May 2025 17:57:34 +0400 Subject: [PATCH 36/49] fix suballocated descriptorset destructor and cull_frees --- include/nbl/video/alloc/SubAllocatedDescriptorSet.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/include/nbl/video/alloc/SubAllocatedDescriptorSet.h b/include/nbl/video/alloc/SubAllocatedDescriptorSet.h index b5826478f8..9d2e7765f4 100644 --- a/include/nbl/video/alloc/SubAllocatedDescriptorSet.h +++ b/include/nbl/video/alloc/SubAllocatedDescriptorSet.h @@ -209,9 +209,9 @@ class SubAllocatedDescriptorSet : public core::IReferenceCounted remainingFrees = cull_frees(); } while (remainingFrees > 0); - for (uint32_t i = 0; i < m_allocatableRanges.size(); i++) + for (auto& it : m_allocatableRanges) { - auto& range = m_allocatableRanges[i]; + auto& range = it.second; if (range.reservedSize == 0) continue; assert(range.eventHandler->getTimelines().size() == 0); @@ -376,10 +376,9 @@ class SubAllocatedDescriptorSet : public core::IReferenceCounted uint32_t frees = 0; core::vector nulls(m_totalDeferredFrees); auto outNulls = nulls.data(); - for (uint32_t i = 0; i < m_allocatableRanges.size(); i++) + for (auto& it : m_allocatableRanges) { - auto& it = m_allocatableRanges[i]; - frees += it.eventHandler->poll(outNulls).eventsLeft; + frees += it.second.eventHandler->poll(outNulls).eventsLeft; } getDevice()->nullifyDescriptors({nulls.data(),outNulls}); return frees; From d418ad576f44e7d53c55e9213edf93b2352f9ee6 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Wed, 14 May 2025 18:08:14 +0400 Subject: [PATCH 37/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index ce29c74f52..bd9ee8e18c 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit ce29c74f5258851d5cafa105758c45b07ed8f516 +Subproject commit bd9ee8e18c28e5fc444b732e59e8c68a8f2c97db From 4a3720e5e8282b14e54c9377a2c62409fa5a4978 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Wed, 14 May 2025 18:32:39 +0400 Subject: [PATCH 38/49] update example --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index bd9ee8e18c..fcff2ac68e 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit bd9ee8e18c28e5fc444b732e59e8c68a8f2c97db +Subproject commit fcff2ac68ea5dafcff8873bd379bd691c003bd59 From c4bc0c1d9e73bb4a1a4871e418723789ed11fe74 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 15 May 2025 06:45:26 +0400 Subject: [PATCH 39/49] Fix IGPUDescriptorSet holding on to descriptors ref at correct arrayElement --- src/nbl/video/IGPUDescriptorSet.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nbl/video/IGPUDescriptorSet.cpp b/src/nbl/video/IGPUDescriptorSet.cpp index 350e810bb0..692b4b5819 100644 --- a/src/nbl/video/IGPUDescriptorSet.cpp +++ b/src/nbl/video/IGPUDescriptorSet.cpp @@ -174,7 +174,7 @@ void IGPUDescriptorSet::processWrite(const IGPUDescriptorSet::SWriteDescriptorSe for (auto j = 0; j < write.count; ++j) { - descriptors[j] = write.info[j].desc; + descriptors[j + write.arrayElement] = write.info[j].desc; if (mutableSamplers) mutableSamplers[j] = write.info[j].info.combinedImageSampler.sampler; From 08ff1dfaafb55ccee1fe7276ebd7eb6ab65beff6 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 15 May 2025 12:13:59 +0400 Subject: [PATCH 40/49] Fix IGPUDescriptorSet holding on to mutableSamplers --- src/nbl/video/IGPUDescriptorSet.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nbl/video/IGPUDescriptorSet.cpp b/src/nbl/video/IGPUDescriptorSet.cpp index 692b4b5819..0d0e87e338 100644 --- a/src/nbl/video/IGPUDescriptorSet.cpp +++ b/src/nbl/video/IGPUDescriptorSet.cpp @@ -177,7 +177,7 @@ void IGPUDescriptorSet::processWrite(const IGPUDescriptorSet::SWriteDescriptorSe descriptors[j + write.arrayElement] = write.info[j].desc; if (mutableSamplers) - mutableSamplers[j] = write.info[j].info.combinedImageSampler.sampler; + mutableSamplers[j + write.arrayElement] = write.info[j].info.combinedImageSampler.sampler; } auto& bindingRedirect = m_layout->getDescriptorRedirect(validationResult.type); auto bindingCreateFlags = bindingRedirect.getCreateFlags(validationResult.descriptorRedirectBindingIndex); From 2cf7ec80c8075d87e764cf622f6348c416e2ef48 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 15 May 2025 12:14:20 +0400 Subject: [PATCH 41/49] SubAllocatedDescriptorSet to hold onto additional refcounted objects --- .../video/alloc/SubAllocatedDescriptorSet.h | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/include/nbl/video/alloc/SubAllocatedDescriptorSet.h b/include/nbl/video/alloc/SubAllocatedDescriptorSet.h index 9d2e7765f4..3b0c9989e5 100644 --- a/include/nbl/video/alloc/SubAllocatedDescriptorSet.h +++ b/include/nbl/video/alloc/SubAllocatedDescriptorSet.h @@ -28,11 +28,18 @@ class SubAllocatedDescriptorSet : public core::IReferenceCounted class DeferredFreeFunctor { public: - inline DeferredFreeFunctor(SubAllocatedDescriptorSet* composed, uint32_t binding, size_type count, const value_type* addresses) - : m_addresses(std::move(core::make_refctd_dynamic_array>(count))), - m_binding(binding), m_composed(composed) + using ref_t = core::smart_refctd_ptr; + + template requires std::is_base_of_v + inline DeferredFreeFunctor(SubAllocatedDescriptorSet* composed, uint32_t binding, size_type count, const value_type* addresses, const T*const *const objectsToHold) + : m_addresses(core::make_refctd_dynamic_array>(count)) + , m_objectsToHold(core::make_refctd_dynamic_array>(count)) + , m_binding(binding) + , m_composed(composed) { memcpy(m_addresses->data(), addresses, count * sizeof(value_type)); + for (size_t i=0u; i m_addresses; + core::smart_refctd_dynamic_array m_objectsToHold; SubAllocatedDescriptorSet* m_composed; // TODO: shouldn't be called `composed`, maybe `parent` or something uint32_t m_binding; }; @@ -355,10 +365,11 @@ class SubAllocatedDescriptorSet : public core::IReferenceCounted } // defers based on the conservative estimation if `futureWait` needs to be waited on, if doesn't will call nullify descriiptors internally immediately - inline void multi_deallocate(uint32_t binding, size_type count, const value_type* addr, const ISemaphore::SWaitInfo& futureWait) noexcept + template + inline void multi_deallocate(uint32_t binding, size_type count, const value_type* addr, const ISemaphore::SWaitInfo& futureWait, const T*const *const objectsToDrop=nullptr) noexcept { if (futureWait.semaphore) - multi_deallocate(binding, futureWait, DeferredFreeFunctor(this, binding, count, addr)); + multi_deallocate(binding, futureWait, DeferredFreeFunctor(this, binding, count, addr, objectsToDrop)); else { core::vector nulls(count); From 1c959430714a489c07a29fa84d66b9b00623ec61 Mon Sep 17 00:00:00 2001 From: Przemek Date: Thu, 15 May 2025 14:12:28 +0200 Subject: [PATCH 42/49] Updated examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 8677f1fc20..fc20a29406 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 8677f1fc20c10a41603f75a445a9901132e54321 +Subproject commit fc20a2940689494cc79c3525fb16e578855199bf From 24dfb1528b629bb5c60e55f5090ac3514fac6b49 Mon Sep 17 00:00:00 2001 From: Przemek Date: Thu, 15 May 2025 15:48:34 +0200 Subject: [PATCH 43/49] Updated examples_tests --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 0b010ea550..ab6dd2e3bb 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 0b010ea5503ab5f5460183d48d6aefb806c03baf +Subproject commit ab6dd2e3bbca153072f6cec0c84117429599e789 From 37785e5c1c894b11281e9c7bfc0a3c4be9be887a Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Thu, 15 May 2025 14:42:38 +0400 Subject: [PATCH 44/49] fix wrong check for nullDescriptors feature --- src/nbl/video/CVulkanLogicalDevice.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nbl/video/CVulkanLogicalDevice.cpp b/src/nbl/video/CVulkanLogicalDevice.cpp index 2e30a18269..e21cddf5fe 100644 --- a/src/nbl/video/CVulkanLogicalDevice.cpp +++ b/src/nbl/video/CVulkanLogicalDevice.cpp @@ -764,7 +764,7 @@ void CVulkanLogicalDevice::updateDescriptorSets_impl(const SUpdateDescriptorSets void CVulkanLogicalDevice::nullifyDescriptors_impl(const SDropDescriptorSetsParams& params) { const auto& drops = params.drops; - if (getEnabledFeatures().nullDescriptor) + if (!getEnabledFeatures().nullDescriptor) { return; } From 667e30d51ed04274fe1d5348f8569a020f3b8750 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 16 May 2025 09:05:38 +0400 Subject: [PATCH 45/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index ab6dd2e3bb..34a61a3370 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit ab6dd2e3bbca153072f6cec0c84117429599e789 +Subproject commit 34a61a337035d8f2b053f1fed002b5f2c85ffde5 From 8b094b40da4e7b9b91b973532702a5514d321ed3 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 16 May 2025 14:41:05 +0400 Subject: [PATCH 46/49] small LRUCache comment to help with usage --- include/nbl/core/containers/LRUCache.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/include/nbl/core/containers/LRUCache.h b/include/nbl/core/containers/LRUCache.h index fb36401288..469c213744 100644 --- a/include/nbl/core/containers/LRUCache.h +++ b/include/nbl/core/containers/LRUCache.h @@ -389,7 +389,7 @@ class ResizableLRUCache : protected impl::LRUCacheBase 0) From 7c04af6b580078129308a86806baf6218bc72df8 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Fri, 16 May 2025 14:41:16 +0400 Subject: [PATCH 47/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 34a61a3370..ada9c8b565 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 34a61a337035d8f2b053f1fed002b5f2c85ffde5 +Subproject commit ada9c8b565ee428ea7c2077fc46624247b2c74c5 From 315ce8699d06a3463481a1becc824618274d9ade Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Sun, 18 May 2025 15:14:17 +0400 Subject: [PATCH 48/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index ada9c8b565..2632c3abe1 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit ada9c8b565ee428ea7c2077fc46624247b2c74c5 +Subproject commit 2632c3abe127a226c1593a47491a381f32762680 From a4b42502355a6f93d0b1222d37c0526731313c14 Mon Sep 17 00:00:00 2001 From: Erfan Ahmadi Date: Tue, 20 May 2025 12:08:35 +0400 Subject: [PATCH 49/49] update examples --- examples_tests | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples_tests b/examples_tests index 2632c3abe1..e2fef3a862 160000 --- a/examples_tests +++ b/examples_tests @@ -1 +1 @@ -Subproject commit 2632c3abe127a226c1593a47491a381f32762680 +Subproject commit e2fef3a8627437c307083651d67b40819d71d7d8