Ejemplo n.º 1
0
 internal static void Init()
 {
     StandardSamplers[0] = MyPipelineStates.GetSampler(m_default);
     StandardSamplers[1] = MyPipelineStates.GetSampler(m_point);
     StandardSamplers[2] = MyPipelineStates.GetSampler(m_linear);
     StandardSamplers[3] = MyPipelineStates.GetSampler(m_texture);
     StandardSamplers[4] = MyPipelineStates.GetSampler(m_alphamask);
     StandardSamplers[5] = MyPipelineStates.GetSampler(m_alphamaskArray);
 }
Ejemplo n.º 2
0
        private static void InitilizeSamplerStates()
        {
            SamplerStateDescription description = new SamplerStateDescription();

            description.AddressU   = TextureAddressMode.Clamp;
            description.AddressV   = TextureAddressMode.Clamp;
            description.AddressW   = TextureAddressMode.Clamp;
            description.Filter     = Filter.MinMagMipLinear;
            description.MaximumLod = System.Single.MaxValue;
            m_defaultSamplerState  = MyPipelineStates.CreateSamplerState(description);

            description.AddressU    = TextureAddressMode.Border;
            description.AddressV    = TextureAddressMode.Border;
            description.AddressW    = TextureAddressMode.Border;
            description.Filter      = Filter.MinMagMipLinear;
            description.MaximumLod  = System.Single.MaxValue;
            description.BorderColor = new Color4(0, 0, 0, 0);
            m_alphamaskSamplerState = MyPipelineStates.CreateSamplerState(description);

            description.AddressU   = TextureAddressMode.Clamp;
            description.AddressV   = TextureAddressMode.Clamp;
            description.AddressW   = TextureAddressMode.Clamp;
            description.Filter     = Filter.MinMagMipPoint;
            description.MaximumLod = System.Single.MaxValue;
            m_pointSamplerState    = MyPipelineStates.CreateSamplerState(description);

            description.Filter     = Filter.MinMagMipLinear;
            description.MaximumLod = System.Single.MaxValue;
            m_linearSamplerState   = MyPipelineStates.CreateSamplerState(description);

            description.AddressU           = TextureAddressMode.Clamp;
            description.AddressV           = TextureAddressMode.Clamp;
            description.AddressW           = TextureAddressMode.Clamp;
            description.Filter             = Filter.ComparisonMinMagMipLinear;
            description.MaximumLod         = System.Single.MaxValue;
            description.ComparisonFunction = Comparison.LessEqual;
            m_shadowmapSamplerState        = MyPipelineStates.CreateSamplerState(description);

            m_textureSamplerState        = MyPipelineStates.CreateSamplerState(description);
            m_alphamaskarraySamplerState = MyPipelineStates.CreateSamplerState(description);

            UpdateTextureSampler(m_textureSamplerState, TextureAddressMode.Wrap);
            UpdateTextureSampler(m_alphamaskarraySamplerState, TextureAddressMode.Clamp);

            StandardSamplers    = new SamplerState[6];
            StandardSamplers[0] = MyPipelineStates.GetSampler(m_defaultSamplerState);
            StandardSamplers[1] = MyPipelineStates.GetSampler(m_pointSamplerState);
            StandardSamplers[2] = MyPipelineStates.GetSampler(m_linearSamplerState);
            StandardSamplers[3] = MyPipelineStates.GetSampler(m_textureSamplerState);
            StandardSamplers[4] = MyPipelineStates.GetSampler(m_alphamaskSamplerState);
            StandardSamplers[5] = MyPipelineStates.GetSampler(m_alphamaskarraySamplerState);
        }