You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
//! Fills ranges with callback allocated in stagingBuffer and Records the commands needed to copy the data from stagingBuffer to `bufferRange.buffer`
301
304
//! If the allocation from staging memory fails due to large buffer size or fragmentation then This function may need to submit the command buffer via the `submissionQueue`.
302
305
//! Returns:
303
306
//! True on successful recording of copy commands and handling of overflows if any, and false on failure for any reason.
@@ -311,8 +314,7 @@ class NBL_API2 IUtilities : public core::IReferenceCounted
311
314
//! * nextSubmit must be valid (see `SIntendedSubmitInfo::valid()`)
312
315
//! * bufferRange must be valid (see `SBufferRange::isValid()`)
// TODO: Why did we settle on `/4` ? It definitely wasn't about the uint32_t size!
330
+
// TODO: Why did we settle on `/4` ? It was something about worst case fragmentation due to alignment in General Purpose Address Allocator. But need to remember what exactly.
//! Copies `data` to stagingBuffer and Records the commands needed to copy the data from stagingBuffer to `bufferRange.buffer`.
387
+
//! Returns same as `updateBufferRangeViaStagingBuffer` with a callback instead of a pointer, make sure to submit with `nextSubmit.popSubmit()` after this function returns.
388
+
//! Parameters:
389
+
//! - nextSubmit: same as `updateBufferRangeViaStagingBuffer` with a callback
390
+
//! - bufferRange: same as `updateBufferRangeViaStagingBuffer` with a callback
391
+
//! - data: raw pointer to data that will be copied to `bufferRange::buffer` at `bufferRange::offset`
392
+
//! Valid Usage:
393
+
//! * same as `updateBufferRangeViaStagingBuffer` with a callback
0 commit comments