예제 #1
0
 public StaticSamplerDescription(
     ShaderStageVisibility visibility,
     int shaderRegister,
     SamplerStateDescription description)
 {
     Visibility              = visibility;
     ShaderRegister          = shaderRegister;
     SamplerStateDescription = description;
 }
예제 #2
0
        public static ShaderVisibility ToShaderVisibility(this ShaderStageVisibility value)
        {
            switch (value)
            {
            case ShaderStageVisibility.All:
                return(ShaderVisibility.All);

            case ShaderStageVisibility.Vertex:
                return(ShaderVisibility.Vertex);

            case ShaderStageVisibility.Pixel:
                return(ShaderVisibility.Pixel);

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
예제 #3
0
        public static PipelineLayoutEntry CreateResource(
            ShaderStageVisibility visibility,
            ResourceType resourceType,
            int shaderRegister)
        {
            return(new PipelineLayoutEntry
            {
                EntryType = PipelineLayoutEntryType.Resource,

                Visibility = visibility,
                ResourceType = resourceType,

                Resource = new ResourcePipelineLayoutItem
                {
                    ShaderRegister = shaderRegister
                },

                ResourceView = default(ResourceViewPipelineLayoutItem)
            });
        }
예제 #4
0
        public static PipelineLayoutEntry CreateResourceView(
            ShaderStageVisibility visibility,
            ResourceType descriptorType,
            int baseShaderRegister,
            int resourceCount)
        {
            return(new PipelineLayoutEntry
            {
                EntryType = PipelineLayoutEntryType.ResourceView,

                Visibility = visibility,
                ResourceType = descriptorType,

                Resource = default(ResourcePipelineLayoutItem),

                ResourceView = new ResourceViewPipelineLayoutItem
                {
                    BaseShaderRegister = baseShaderRegister,
                    ResourceCount = resourceCount
                }
            });
        }