Actual deleak, debug object names
This commit is contained in:
@@ -67,6 +67,7 @@ pub const InitInfo = struct {
|
||||
height: u32,
|
||||
usage: Usage,
|
||||
target_queue: TargetQueue,
|
||||
name: ?[]const u8 = null,
|
||||
};
|
||||
|
||||
image: vk.Image,
|
||||
@@ -111,10 +112,16 @@ pub fn init(engine: *Engine, init_info: InitInfo) !Texture {
|
||||
.initial_layout = .undefined,
|
||||
});
|
||||
errdefer engine.destroyImage(image);
|
||||
if (init_info.name) |name| {
|
||||
engine.setObjectName(image, "I {s} [{s}]", .{ name, @tagName(init_info.usage) });
|
||||
}
|
||||
|
||||
const memory_requirements = engine.device.getImageMemoryRequirements(image);
|
||||
const device_memory = try engine.allocate(memory_requirements, .{ .device_local_bit = true });
|
||||
errdefer engine.freeMemory(device_memory);
|
||||
if (init_info.name) |name| {
|
||||
engine.setObjectName(device_memory, "DM {s} [{s}]", .{ name, @tagName(init_info.usage) });
|
||||
}
|
||||
|
||||
try engine.device.bindImageMemory(image, device_memory, 0);
|
||||
|
||||
@@ -134,6 +141,9 @@ pub fn init(engine: *Engine, init_info: InitInfo) !Texture {
|
||||
},
|
||||
});
|
||||
errdefer engine.destroyImageView(image_view);
|
||||
if (init_info.name) |name| {
|
||||
engine.setObjectName(image_view, "IV {s} [{s}]", .{ name, @tagName(init_info.usage) });
|
||||
}
|
||||
|
||||
return .{
|
||||
.image = image,
|
||||
|
||||
Reference in New Issue
Block a user