VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSkyDrawable.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
15 
16 #include <osg/Drawable>
17 
18 namespace SilverLining
19 {
20  class Atmosphere;
21  class ThreadCameraStreamData;
22 }
23 
24 namespace osg
25 {
26  class Camera;
27  class GLExtensions;
28 }
29 
30 namespace makVrv
31 {
32  class DtSilverliningGroup;
33 
36 
39 
41  template <>
42  inline const char* creatorTypeName<DtSkyDrawable>(void) { return "DtSkyDrawableCreator"; }
43 
46  class DT_DLL_VRVOSG DtSkyDrawable : public osg::Drawable
47  {
48 
49  public:
51 
53  DtSkyDrawable(const DtSkyDrawable& copy, const osg::CopyOp& copyop);
54 
56  virtual ~DtSkyDrawable();
57  protected:
58 
61  public:
62 
64  virtual osg::Object* cloneType() const { return nullptr; }
65  virtual osg::Object* clone(const osg::CopyOp& copyop) const { return new DtSkyDrawable(*this, copyop); }
66 
68  virtual void drawImplementation(osg::RenderInfo& renderInfo) const;
69 
70  protected:
71 
72  virtual void updateSensorFXAndMultiViewUniforms(const SilverLining::Atmosphere* atmosphere, const osg::Camera* camera, osg::State& state, SilverLining::ThreadCameraStreamData* tcsData) const;
73  protected:
74 
76 
78  };
79 }
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
virtual osg::Object * clone(const osg::CopyOp &copyop) const
Definition: DtSkyDrawable.h:65
virtual osg::Object * cloneType() const
required functions for derriving from osg::Drawable
Definition: DtSkyDrawable.h:64
A group node which adds a silver-lining sky and will light all Children with the proper lighting para...
Definition: DtSilverliningGroup.h:97
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
const char * creatorTypeName< DtSkyDrawable >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtSkyDrawable.h:42
DtVirtualBaseClassCreator< DtSkyDrawable, DtSilverliningGroup * > DtSkyDrawableCreator
creator
Definition: DtSkyDrawable.h:35
The sky drawable.
Definition: DtSkyDrawable.h:46
DtDe & myDe
Definition: DtSkyDrawable.h:77
Contains DLL export macros.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
DtSilverliningGroup * myParent
Definition: DtSkyDrawable.h:75
friend DtSkyDrawableCreator
Definition: DtSkyDrawable.h:50

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)