49 #ifndef ANTI_ALIASING_HH 50 #define ANTI_ALIASING_HH 56 #include <ACG/GL/acg_glew.hh> 57 #include <ACG/GL/globjects.hh> 58 #include <ACG/GL/gl.hh> 99 #ifdef GL_ARB_texture_multisample 100 #define MSFILTERWEIGHTS 102 class ACGDLLEXPORT MSFilterWeights
106 MSFilterWeights(
int _numSamples);
108 virtual ~MSFilterWeights() { }
113 void asTextureBuffer(TextureBuffer& out);
117 const float* asDataPtr()
const {
return &weights_[0];}
120 float operator [] (
int i)
const {
return weights_[i];}
122 float getWeight(
int i)
const {
return weights_[i];}
124 int getNumSamples()
const {
return numSamples_;}
129 std::vector<float> weights_;
132 #endif // GL_ARB_texture_multisample 141 #ifdef GL_ARB_texture_multisample 142 #define MSTEXTURESAMPLER 144 class ACGDLLEXPORT MSTextureSampler
152 static void filterMSAATexture_Nearest(GLuint _texture,
int _samples,
const float* _weights = 0);
156 static void filterMSAATexture_Nearest(GLuint _texture, GLuint _depthTexture,
int _samples,
const float* _weights = 0);
159 static void filterMSAATexture_Linear(GLuint _texture,
int _samples,
const float* _weights = 0);
169 static MSTextureSampler& instance();
172 TextureBuffer filterWeights_;
180 #endif // GL_ARB_texture_multisample 192 #endif // ANTI_ALIASING_HH defined This namespace contains all the classes and functions for handling GLSL shader and program objects...
Namespace providing different geometric functions concerning angles.