private void CreateLogicalDevice() { var queueFamilies = FindQueueFamilies(physicalDevice, surface).Value; var queueCreateInfos = queueFamilies.GraphicsFamily == queueFamilies.PresentFamily ? new[] { new VkDeviceQueueCreateInfo { QueueFamilyIndex = queueFamilies.GraphicsFamily, QueuePriorities = new [] { 1f } } } : new [] { new VkDeviceQueueCreateInfo { QueueFamilyIndex = queueFamilies.GraphicsFamily, QueuePriorities = new[] { 1f } }, new VkDeviceQueueCreateInfo { QueueFamilyIndex = queueFamilies.PresentFamily, QueuePriorities = new[] { 1f } } }; var deviceFeatures = new VkPhysicalDeviceFeatures { }; var createInfo = new VkDeviceCreateInfo { QueueCreateInfos = queueCreateInfos, EnabledFeatures = deviceFeatures, EnabledExtensionNames = DeviceExtensions, EnabledLayerNames = LayerNames }; device = physicalDevice.CreateDevice(createInfo, null).Object; graphicsQueue = device.GetDeviceQueue(queueFamilies.GraphicsFamily, 0); presentQueue = device.GetDeviceQueue(queueFamilies.PresentFamily, 0); }
public VkSwapchainKHR(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkDescriptorPool(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkQueue(IVkDevice device, HandleType handle) { Device = device; Handle = handle; }
public VkShaderModule(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkRenderPass(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkCommandBuffer(IVkDevice device, HandleType handle) { Device = device; Handle = handle; }
public VkDescriptorSet(IVkDevice device, HandleType handle) { Device = device; Handle = handle; }
public VkDeviceMemory(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkPipelineLayout(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkPipelineCache(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkFramebuffer(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkCommandPool(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkDescriptorSetLayout(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkImageView(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkSampler(IVkDevice device, HandleType handle, IVkAllocationCallbacks allocator) { Device = device; Handle = handle; Allocator = allocator; }
public VkCommandBuffer(IVkDevice device, HandleType handle) { Device = device; Handle = handle; }