コード例 #1
0
        private static SamplerType ConvertSamplerType(TexelLoadTarget type)
        {
            switch (type)
            {
            case TexelLoadTarget.Texture1DLodZero:
            case TexelLoadTarget.Texture1DLodLevel:
                return(SamplerType.Texture1D);

            case TexelLoadTarget.Texture2DLodZero:
            case TexelLoadTarget.Texture2DLodZeroOffset:
            case TexelLoadTarget.Texture2DLodLevel:
            case TexelLoadTarget.Texture2DLodLevelOffset:
                return(SamplerType.Texture2D);

            case TexelLoadTarget.Texture2DLodZeroMultisample:
                return(SamplerType.Texture2D | SamplerType.Multisample);

            case TexelLoadTarget.Texture3DLodZero:
                return(SamplerType.Texture3D);

            case TexelLoadTarget.Texture2DArrayLodZero:
                return(SamplerType.Texture2D | SamplerType.Array);
            }

            return(SamplerType.None);
        }
コード例 #2
0
        private static TextureFlags ConvertTextureFlags(TexelLoadTarget type)
        {
            switch (type)
            {
            case TexelLoadTarget.Texture1DLodZero:
            case TexelLoadTarget.Texture1DLodLevel:
            case TexelLoadTarget.Texture2DLodZero:
            case TexelLoadTarget.Texture2DLodLevel:
            case TexelLoadTarget.Texture2DLodZeroMultisample:
            case TexelLoadTarget.Texture3DLodZero:
            case TexelLoadTarget.Texture2DArrayLodZero:
                return(TextureFlags.LodLevel);

            case TexelLoadTarget.Texture2DLodZeroOffset:
            case TexelLoadTarget.Texture2DLodLevelOffset:
                return(TextureFlags.LodLevel | TextureFlags.Offset);
            }

            return(TextureFlags.None);
        }