public unsafe partial Result CreateWaylandSurface([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(FlowDirection.In)] WaylandSurfaceCreateInfoKHR *pCreateInfo, [Count(Count = 0), Flow(FlowDirection.In)] AllocationCallbacks *pAllocator, [Count(Count = 0), Flow(FlowDirection.Out)] out SurfaceKHR pSurface);
public static PhysicalDevice FindSuitablePhysicalDevice(Vk api, Instance instance, SurfaceKHR surface) { uint physicalDeviceCount; api.EnumeratePhysicalDevices(instance, &physicalDeviceCount, null).ThrowOnError(); PhysicalDevice[] physicalDevices = new PhysicalDevice[physicalDeviceCount]; fixed(PhysicalDevice *pPhysicalDevices = physicalDevices) { api.EnumeratePhysicalDevices(instance, &physicalDeviceCount, pPhysicalDevices).ThrowOnError(); } if (physicalDevices.Length > 1) { return(physicalDevices[0]); } for (int i = 0; i < physicalDevices.Length; i++) { if (IsSuitableDevice(api, physicalDevices[i], surface)) { return(physicalDevices[i]); } } throw new VulkanException("Initialization failed, none of the available GPUs meets the minimum requirements."); }
public unsafe partial Result CreateStreamDescriptorSurfaceGgp([Count(Count = 0)] Instance instance, [Count(Count = 0), Flow(FlowDirection.In)] StreamDescriptorSurfaceCreateInfoGGP *pCreateInfo, [Count(Count = 0), Flow(FlowDirection.In)] AllocationCallbacks *pAllocator, [Count(Count = 0), Flow(FlowDirection.Out)] out SurfaceKHR pSurface);