/// <summary> /// </summary> /// <param name="device"></param> /// <param name="surface"></param> /// <returns></returns> public static VkSurfaceFormatKHR[] Formats(this VkPhysicalDevice device, VkSurfaceKHR surface) { VkSurfaceFormatKHR[] result; UInt32 count; vkGetPhysicalDeviceSurfaceFormatsKHR(device, surface, &count, null); result = new VkSurfaceFormatKHR[count]; if (count != 0) { fixed(VkSurfaceFormatKHR *pointer = result) { vkGetPhysicalDeviceSurfaceFormatsKHR(device, surface, &count, pointer); } } return(result); }
/// <summary> /// Returns global layer properties. /// </summary> /// <returns></returns> public static VkPresentModeKHR[] PresentModesKHR(VkPhysicalDevice device, VkSurfaceKHR surface) { VkPresentModeKHR[] result; UInt32 count; vkGetPhysicalDeviceSurfacePresentModesKHR(device, surface, &count, null); result = new VkPresentModeKHR[count]; if (count > 0) { fixed(VkPresentModeKHR *pointer = result) { vkGetPhysicalDeviceSurfacePresentModesKHR(device, surface, &count, pointer); } } return(result); }
public static VkPresentModeKHR[] GetSurfacePresentModes(this VkPhysicalDevice phy, VkSurfaceKHR surf) { vkGetPhysicalDeviceSurfacePresentModesKHR(phy, surf, out uint count, IntPtr.Zero); VkPresentModeKHR[] modes = new VkPresentModeKHR[count]; vkGetPhysicalDeviceSurfacePresentModesKHR(phy, surf, out count, modes.Pin()); modes.Unpin(); return(modes); }
public static VkSurfaceFormatKHR [] GetSurfaceFormats(this VkPhysicalDevice phy, VkSurfaceKHR surf) { vkGetPhysicalDeviceSurfaceFormatsKHR(phy, surf, out uint count, IntPtr.Zero); VkSurfaceFormatKHR [] formats = new VkSurfaceFormatKHR [count]; vkGetPhysicalDeviceSurfaceFormatsKHR(phy, surf, out count, formats.Pin()); formats.Unpin(); return(formats); }