Ejemplo n.º 1
0
 internal SubpassBuilder(RenderPassBuilder builder)
 {
     _builder = builder;
     _desc    = new VkSubpassDescription()
     {
         PipelineBindPoint = VkPipelineBindPoint.Graphics,
         Flags             = 0
     };
 }
Ejemplo n.º 2
0
 internal AttachmentBuilder(RenderPassBuilder builder, VkFormat format, VkImageLayout finalLayout,
                            VkSampleCountFlag samples)
 {
     _builder = builder;
     _desc    = new VkAttachmentDescription()
     {
         Format         = format,
         FinalLayout    = finalLayout,
         InitialLayout  = VkImageLayout.Undefined,
         Flags          = 0,
         LoadOp         = VkAttachmentLoadOp.DontCare,
         StoreOp        = VkAttachmentStoreOp.DontCare,
         StencilLoadOp  = VkAttachmentLoadOp.DontCare,
         StencilStoreOp = VkAttachmentStoreOp.DontCare,
         Samples        = samples
     };
 }
Ejemplo n.º 3
0
 internal DependencyBuilder(RenderPassBuilder builder, uint srcPass, uint dstPass)
 {
     Debug.Assert(srcPass != Vulkan.SubpassExternal || dstPass != Vulkan.SubpassExternal);
     if (srcPass != Vulkan.SubpassExternal && dstPass != Vulkan.SubpassExternal)
     {
         Debug.Assert(srcPass <= dstPass);
     }
     _builder = builder;
     _desc    = new VkSubpassDependency()
     {
         SrcSubpass      = srcPass,
         DstSubpass      = dstPass,
         DependencyFlags = 0,
         DstAccessMask   = 0,
         DstStageMask    = VkPipelineStageFlag.AllCommands,
         SrcAccessMask   = 0,
         SrcStageMask    = VkPipelineStageFlag.AllCommands
     };
 }