VR-Forces 5.0.3 Developer's Guide
Home
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrvDiGuy
DtDiGuyOsgGraphicsMesh.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2020 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#pragma once
11
12
/*********************************************************************
13
**
14
*2 diguyOsgGraphicsMesh
15
**
16
*/
17
18
#include <diguyGraphicsMesh.h>
19
20
#include <osg/Drawable>
21
22
class
diguyGraphicsVertexData;
23
24
namespace
makVrv
25
{
26
33
34
class
diguyOsgGraphicsMesh
:
public
diguyGraphicsMesh
35
{
36
37
public
:
38
39
diguyOsgGraphicsMesh
(
void
* internal_data);
40
41
virtual
void
build
();
42
virtual
void
unbuild
();
43
44
osg::PrimitiveSet*
get_primitiveSet
() {
return
m_primitiveSet
; }
45
int
get_num_drawables
();
46
osg::Drawable*
getDrawable
(
int
drawable_index);
47
48
protected
:
49
50
osg::ref_ptr<osg::PrimitiveSet>
m_primitiveSet
;
51
std::vector<osg::ref_ptr<osg::Drawable> >
m_drawables
;
52
std::vector<bool>
m_has_graphics_state_set
;
53
54
void
attach_state_set_to_drawable
(
int
drawable_index);
55
};
56
57
60
61
class
diguyOsgSSBODrawCallback
:
public
osg::Drawable::DrawCallback
62
{
63
public
:
65
diguyOsgSSBODrawCallback
();
67
diguyOsgSSBODrawCallback
(
diguyOsgGraphicsMesh
* mesh);
68
70
virtual
~diguyOsgSSBODrawCallback
();
71
73
diguyOsgSSBODrawCallback
(
const
diguyOsgSSBODrawCallback
&,
const
osg::CopyOp&);
74
75
META_Object
(makVrv,
diguyOsgSSBODrawCallback
);
76
78
virtual
void
drawImplementation
(osg::RenderInfo& renderInfo,
const
osg::Drawable* drawable)
const override
;
79
81
virtual
void
releaseGLObjects
(osg::State* state)
const override
;
82
83
protected
:
84
diguyOsgGraphicsMesh
*
myMesh
;
85
mutable
GLuint
myBlendShapeSSBOobject
;
86
};
87
88
89
}
90
95
diguyGraphicsMesh
*
diguyOsgGraphicsMesh_create_func
(
void
* internal_data);
96
makVrv::diguyOsgGraphicsMesh::m_primitiveSet
osg::ref_ptr< osg::PrimitiveSet > m_primitiveSet
Definition:
DtDiGuyOsgGraphicsMesh.h:50
makVrv::diguyOsgGraphicsMesh::diguyOsgGraphicsMesh
diguyOsgGraphicsMesh(void *internal_data)
makVrv::diguyOsgSSBODrawCallback::~diguyOsgSSBODrawCallback
virtual ~diguyOsgSSBODrawCallback()
DTOR.
makVrv::diguyOsgSSBODrawCallback
draw callback class for wrapping and updating SSBO blend shape data when object is drawn ...
Definition:
DtDiGuyOsgGraphicsMesh.h:61
osg::ref_ptr< osg::PrimitiveSet >
GLuint
unsigned int GLuint
Definition:
DtGlTextureBufferObject.h:17
diguyOsgGraphicsMesh_create_func
diguyGraphicsMesh * diguyOsgGraphicsMesh_create_func(void *internal_data)
Create function declaration.
makVrv::diguyOsgGraphicsMesh::m_drawables
std::vector< osg::ref_ptr< osg::Drawable > > m_drawables
Definition:
DtDiGuyOsgGraphicsMesh.h:51
makVrv::diguyOsgGraphicsMesh::m_has_graphics_state_set
std::vector< bool > m_has_graphics_state_set
Definition:
DtDiGuyOsgGraphicsMesh.h:52
makVrv::diguyOsgGraphicsMesh::get_primitiveSet
osg::PrimitiveSet * get_primitiveSet()
Definition:
DtDiGuyOsgGraphicsMesh.h:44
makVrv::diguyOsgSSBODrawCallback::myBlendShapeSSBOobject
GLuint myBlendShapeSSBOobject
Definition:
DtDiGuyOsgGraphicsMesh.h:85
diguyGraphicsMesh
DrawCallback
makVrv::diguyOsgSSBODrawCallback::diguyOsgSSBODrawCallback
diguyOsgSSBODrawCallback()
CTOR not used.
makVrv::diguyOsgSSBODrawCallback::myMesh
diguyOsgGraphicsMesh * myMesh
Definition:
DtDiGuyOsgGraphicsMesh.h:84
makVrv::diguyOsgGraphicsMesh::attach_state_set_to_drawable
void attach_state_set_to_drawable(int drawable_index)
makVrv::diguyOsgGraphicsMesh::get_num_drawables
int get_num_drawables()
makVrv::diguyOsgGraphicsMesh::unbuild
virtual void unbuild()
makVrv::diguyOsgSSBODrawCallback::META_Object
META_Object(makVrv, diguyOsgSSBODrawCallback)
makVrv::diguyOsgGraphicsMesh::getDrawable
osg::Drawable * getDrawable(int drawable_index)
makVrv::diguyOsgGraphicsMesh::build
virtual void build()
makVrv::diguyOsgGraphicsMesh
Class declaration. diguyOsgGraphicsMesh publicly inherits diguyGraphicsMesh. Virtual functions are de...
Definition:
DtDiGuyOsgGraphicsMesh.h:34
makVrv::diguyOsgSSBODrawCallback::releaseGLObjects
virtual void releaseGLObjects(osg::State *state) const override
releases memory
makVrv::diguyOsgSSBODrawCallback::drawImplementation
virtual void drawImplementation(osg::RenderInfo &renderInfo, const osg::Drawable *drawable) const override
binds ssbo and draws the mesh
Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (
www.mak.com
)