source: GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/include/RenderTechniques/OgreSBBRenderTechnique.h @ 836

Revision 836, 1.5 KB checked in by szirmay, 19 years ago (diff)
Line 
1#pragma once
2
3//disable inheritance warning caused by multiple inheritance
4#if _WIN32
5#if _MSC_VER
6#pragma warning(disable: 4250)
7#endif
8#endif
9
10#include "OgreRenderTechnique.h"
11#include "SBBRenderTechnique.h"
12#include "Ogre.h"
13
14using namespace Ogre;
15
16/**
17        @brief SBBRenderTechnique used in an OGRE environment.
18*/
19class OgreSBBRenderTechnique : public OgreRenderTechnique,
20                                                                                public SBBRenderTechnique
21{
22public:
23        /**
24                @brief Constructor.
25
26                @param depthTexID                               the id of the texture unit state the resulting
27                                                                                        scene depth map should be bound to
28                @param pass                                             the pass to operate on                 
29                @param parentRenderable                 the object to operate on
30                @param parentTechniqueGroup             the TechniqueGroup this RenderedTechnique is attached to
31        */
32        OgreSBBRenderTechnique( unsigned char depthTexID,
33                                                        Pass* pass,
34                                                        OgreRenderable* parentRenderable,
35                                                        OgreTechniqueGroup* parentTechniqueGroup
36                                                        );
37        ~OgreSBBRenderTechnique();
38       
39        //inherited
40        virtual void update(unsigned long frameNum);
41       
42protected:     
43        /**
44                &brief the id of the texture unit state the resulting scene depth map should be bound to
45        */
46        unsigned char depthTexID;
47       
48};
49
50
51class OgreSBBRenderTechniqueFactory : public RenderTechniqueFactory
52{
53public:
54       
55        OgreSBBRenderTechniqueFactory();
56
57        OgreRenderTechnique* createInstance(IllumTechniqueParams* params,
58                                                                                Pass* pass,
59                                                                                OgreRenderable* parentRenderable,
60                                                                                OgreTechniqueGroup* parentTechniqueGroup);
61
62
63        unsigned char depthTexID;
64
65};
66
67
Note: See TracBrowser for help on using the repository browser.