Backlog/engine/_archive/graphics/src/vk_constants.zig

115 lines
3.6 KiB
Zig

const std = @import("std");
const vk = @import("vulkan");
const core = @import("core");
pub const NumFrames = NUM_FRAMES;
pub const FrameTimeout = 10_000_000_000; // 10 full second frame timeout
pub const MAX_OBJECTS = 100_000; // 100k objects ought to be enough for anyone
pub const NUM_FRAMES: usize = 2;
pub const DEVICE_LAYERS = [_]core.CStr{VK_KHRONOS_VALIDATION_LAYER_STRING};
pub const MAX_SKIN_SLOTS = 100_000;
pub const required_device_layers = [_]core.CStr{"VK_LAYER_KHRONOS_validation"};
pub const VK_KHRONOS_VALIDATION_LAYER_STRING: core.CStr = "VK_LAYER_KHRONOS_validation";
pub const BaseDispatch = vk.BaseWrapper(.{
.createInstance = true,
.getInstanceProcAddr = true,
.enumerateInstanceVersion = true,
.enumerateInstanceLayerProperties = true,
.enumerateInstanceExtensionProperties = true,
});
pub const InstanceDispatch = vk.InstanceWrapper(.{
.getPhysicalDeviceFeatures = true,
.destroyInstance = true,
.createDevice = true,
.destroySurfaceKHR = true,
.enumeratePhysicalDevices = true,
.getPhysicalDeviceProperties = true,
.enumerateDeviceExtensionProperties = true,
.getPhysicalDeviceSurfaceFormatsKHR = true,
.getPhysicalDeviceSurfacePresentModesKHR = true,
.getPhysicalDeviceSurfaceCapabilitiesKHR = true,
.getPhysicalDeviceQueueFamilyProperties = true,
.getPhysicalDeviceSurfaceSupportKHR = true,
.getPhysicalDeviceMemoryProperties = true,
.getPhysicalDeviceFormatProperties = true,
.getDeviceProcAddr = true,
});
pub const DeviceDispatch = vk.DeviceWrapper(.{
.resetCommandBuffer = true,
.destroyDevice = true,
.getDeviceQueue = true,
.createSemaphore = true,
.createFence = true,
.createImageView = true,
.createImage = true,
.destroyImage = true,
.destroyImageView = true,
.destroySemaphore = true,
.destroyFence = true,
.getSwapchainImagesKHR = true,
.createSwapchainKHR = true,
.destroySwapchainKHR = true,
.acquireNextImageKHR = true,
.deviceWaitIdle = true,
.waitForFences = true,
.resetFences = true,
.queueSubmit = true,
.queuePresentKHR = true,
.createCommandPool = true,
.destroyCommandPool = true,
.allocateCommandBuffers = true,
.cmdBlitImage = true,
.freeCommandBuffers = true,
.queueWaitIdle = true,
.createShaderModule = true,
.destroyShaderModule = true,
.createPipelineLayout = true,
.destroyPipelineLayout = true,
.createDescriptorSetLayout = true,
.destroyDescriptorSetLayout = true,
.createDescriptorPool = true,
.allocateDescriptorSets = true,
.freeDescriptorSets = true,
.updateDescriptorSets = true,
.destroyDescriptorPool = true,
.createRenderPass = true,
.destroyRenderPass = true,
.createGraphicsPipelines = true,
.destroyPipeline = true,
.createFramebuffer = true,
.destroyFramebuffer = true,
.beginCommandBuffer = true,
.endCommandBuffer = true,
.allocateMemory = true,
.freeMemory = true,
.createBuffer = true,
.destroyBuffer = true,
.getBufferMemoryRequirements = true,
.mapMemory = true,
.unmapMemory = true,
.bindBufferMemory = true,
.cmdBeginRenderPass = true,
.cmdEndRenderPass = true,
.cmdBindPipeline = true,
.cmdBindIndexBuffer = true,
.cmdDrawIndexed = true,
.cmdDraw = true,
.cmdSetViewport = true,
.cmdSetScissor = true,
.cmdBindVertexBuffers = true,
.cmdCopyBuffer = true,
.cmdPushConstants = true,
.cmdPipelineBarrier = true,
.cmdBindDescriptorSets = true,
.cmdCopyBufferToImage = true,
.createSampler = true,
.destroySampler = true,
.cmdDrawIndexedIndirect = true,
});