fna-workbench

fna-workbench Git Source Tree


Root/src/Graphics/States/SamplerState.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#region License
/* FNA - XNA4 Reimplementation for Desktop Platforms
 * Copyright 2009-2016 Ethan Lee and the MonoGame Team
 *
 * Released under the Microsoft Public License.
 * See LICENSE for details.
 */
#endregion
 
namespace Microsoft.Xna.Framework.Graphics
{
    public class SamplerState : GraphicsResource
    {
        #region Public Properties
 
        public TextureAddressMode AddressU
        {
            get;
            set;
        }
 
        public TextureAddressMode AddressV
        {
            get;
            set;
        }
 
        public TextureAddressMode AddressW
        {
            get;
            set;
        }
 
        public TextureFilter Filter
        {
            get;
            set;
        }
 
        public int MaxAnisotropy
        {
            get;
            set;
        }
 
        public int MaxMipLevel
        {
            get;
            set;
        }
 
        public float MipMapLevelOfDetailBias
        {
            get;
            set;
        }
 
        #endregion
 
        #region Public SamplerState Presets
 
        public static readonly SamplerState AnisotropicClamp = new SamplerState(
            "SamplerState.AnisotropicClamp",
            TextureFilter.Anisotropic,
            TextureAddressMode.Clamp,
            TextureAddressMode.Clamp,
            TextureAddressMode.Clamp
        );
 
        public static readonly SamplerState AnisotropicWrap = new SamplerState(
            "SamplerState.AnisotropicWrap",
            TextureFilter.Anisotropic,
            TextureAddressMode.Wrap,
            TextureAddressMode.Wrap,
            TextureAddressMode.Wrap
        );
 
        public static readonly SamplerState LinearClamp = new SamplerState(
            "SamplerState.LinearClamp",
            TextureFilter.Linear,
            TextureAddressMode.Clamp,
            TextureAddressMode.Clamp,
            TextureAddressMode.Clamp
        );
 
        public static readonly SamplerState LinearWrap = new SamplerState(
            "SamplerState.LinearWrap",
            TextureFilter.Linear,
            TextureAddressMode.Wrap,
            TextureAddressMode.Wrap,
            TextureAddressMode.Wrap
        );
 
        public static readonly SamplerState PointClamp = new SamplerState(
            "SamplerState.PointClamp",
            TextureFilter.Point,
            TextureAddressMode.Clamp,
            TextureAddressMode.Clamp,
            TextureAddressMode.Clamp
        );
 
        public static readonly SamplerState PointWrap = new SamplerState(
            "SamplerState.PointWrap",
            TextureFilter.Point,
            TextureAddressMode.Wrap,
            TextureAddressMode.Wrap,
            TextureAddressMode.Wrap
        );
 
        #endregion
 
        #region Public Constructor
 
        public SamplerState()
        {
            Filter = TextureFilter.Linear;
            AddressU = TextureAddressMode.Wrap;
            AddressV = TextureAddressMode.Wrap;
            AddressW = TextureAddressMode.Wrap;
            MaxAnisotropy = 4;
            MaxMipLevel = 0;
            MipMapLevelOfDetailBias = 0.0f;
        }
 
        #endregion
 
        #region Private Constructor
 
        private SamplerState(
            string name,
            TextureFilter filter,
            TextureAddressMode addressU,
            TextureAddressMode addressV,
            TextureAddressMode addressW
        ) : this() {
            Name = name;
            Filter = filter;
            AddressU = addressU;
            AddressV = addressV;
            AddressW = addressW;
        }
 
        #endregion
    }
}

Archive Download this file

Branches

Number of commits:
Page rendered in 0.12651s using 11 queries.