コード例 #1
0
        internal unsafe void MarshalTo(Interop.RenderPassBeginInfo *pointer)
        {
            pointer->SType = StructureType.RenderPassBeginInfo;
            pointer->Next  = null;
            this.RenderPass?.MarshalTo(&pointer->RenderPass);
            this.Framebuffer?.MarshalTo(&pointer->Framebuffer);

            //ClearValues
            if (this.ClearValues != null && this.ClearValues.Length > 0)
            {
                int length = (int)(this.ClearValues.Length);
                pointer->ClearValues = (ClearValue *)Interop.HeapUtil.Allocate <ClearValue>(length).ToPointer();
                for (int index = 0; index < length; index++)
                {
                    pointer->ClearValues[index] = this.ClearValues[index];
                }
            }
            else
            {
                pointer->ClearValues = null;
            }
            pointer->ClearValueCount = (uint)(this.ClearValues?.Length ?? 0);
            pointer->RenderArea      = this.RenderArea;
        }
コード例 #2
0
ファイル: Structs.cs プロジェクト: yongweisun/VulkanSharp
 internal RenderPassBeginInfo(Interop.RenderPassBeginInfo* ptr)
 {
     m = ptr;
     Initialize ();
 }
コード例 #3
0
ファイル: Structs.cs プロジェクト: yongweisun/VulkanSharp
 public RenderPassBeginInfo()
 {
     m = (Interop.RenderPassBeginInfo*) Interop.Structure.Allocate (typeof (Interop.RenderPassBeginInfo));
     Initialize ();
 }