59 #ifndef ANTI_ALIASING_HH
60 #define ANTI_ALIASING_HH
66 #include <ACG/GL/globjects.hh>
67 #include <ACG/GL/gl.hh>
109 #ifdef GL_ARB_texture_multisample
111 class ACGDLLEXPORT MSFilterWeights
115 MSFilterWeights(
int _numSamples);
117 virtual ~MSFilterWeights() { }
119 #if defined(GL_ARB_texture_buffer_object)
123 void asTextureBuffer(TextureBuffer& out);
128 const float* asDataPtr()
const {
return &weights_[0];}
131 float operator [] (
int i)
const {
return weights_[i];}
133 float getWeight(
int i)
const {
return weights_[i];}
135 int getNumSamples()
const {
return numSamples_;}
140 std::vector<float> weights_;
143 #endif // GL_ARB_texture_multisample
153 #ifdef GL_ARB_texture_multisample
155 class ACGDLLEXPORT MSTextureSampler
163 static void filterMSAATexture_Nearest(GLuint _texture,
int _samples,
const float* _weights = 0);
167 static void filterMSAATexture_Nearest(GLuint _texture, GLuint _depthTexture,
int _samples,
const float* _weights = 0);
170 static void filterMSAATexture_Linear(GLuint _texture,
int _samples,
const float* _weights = 0);
180 static MSTextureSampler& instance();
183 TextureBuffer filterWeights_;
191 #endif // GL_ARB_texture_multisample
203 #endif // ANTI_ALIASING_HH defined
Namespace providing different geometric functions concerning angles.
This namespace contains all the classes and functions for handling GLSL shader and program objects...