Instancing buffers waste space between draw commands #48

Closed
opened 2024-05-30 23:43:04 +02:00 by kayomn · 0 comments
Owner

If 513 draw instances are batched into blocks of 512, the renderer will dedicate a whole block to the last element and any subsequent calls will allocate a third block and start from an entirely new buffer.

Ideally the existing buffer could be used for data belonging to a separate set of instance draws, and instead the runtime would keep track of what range across the buffers belongs to what draw command.

instance_buffers: [ 512/512, 34/512 ]
command_ranges: [408, 104, 34]
If 513 draw instances are batched into blocks of 512, the renderer will dedicate a whole block to the last element and any subsequent calls will allocate a third block and start from an entirely new buffer. Ideally the existing buffer could be used for data belonging to a separate set of instance draws, and instead the runtime would keep track of what range across the buffers belongs to what draw command. ``` instance_buffers: [ 512/512, 34/512 ] command_ranges: [408, 104, 34] ```
kayomn added this to the 1.0 milestone 2024-06-05 00:06:15 +02:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: kayomn/ona#48
No description provided.