示例#1
0
        public unsafe ComputePipeline(
            GraphicsDevice device,
            ShaderStageState computeShaderState,
            uint bufferBindingCount,
            uint imageBindingCount
            ) : base(device)
        {
            var computePipelineLayoutCreateInfo = new Refresh.ComputePipelineLayoutCreateInfo
            {
                bufferBindingCount = bufferBindingCount,
                imageBindingCount  = imageBindingCount
            };

            var computePipelineCreateInfo = new Refresh.ComputePipelineCreateInfo
            {
                pipelineLayoutCreateInfo = computePipelineLayoutCreateInfo,
                computeShaderState       = new Refresh.ShaderStageState
                {
                    entryPointName    = computeShaderState.EntryPointName,
                    shaderModule      = computeShaderState.ShaderModule.Handle,
                    uniformBufferSize = computeShaderState.UniformBufferSize
                }
            };

            Handle = Refresh.Refresh_CreateComputePipeline(
                device.Handle,
                ref computePipelineCreateInfo
                );
        }