VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVolumetricLighting.h
Go to the documentation of this file.
1 /*****************************************************************************
2 * Copyright (c) 2023 MAK Technologies, Inc.
3 * All rights reserved.
4 *****************************************************************************/
5 
6 #pragma once
7 
11 
13 
15 
17 
18 namespace makVrv
19 {
20  class DtWindow;
21  class DtVolumetricDrawable;
22 
26  {
27  public:
29  DtVolumetricLighting(DtDe& de, const std::string& postProcessType, bool handles2D);
30 
32  virtual ~DtVolumetricLighting();
33  private:
36 
39 
41  DtVolumetricLighting& operator=(const DtVolumetricLighting&);
42  public:
43 
45  virtual bool update(DtChannel *channel);
46 
48  virtual void slot_reloadShaders();
49  virtual void slot_setGodRayEffects(bool enabled);
50 
52  virtual osg::Texture* outputTexture();
53 
55  virtual bool localEnabled();
56 
58  virtual bool postProcessorEnabled() override;
59 
64  virtual void setInputTexture(const DtChannel* channel, osg::Texture* texture) override;
65 
67  virtual bool needsOcclusionTexture() const override;
68 
69  protected:
71 
74  };
75 
76  //
77  // Creator
78  //
79 
84  : public DtPostProcessorCreator
85  {
86  public:
88  friend class DtPostProcessManager;
89 
92 
94  virtual ~DtVolumetricLightingCreator();
95 
96  protected:
98  virtual DtPostProcessor* create(DtDe& de, const std::string& postProcessType);
99  };
100 
101 }
DtPostProcessorCreator is the common base class for all post processor creators.
Definition: DtPostProcessor.h:232
bool myLocalEnabled
Definition: DtVolumetricLighting.h:73
The abstract Channel Class.
Definition: DtChannel.h:35
DtVolumetricDrawable * myVolumeDrawable
Definition: DtVolumetricLighting.h:72
A DtVolumetricLightingCreator instance is registered with the post process element factory to create ...
Definition: DtVolumetricLighting.h:83
This class provides the OSG-specific management of post-processing effects.
Definition: DtPostProcessManager.h:27
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
class used to render crepuscular rays during the post processor camera draw
Definition: DtVolumetricDrawable.h:46
#define DT_DLL_VRVPOSTPROCESSOR
Definition: vrvPostProcessor.h:19
Contains DLL export macros.
This class provides an implementation of crepuscular rays as a post process.
Definition: DtVolumetricLighting.h:25
Base class to provide boost signal/slot management.
DtSignalConnectionManager myConnections
Definition: DtVolumetricLighting.h:70
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
This class provides the OSG-specific implementation of a post processor. A post processor has a type ...
Definition: DtPostProcessor.h:66

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)