ecs: use std.mem.alignForward to calculate padding
This commit is contained in:
parent
f6d29e7669
commit
dd4d741aed
1 changed files with 3 additions and 2 deletions
|
|
@ -154,8 +154,9 @@ pub const ArchetypeStorage = struct {
|
|||
|
||||
var offset: usize = 0;
|
||||
for (storage.columns) |*column| {
|
||||
const align_mod = @ptrToInt(&new_block[offset]) % column.alignment;
|
||||
const padding = if (align_mod == 0) 0 else column.alignment - align_mod;
|
||||
const addr = @ptrToInt(&new_block[offset]);
|
||||
const aligned_addr = std.mem.alignForward(addr, column.alignment);
|
||||
const padding = aligned_addr - addr;
|
||||
offset += padding;
|
||||
if (storage.capacity > 0) {
|
||||
const slice = storage.block[column.offset .. column.offset + storage.capacity * column.size];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue