VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtIndirectDefaultDrawComponent.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2022 VT-MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
15 
17 
18 namespace makVrv
19 {
20  class DtIndirectGeometryRegistrar;
21  class DtVirtualProgramCache;
22  class DtIndirectEffectTexturesTemplate;
23 
24 
27 
30 
32  template <>
33  inline const char* creatorTypeName<DtIndirectDefaultDrawComponent>(void) { return "DtIndirectDefaultDrawComponentCreator"; }
34 
37  {
38  public:
41 
44 
45  protected:
48  private:
51 
54 
56  DtIndirectDefaultDrawComponent& operator=(const DtIndirectDefaultDrawComponent& rhs) = delete;
57  public:
59  virtual void initialize(const DtIndirectEffectTexturesTemplate& effectTexturesState, unsigned int numTextCoordArrays);
60 
62  virtual void update(osg::RenderInfo& renderInfo) override;
63 
65  virtual void apply(osg::RenderInfo& renderInfo) override;
66 
68  virtual void draw(osg::RenderInfo& renderInfo, const int offsetCommandBuffer, GLenum indicesType, int maxCommands
69  , DtGlBuffer* gpuShaderUbo, int gpuShaderUboBinding, DtIndirectShaderConstants* shaderConstants) override;
70 
71  protected:
73  };
74 }
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
Contains the DtIndirectDrawComponent class declaration.
friend DtIndirectDefaultDrawComponentCreator
only creator can create
Definition: DtIndirectDefaultDrawComponent.h:40
A generic OpenGL buffer. This can be: -&gt; a vertex buffer -&gt; an index buffer -&gt; a shader storage buffe...
Definition: DtGlBuffer.h:29
unsigned int GLenum
Definition: DtGlTextureBufferObject.h:19
const char * creatorTypeName< DtIndirectDefaultDrawComponent >(void)
template specialization for the creator
Definition: DtIndirectDefaultDrawComponent.h:33
DtVirtualBaseClassCreator< DtIndirectDefaultDrawComponent > DtIndirectDefaultDrawComponentCreator
creator
Definition: DtIndirectDefaultDrawComponent.h:26
Contains DLL export macros.
Interface class to manage/configure drawing of a subset of rendering components within an indirect ge...
Definition: DtIndirectDrawComponent.h:33
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
class to draw a subset of items of an indirect geometry (everything except light points), the default way
Definition: DtIndirectDefaultDrawComponent.h:36
Definition: DtIndirectShaderConstants.h:42
Class that allows you to abstractly register effect texture types the effect texture types are client...
Definition: DtIndirectEffectTexturesTemplate.h:40
osg::ref_ptr< osg::Uniform > myTimeUniform
Definition: DtIndirectDefaultDrawComponent.h:72

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)