VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtGpuCullingTcsUserData.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 VT-MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 #include <vrvCore/DtKeyedData.h>
14 
15 #include <osg/Camera>
16 
17 namespace makVrv
18 {
19  class DtGlBuffer;
20  class DtGlDeleteObjectManager;
21 
24  {
25  public:
26  DtGpuCullingTcsUserData(DtDe& de, const std::string& name);
27  virtual ~DtGpuCullingTcsUserData();
28  private:
30  DtGpuCullingTcsUserData() = delete;
35  public:
38 
42 
45 
47 
50 
54  public:
56  virtual void releaseGLObjects();
57 
59  virtual void deleteBuffers();
60  protected:
62  osg::observer_ptr<const osg::Camera> myOsgCameraObserverPtr;
63 
64  friend class DtGpuCulling;
65  };
66 
69 
71  template <>
72  inline const char* creatorTypeName<DtGpuCullingTcsUserData>(void) { return "DtGpuCullingTcsUserDataCreator"; }
73 }
virtual void deleteBuffers()
delete the container buffers
This represents an arbitrary user pointer/data within DtKeyedData.
Definition: DtKeyedData.h:95
DtGlBuffer * myGpuIndirectBuffersDebug
The indirect command buffer for debugging culling.
Definition: DtGpuCullingTcsUserData.h:44
osg::observer_ptr< const osg::Camera > myOsgCameraObserverPtr
Definition: DtGpuCullingTcsUserData.h:62
DtGlBuffer * myGpuOutputInstanceOffsetInPerInstanceDataBuffers
The re-distributed/culled/switched/lod&#39;ed instances&#39; offset into the per instance data buffer...
Definition: DtGpuCullingTcsUserData.h:53
DtGlBuffer * myGpuOutputInstancesBuffers
The re-distributed/culled/switched/lod&#39;ed instances (a subset of the input instances) ...
Definition: DtGpuCullingTcsUserData.h:49
DtGlDeleteObjectManager & myGlDeleteObjectManager
Definition: DtGpuCullingTcsUserData.h:61
DtGlBuffer * myGpuOutputInstancesBuffersDebug
The re-distributed switched/lod&#39;ed instances but not culled out via cull shader for debugging...
Definition: DtGpuCullingTcsUserData.h:41
This class is a component of the DtIndirectGeometry It inputs are: -&gt; the instances registered with Dt...
Definition: DtGpuCulling.h:87
DtGpuCullingTcsUserData & operator=(const DtGpuCullingTcsUserData &rhs)=delete
not allowed
DtGlBuffer * myGpuLightSourceIndexOutputBuffers
Definition: DtGpuCullingTcsUserData.h:46
virtual void releaseGLObjects()
add buffers to gl delete manager
This represents per camera (tcs) specific data for DtGpuCulling.
Definition: DtGpuCullingTcsUserData.h:23
DtGlBuffer * myGpuIndirectBuffersBindless
the buffer into which the commands are generated
Definition: DtGpuCullingTcsUserData.h:37
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
const char * creatorTypeName< DtGpuCullingTcsUserData >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtGpuCullingTcsUserData.h:72
A generic OpenGL buffer. This can be: -&gt; a vertex buffer -&gt; an index buffer -&gt; a shader storage buffe...
Definition: DtGlBuffer.h:29
Vaos are OpenGL context specific. They need to be deleted in the context they are created in...
Definition: DtGlDeleteObjectManager.h:58
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
DtGpuCullingTcsUserData()=delete
not allowed
Contains the DtKeyedData class declaration.
DtVirtualBaseClassCreator< DtGpuCullingTcsUserData, const std::string & > DtGpuCullingTcsUserDataCreator
creator
Definition: DtGpuCullingTcsUserData.h:68

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)