Example #1
0
        public void CmdClearColorImage(IVkImage image, VkImageLayout imageLayout, VkClearColorValue color, IReadOnlyList <VkImageSubresourceRange> ranges)
        {
            var unmanagedSize =
                ranges.SizeOfMarshalDirect();
            var unmanagedArray = new byte[unmanagedSize];

            fixed(byte *unmanagedStart = unmanagedArray)
            {
                var unmanaged      = unmanagedStart;
                var _commandBuffer = Handle;
                var _image         = image?.Handle ?? VkImage.HandleType.Null;
                var _imageLayout   = imageLayout;
                var _pColor        = &color;
                var _rangeCount    = ranges?.Count ?? 0;
                var _pRanges       = ranges.MarshalDirect(ref unmanaged);

                Direct.CmdClearColorImage(_commandBuffer, _image, _imageLayout, _pColor, _rangeCount, _pRanges);
            }
        }
Example #2
0
 public VkClearValue(VkClearColorValue color)
 {
     raw   = default(VkBlob16);
     Color = color;
 }
Example #3
0
 public void CmdClearColorImage(IVkImage image, VkImageLayout imageLayout, VkClearColorValue color, IReadOnlyList<VkImageSubresourceRange> ranges)
 {
     var unmanagedSize =
         ranges.SizeOfMarshalDirect();
     var unmanagedArray = new byte[unmanagedSize];
     fixed (byte* unmanagedStart = unmanagedArray)
     {
         var unmanaged = unmanagedStart;
         var _commandBuffer = Handle;
         var _image = image?.Handle ?? VkImage.HandleType.Null;
         var _imageLayout = imageLayout;
         var _pColor = &color;
         var _rangeCount = ranges?.Count ?? 0;
         var _pRanges = ranges.MarshalDirect(ref unmanaged);
         Direct.CmdClearColorImage(_commandBuffer, _image, _imageLayout, _pColor, _rangeCount, _pRanges);
     }
 }