Ray Query API interception and serialisation

Ignoring acceleration structure host-build for now, and by extension deferred operation handle functions are pass-though (i.e. ignored on replay).
This commit is contained in:
Cam Mannett
2024-02-27 11:15:01 +00:00
committed by Baldur Karlsson
parent e5410ad8fb
commit fa70f8fa87
22 changed files with 1818 additions and 48 deletions
+1 -1
View File
@@ -327,7 +327,7 @@ public:
{
const size_t lastIdx = size();
reserve(size() + 1);
new(elems + lastIdx) T(std::forward<ConstructArgs...>(args)...);
new(elems + lastIdx) T(std::forward<ConstructArgs>(args)...);
setUsedCount(usedCount + 1);
}
+7
View File
@@ -657,6 +657,11 @@ API-specific concepts.
An object which pools together other objects in an opaque way, either for runtime allocation and
deallocation, or for caching purposes.
.. data:: AccelerationStructure
A structure used to carry implementation-defined spatial partitioning data and related
information, used to accelerate geometry intersection queries (e.g. for ray tracing).
)");
enum class ResourceType : uint32_t
{
@@ -683,6 +688,8 @@ enum class ResourceType : uint32_t
Query,
Sync,
Pool,
AccelerationStructure,
};
DECLARE_REFLECTION_ENUM(ResourceType);