VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 
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 
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 
62  {
63  public:
68 
70  virtual ~diguyOsgSSBODrawCallback();
71 
73  diguyOsgSSBODrawCallback(const diguyOsgSSBODrawCallback&, const osg::CopyOp&);
74 
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:
86  };
87 
88 
89 }
90 
96 
osg::ref_ptr< osg::PrimitiveSet > m_primitiveSet
Definition: DtDiGuyOsgGraphicsMesh.h:50
diguyOsgGraphicsMesh(void *internal_data)
virtual ~diguyOsgSSBODrawCallback()
DTOR.
draw callback class for wrapping and updating SSBO blend shape data when object is drawn ...
Definition: DtDiGuyOsgGraphicsMesh.h:61
unsigned int GLuint
Definition: DtGlTextureBufferObject.h:17
diguyGraphicsMesh * diguyOsgGraphicsMesh_create_func(void *internal_data)
Create function declaration.
std::vector< osg::ref_ptr< osg::Drawable > > m_drawables
Definition: DtDiGuyOsgGraphicsMesh.h:51
std::vector< bool > m_has_graphics_state_set
Definition: DtDiGuyOsgGraphicsMesh.h:52
osg::PrimitiveSet * get_primitiveSet()
Definition: DtDiGuyOsgGraphicsMesh.h:44
GLuint myBlendShapeSSBOobject
Definition: DtDiGuyOsgGraphicsMesh.h:85
diguyOsgSSBODrawCallback()
CTOR not used.
diguyOsgGraphicsMesh * myMesh
Definition: DtDiGuyOsgGraphicsMesh.h:84
void attach_state_set_to_drawable(int drawable_index)
META_Object(makVrv, diguyOsgSSBODrawCallback)
osg::Drawable * getDrawable(int drawable_index)
Class declaration.
Definition: DtDiGuyOsgGraphicsMesh.h:34
virtual void releaseGLObjects(osg::State *state) const override
releases memory
virtual void drawImplementation(osg::RenderInfo &renderInfo, const osg::Drawable *drawable) const override
binds ssbo and draws the mesh

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)