implementation of vkCmdFillBuffer and rework of logger
This commit is contained in:
@@ -15,5 +15,20 @@ pub fn deinit(self: *Self) void {
|
||||
|
||||
pub fn dispatch(self: *Self, command: *const cmd.Command) void {
|
||||
_ = self;
|
||||
_ = command;
|
||||
switch (command.*) {
|
||||
.FillBuffer => |data| fillBuffer(&data),
|
||||
else => {},
|
||||
}
|
||||
}
|
||||
|
||||
fn fillBuffer(data: *const cmd.CommandFillBuffer) void {
|
||||
const memory = if (data.buffer.memory) |memory| memory else unreachable;
|
||||
const raw_memory_map: [*]u32 = @ptrCast(@alignCast(memory.map(data.offset, data.size) catch unreachable));
|
||||
var memory_map: []u32 = raw_memory_map[0..data.size];
|
||||
|
||||
for (0..@divExact(data.size, @sizeOf(u32))) |i| {
|
||||
memory_map[i] = data.data;
|
||||
}
|
||||
|
||||
memory.unmap();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user