#include <splatrenderer.h>
Classes | |
struct | UniformParameters |
Public Member Functions | |
void | Clear () |
void | Destroy () |
void | Init (QGLWidget *gla) |
bool | isSupported () |
void | Render (std::vector< MeshType * > &meshes, vcg::GLW::ColorMode cm, vcg::GLW::TextureMode tm) |
void | Render (std::vector< std::vector< vcg::Point3f > * > &positions, std::vector< std::vector< vcg::Point3f > * > &normals, std::vector< std::vector< vcg::Point3< unsigned char > > * > &colors, std::vector< float > &radius, vcg::GLW::ColorMode cm, vcg::GLW::TextureMode tm) |
Private Types | |
enum | { DEFERRED_SHADING_BIT = 0x000001, DEPTH_CORRECTION_BIT = 0x000002, OUTPUT_DEPTH_BIT = 0x000004, BACKFACE_SHADING_BIT = 0x000008, FLOAT_BUFFER_BIT = 0x000010 } |
Private Member Functions | |
void | configureShaders () |
void | drawSplats (std::vector< MeshType * > &, vcg::GLW::ColorMode cm, vcg::GLW::TextureMode tm) |
void | drawSplats (std::vector< std::vector< vcg::Point3f > * > &positions, std::vector< std::vector< vcg::Point3f > * > &normals, std::vector< std::vector< vcg::Point3< unsigned char > > * > &colors, std::vector< float > &radius, vcg::GLW::ColorMode cm, vcg::GLW::TextureMode tm) |
void | enablePass (int n) |
QString | loadSource (const QString &func, const QString &file) |
void | updateRenderBuffer () |
Private Attributes | |
bool | init_called |
int | mBindedPass |
bool | mBuggedAtiBlending |
int | mCachedFlags |
float | mCachedMV [16] |
float | mCachedProj [16] |
GLint | mCachedVP [4] |
GLuint | mDepthTextureID |
GLuint | mDummyTexId |
int | mFlags |
bool | mIsSupported |
GLuint | mNormalTextureID |
UniformParameters | mParams |
QGLFramebufferObject * | mRenderBuffer |
int | mRenderBufferMask |
ProgramVF | mShaders [3] |
QString | mShaderSrcs [6] |
int | mSupportedMask |
bool | mWorkaroundATI |
Definition at line 49 of file splatrenderer.h.
anonymous enum [private] |
DEFERRED_SHADING_BIT | |
DEPTH_CORRECTION_BIT | |
OUTPUT_DEPTH_BIT | |
BACKFACE_SHADING_BIT | |
FLOAT_BUFFER_BIT |
Definition at line 54 of file splatrenderer.h.
void SplatRenderer< MeshType >::Clear | ( | void | ) |
Definition at line 140 of file splatrenderer.h.
void SplatRenderer< MeshType >::configureShaders | ( | ) | [private] |
Definition at line 179 of file splatrenderer.h.
void SplatRenderer< MeshType >::Destroy | ( | ) |
Definition at line 128 of file splatrenderer.h.
void SplatRenderer< MeshType >::drawSplats | ( | std::vector< MeshType * > & | meshes, |
vcg::GLW::ColorMode | cm, | ||
vcg::GLW::TextureMode | tm | ||
) | [private] |
Definition at line 746 of file splatrenderer.h.
void SplatRenderer< MeshType >::drawSplats | ( | std::vector< std::vector< vcg::Point3f > * > & | positions, |
std::vector< std::vector< vcg::Point3f > * > & | normals, | ||
std::vector< std::vector< vcg::Point3< unsigned char > > * > & | colors, | ||
std::vector< float > & | radius, | ||
vcg::GLW::ColorMode | cm, | ||
vcg::GLW::TextureMode | tm | ||
) | [private] |
Definition at line 721 of file splatrenderer.h.
void SplatRenderer< MeshType >::enablePass | ( | int | n | ) | [private] |
Definition at line 649 of file splatrenderer.h.
void SplatRenderer< MeshType >::Init | ( | QGLWidget * | gla | ) |
Definition at line 232 of file splatrenderer.h.
bool SplatRenderer< MeshType >::isSupported | ( | ) | [inline] |
Definition at line 114 of file splatrenderer.h.
QString SplatRenderer< MeshType >::loadSource | ( | const QString & | func, |
const QString & | file | ||
) | [private] |
Definition at line 160 of file splatrenderer.h.
void SplatRenderer< MeshType >::Render | ( | std::vector< MeshType * > & | meshes, |
vcg::GLW::ColorMode | cm, | ||
vcg::GLW::TextureMode | tm | ||
) |
Definition at line 348 of file splatrenderer.h.
void SplatRenderer< MeshType >::Render | ( | std::vector< std::vector< vcg::Point3f > * > & | positions, |
std::vector< std::vector< vcg::Point3f > * > & | normals, | ||
std::vector< std::vector< vcg::Point3< unsigned char > > * > & | colors, | ||
std::vector< float > & | radius, | ||
vcg::GLW::ColorMode | cm, | ||
vcg::GLW::TextureMode | tm | ||
) |
Definition at line 489 of file splatrenderer.h.
void SplatRenderer< MeshType >::updateRenderBuffer | ( | ) | [private] |
Definition at line 294 of file splatrenderer.h.
bool SplatRenderer< MeshType >::init_called [private] |
Definition at line 52 of file splatrenderer.h.
int SplatRenderer< MeshType >::mBindedPass [private] |
Definition at line 67 of file splatrenderer.h.
bool SplatRenderer< MeshType >::mBuggedAtiBlending [private] |
Definition at line 70 of file splatrenderer.h.
int SplatRenderer< MeshType >::mCachedFlags [private] |
Definition at line 62 of file splatrenderer.h.
float SplatRenderer< MeshType >::mCachedMV[16] [private] |
Definition at line 76 of file splatrenderer.h.
float SplatRenderer< MeshType >::mCachedProj[16] [private] |
Definition at line 77 of file splatrenderer.h.
GLint SplatRenderer< MeshType >::mCachedVP[4] [private] |
Definition at line 78 of file splatrenderer.h.
GLuint SplatRenderer< MeshType >::mDepthTextureID [private] |
Definition at line 72 of file splatrenderer.h.
GLuint SplatRenderer< MeshType >::mDummyTexId [private] |
Definition at line 68 of file splatrenderer.h.
int SplatRenderer< MeshType >::mFlags [private] |
Definition at line 61 of file splatrenderer.h.
bool SplatRenderer< MeshType >::mIsSupported [private] |
Definition at line 51 of file splatrenderer.h.
GLuint SplatRenderer< MeshType >::mNormalTextureID [private] |
Definition at line 71 of file splatrenderer.h.
UniformParameters SplatRenderer< MeshType >::mParams [private] |
Definition at line 95 of file splatrenderer.h.
QGLFramebufferObject* SplatRenderer< MeshType >::mRenderBuffer [private] |
Definition at line 75 of file splatrenderer.h.
int SplatRenderer< MeshType >::mRenderBufferMask [private] |
Definition at line 63 of file splatrenderer.h.
ProgramVF SplatRenderer< MeshType >::mShaders[3] [private] |
Definition at line 73 of file splatrenderer.h.
QString SplatRenderer< MeshType >::mShaderSrcs[6] [private] |
Definition at line 74 of file splatrenderer.h.
int SplatRenderer< MeshType >::mSupportedMask [private] |
Definition at line 64 of file splatrenderer.h.
bool SplatRenderer< MeshType >::mWorkaroundATI [private] |
Definition at line 69 of file splatrenderer.h.