source: trunk/vizservers/nanovis/NvStdVertexShader.h @ 750

Last change on this file since 750 was 617, checked in by vrinside, 17 years ago

Added new zinc blende renderer - It is still needed to compare with unicell based simulation data.
Removed tentatively used class, NvVolQDVolumeShader,NvVolQDVolume
Moved Font.bmp into resources directory

File size: 1.0 KB
Line 
1#ifndef __NV_STD_VERTEX_SHADER_H__
2#define __NV_STD_VERTEX_SHADER_H__
3
4#include "NvShader.h"
5
6class NvStdVertexShader : public NvShader {
7    /**
8     * @brief A parameter id for ModelViewProjection matrix of Cg program
9     */
10    CGparameter _mvp_vert_std_param;
11
12    /**
13     * @brief A parameter id for ModelViewInverse matrix of Cg program
14     */
15    CGparameter _mvi_vert_std_param;
16
17public :
18    /**
19     * @brief Constructor
20     */
21    NvStdVertexShader();
22
23    /**
24     * @brief Destructor
25     */
26    ~NvStdVertexShader();
27private :
28    void init();
29
30public :
31    void bind();
32    void unbind();
33};
34
35inline void NvStdVertexShader::bind()
36{
37    cgGLSetStateMatrixParameter(_mvp_vert_std_param, CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
38    cgGLSetStateMatrixParameter(_mvi_vert_std_param, CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE);
39    cgGLBindProgram(_cgVP);
40    cgGLEnableProfile(CG_PROFILE_VP30);
41
42}
43
44inline void NvStdVertexShader::unbind()
45{
46    cgGLDisableProfile(CG_PROFILE_VP30);
47}
48
49#endif
50
Note: See TracBrowser for help on using the repository browser.