VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtInstancedLightPointUpdate.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
14 
15 #include <osg/Geometry>
16 #include <osg/BlendFunc>
17 
18 #include <osgSim/LightPoint>
19 #include <osgSim/LightPointNode>
20 #include <osg/Depth>
21 
22 namespace makVrv
23 {
24 
28  class DT_DLL_VRVOSG DtInstancedLightPointUpdate : public osg::Referenced
29  {
30  public:
33  DtInstancedLightPointUpdate( osgSim::LightPoint lp, osg::ref_ptr<osgSim::LightPointNode> lpn, osg::Geometry *geom, DtDe& de);
34 
36  bool isShadowCamera(osg::RenderInfo& renderInfo) const;
37 
39  virtual bool isSmallFeature(const osg::Matrixf& drawableMatrix, osg::ref_ptr<osg::Camera> camera,
40  float lightMinPixelSize);
41 
43  virtual bool processSector(const osg::Matrixd& drawableMatrix);
44 
46  virtual bool update(double frameTime, osg::Drawable* drw, double lastShaderReload);
47 
49  virtual void setDaylightControlled(bool b);
50 
52  virtual bool daylightControlled();
53 
56  virtual osgSim::LightPointNode* const lightPointNode() const;
57 
58  private:
59  osg::ref_ptr<osgSim::LightPointNode> myLightPointNode;
60  osgSim::LightPoint myLightPoint;
61  double myLastSimTime;
63 
64  osg::ref_ptr<osg::DrawElementsUInt> myGeomPrimitiveSet;
65  osg::ref_ptr<osg::Vec3Array> myGeomVertexArray;
66  osg::ref_ptr<osg::Vec4Array> myGeomColorArray;
67  osg::ref_ptr<osg::BlendFunc> myGeomBlendFunc;
68 
69  osg::ref_ptr<osg::Uniform> myLightPointSizeUniform;
70 
71  osg::ref_ptr<DtVirtualProgramDepthOnlyCallback> myDepthOnlyCallback;
72 
75 
77 
78  osg::ref_ptr<osg::Depth> myDepth;
79  };
80 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)