Example #1
0
        private VkObjectResult <IVkInstance> CreateInstanceInternal(IntPtr data, VkInstanceCreateInfo createInfo, VkAllocationCallbacks allocator)
        {
            var unmanaged   = (byte *)data;
            var pCreateInfo = createInfo.MarshalIndirect(ref unmanaged);
            var pAllocator  = allocator.MarshalIndirect(ref unmanaged);

            VkInstance.HandleType handle;
            var result   = Direct.CreateInstance(pCreateInfo, pAllocator, &handle);
            var instance = result == VkResult.Success ? new VkInstance(handle, allocator) : null;

            return(new VkObjectResult <IVkInstance>(result, instance));
        }
Example #2
0
 private VkObjectResult<IVkInstance> CreateInstanceInternal(IntPtr data, VkInstanceCreateInfo createInfo, VkAllocationCallbacks allocator)
 {
     var unmanaged = (byte*)data;
     var pCreateInfo = createInfo.MarshalIndirect(ref unmanaged);
     var pAllocator = allocator.MarshalIndirect(ref unmanaged);
     VkInstance.HandleType handle;
     var result = Direct.CreateInstance(pCreateInfo, pAllocator, &handle);
     var instance = result == VkResult.Success ? new VkInstance(handle, allocator) : null;
     return new VkObjectResult<IVkInstance>(result, instance);
 }