VR-Forces 4.0.4 Class Documentation
include/vrvGraphics/DtProjected2DFlatEffect.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002  * Copyright (c) 2011 MAK Technologies, Inc.
00003  * All rights reserved.
00004  *****************************************************************************/
00005 
00009 
00010 #pragma once
00011 
00012 #include <vrvGraphics/Dt2DEffect.h>
00013 
00014 namespace makVrv
00015 {
00016 
00019    class DT_DLL_VRVGRAPHICS DtProjected2DFlatEffect : public Dt2DEffect
00020    {
00021    public:
00022 
00024       DtProjected2DFlatEffect();
00025 
00027       virtual ~DtProjected2DFlatEffect();
00028 
00030       virtual void setCamera( bool geocentric, float occluded,
00031          const double position[3], const double projection[16] );
00032 
00033       //Set the number of groups.
00034       virtual void setGroupCount( unsigned int count );
00035 
00036       // Sets the given attributes to the OpenGL context.
00037       virtual void setVaryingAttributes( size_t stride,
00038          const VaryingAttributeAddress& positionAddress,
00039          const VaryingAttributeAddress& colorAddress,
00040          const VaryingAttributeAddress& offsetAddress,
00041          const VaryingAttributeAddress& rotationAddress );
00042 
00044       virtual void unsetVaryingAttributes();
00045 
00046    protected:
00047 
00049       virtual void updateUniformLocations();
00050 
00052       virtual void updateUniforms();
00053 
00055       virtual void getShaderSource( const char*& vs, const char*& fs,
00056          const char*& gs );
00057 
00058    protected:
00059 
00060       int myUniform_CameraPos;
00061       int myUniform_CameraMat;
00062       int myUniform_GroupCount;
00063       int myUniform_Sphere;
00064       int myUniform_OccludedAlpha;
00065 
00066       unsigned int myUnit;
00067       unsigned int myGroupCount;
00068       double myCameraPos[3];
00069       double myMatrix[16];
00070       bool myGeocentricFlag;
00071       float myGeocentricAlpha;
00072 
00073    };
00074 
00075 
00078    class DT_DLL_VRVGRAPHICS DtProjected2DFlatQuadEffectCreator : public DtEffectCreator
00079    {
00080    public:
00081 
00082       virtual DtEffect* create( CreateParameters* params = 0 )
00083       {
00084          return new DtProjected2DFlatEffect();
00085       }
00086 
00087    };
00088 
00089 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)