public Pipeline(Device dev, VkPipelineBindPoint type, PipelineLayout layout, VkPipeline pipeline) { PipelineType = type; Device = dev; Layout = layout; Handle = pipeline; }
public GraphicsPipelineBuilder(RenderPass pass, uint subpass, PipelineLayout pipelineLayout) { _pipelineLayout = pipelineLayout; _pass = pass; _subpassId = subpass; unsafe { _asmInfo.SType = VkStructureType.PipelineInputAssemblyStateCreateInfo; _asmInfo.Flags = 0; _asmInfo.PNext = IntPtr.Zero; _tessInfo.SType = VkStructureType.PipelineTessellationStateCreateInfo; _tessInfo.Flags = 0; _tessInfo.PNext = IntPtr.Zero; _tessInfo.PatchControlPoints = 0; _rasterInfo.SType = VkStructureType.PipelineRasterizationStateCreateInfo; _rasterInfo.Flags = 0; _rasterInfo.PNext = IntPtr.Zero; _rasterInfo.DepthBiasEnable = false; _rasterInfo.DepthClampEnable = false; _rasterInfo.RasterizerDiscardEnable = false; _rasterInfo.FrontFace = VkFrontFace.CounterClockwise; _rasterInfo.LineWidth = 1.0f; _multisampleInfo.SType = VkStructureType.PipelineMultisampleStateCreateInfo; _multisampleInfo.Flags = 0; _multisampleInfo.PNext = IntPtr.Zero; _multisampleInfo.RasterizationSamples = VkSampleCountFlag.Count1; _multisampleInfo.SampleShadingEnable = false; _depthStencilInfo.SType = VkStructureType.PipelineDepthStencilStateCreateInfo; _depthStencilInfo.Flags = 0; _depthStencilInfo.PNext = IntPtr.Zero; _depthStencilInfo.DepthTestEnable = false; _depthStencilInfo.StencilTestEnable = false; _depthStencilInfo.DepthBoundsTestEnable = false; _colorBlendInfo.SType = VkStructureType.PipelineColorBlendStateCreateInfo; _colorBlendInfo.Flags = 0; _colorBlendInfo.PNext = IntPtr.Zero; _colorBlendInfo.LogicOpEnable = false; } }
public GraphicsPipelineBuilder PipelineBuilder(uint subpass, PipelineLayout layout) { return(new GraphicsPipelineBuilder(this, subpass, layout)); }
public new GraphicsPipelineBuilder PipelineBuilder(TPass subpass, PipelineLayout layout) { return(new GraphicsPipelineBuilder(this, PassId(subpass), layout)); }