Skip to content

Commit 215ee50

Browse files
author
devsh
committed
shared ownership needs to be settled for the buffers backing acceelration structures
1 parent 3689118 commit 215ee50

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

include/nbl/video/utilities/CAssetConverter.h

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,8 +203,10 @@ class CAssetConverter : public core::IReferenceCounted
203203
public:
204204
PATCH_IMPL_BOILERPLATE(asset::ICPUBottomLevelAccelerationStructure);
205205

206-
protected:
207206
using build_flags_t = asset::ICPUBottomLevelAccelerationStructure::BUILD_FLAGS;
207+
core::bitflag<build_flags_t> getBuildFlags(const asset::ICPUBottomLevelAccelerationStructure* blas) const;
208+
209+
protected:
208210
inline std::pair<bool,this_t> combine(const this_t& other) const
209211
{
210212
return combine_impl<this_t>(*this,other);
@@ -216,8 +218,10 @@ class CAssetConverter : public core::IReferenceCounted
216218
public:
217219
PATCH_IMPL_BOILERPLATE(asset::ICPUTopLevelAccelerationStructure);
218220

219-
protected:
220221
using build_flags_t = asset::ICPUTopLevelAccelerationStructure::BUILD_FLAGS;
222+
core::bitflag<build_flags_t> getBuildFlags(const asset::ICPUTopLevelAccelerationStructure* tlas) const;
223+
224+
protected:
221225
inline std::pair<bool,this_t> combine(const this_t& other) const
222226
{
223227
return combine_impl<this_t>(*this,other);
@@ -795,6 +799,16 @@ class CAssetConverter : public core::IReferenceCounted
795799
return {};
796800
}
797801

802+
// this a weird signature, but its for an acceleration structure backing IGPUBuffer
803+
virtual inline std::span<const uint32_t> getSharedOwnershipQueueFamilies(const size_t groupCopyID, const asset::ICPUBottomLevelAccelerationStructure* blas, const patch_t<asset::ICPUBottomLevelAccelerationStructure>& patch) const
804+
{
805+
return {};
806+
}
807+
virtual inline std::span<const uint32_t> getSharedOwnershipQueueFamilies(const size_t groupCopyID, const asset::ICPUTopLevelAccelerationStructure* tlas, const patch_t<asset::ICPUTopLevelAccelerationStructure>& patch) const
808+
{
809+
return {};
810+
}
811+
798812
virtual inline std::span<const uint32_t> getSharedOwnershipQueueFamilies(const size_t groupCopyID, const asset::ICPUImage* buffer, const patch_t<asset::ICPUImage>& patch) const
799813
{
800814
return {};

0 commit comments

Comments
 (0)