VR-Vantage API Documentation
DtShadowTechnique.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2008 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: shadowTechnique.h,v $ $Revision: 1.6 $ $State: Exp $
7 ******************************************************************************/
8 
9 
10 #ifndef ShadowTechnique_H_
11 #define ShadowTechnique_H_
12 
13 #include <vrvOsg/vrvOsg.h>
14 #include <osgFX/Technique>
16 
17 namespace makOsgShadowFX
18 {
19 
21 
22 class DT_DLL_VRVOSG DtShadowFXTechnique : public osgFX::Technique
23 {
24 public:
25  DtShadowFXTechnique(DtShadowImplEnum tech, int quality, int distance);
26 
27  META_Technique("ShadowTechnique", "Adds shadows To a scene");
28 
29  void getRequiredExtensions(std::vector<std::string>& extensions) const;
30 
31  void traverse(osg::NodeVisitor& nv, osgFX::Effect* fx);
32 
33 protected:
35 
36  void define_passes();
37 
38  // debug methods
39  osg::ref_ptr<osg::Camera> makeDebugCockpit();
40 
41  osg::ref_ptr<makOsgShadowFX::DtShadowMap> myShadowMapGen;
42  osg::ref_ptr<osg::Texture2D> myShadowMap;
43 
44  // forward declare, interface and implementation provided in DtShadowMap.cpp
45  class DrawableDrawWithDepthShadowComparisonOffCallback;
46 
47  osg::ref_ptr<osg::Camera> myDebugCamera;
48 };
49 
50 } //makShadowFX::
51 
52 #endif


Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)