VR-Forces 4.10 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrvOsg
DtIndirectDrawComponent.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2020 VT-MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvOsg/vrvOsg.h
>
13
14
#include <osg/StateSet>
15
#include <osg/Uniform>
16
17
#include <string>
18
19
namespace
osg
20
{
21
class
RenderInfo;
22
}
23
24
namespace
makVrv
25
{
26
class
DtDe;
27
30
class
DT_DLL_VRVOSG
DtIndirectDrawComponent
31
{
32
public
:
34
DtIndirectDrawComponent
(
DtDe
& de);
35
37
virtual
~
DtIndirectDrawComponent
();
38
private
:
40
DtIndirectDrawComponent
() =
delete
;
41
43
DtIndirectDrawComponent
(
const
DtIndirectDrawComponent
& rhs) =
delete
;
44
46
DtIndirectDrawComponent
&operator=(
const
DtIndirectDrawComponent
& rhs) =
delete
;
47
48
public
:
50
virtual
void
update(osg::RenderInfo& renderInfo) = 0;
51
53
virtual
void
apply(osg::RenderInfo& renderInfo) = 0;
54
56
virtual
void
addExternallyManagedUniform(
osg::ref_ptr<osg::Uniform>
uniform);
57
59
virtual
void
draw(osg::RenderInfo& renderInfo,
const
int
offsetCommandBuffer,
GLenum
indicesType,
int
maxCommands) = 0;
60
62
virtual
void
releaseGLObjects(osg::State* state) = 0;
63
65
virtual
bool
shouldDraw(
bool
isShadowPass);
66
67
protected
:
69
virtual
std::string indicesTypeToString(
int
indicesType);
70
71
protected
:
72
DtDe
&
myDe
;
73
74
osg::ref_ptr<osg::StateSet>
myStateSet
;
75
};
76
}
DT_DLL_VRVOSG
#define DT_DLL_VRVOSG
Definition:
vrvOsg.h:23
osg::ref_ptr< osg::Uniform >
makVrv::DtIndirectDrawComponent::myDe
DtDe & myDe
Definition:
DtIndirectDrawComponent.h:72
GLenum
unsigned int GLenum
Definition:
DtGlTextureBufferObject.h:18
vrvOsg.h
Contains DLL export macros.
makVrv::DtIndirectDrawComponent
Interface class to manage/configure drawing of a subset of rendering components within an indirect ge...
Definition:
DtIndirectDrawComponent.h:30
makVrv::DtDe
The DtDe is the core component of any VR-Vantage application.
Definition:
DtDe.h:69
makVrv::DtIndirectDrawComponent::myStateSet
osg::ref_ptr< osg::StateSet > myStateSet
Definition:
DtIndirectDrawComponent.h:74
Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (
www.mak.com
)