My Project
DynamicVertexBufferEntityOpenGL.h
1 #pragma once
2 #include "AssetEntity.h"
3 #include "DynamicVertexBufferEntity.h"
4 
5 namespace ParaEngine
6 {
12  {
13  private:
14  std::vector<char> m_lpVB;
15 
16  public:
20  DWORD m_dwBase;
22  DWORD m_dwNextBase;
24  DWORD m_dwFlush;
26  DWORD m_dwDiscard;
28  uint32 m_nUnitSize;
29 
30  public:
31  uint32 Lock(uint32 nSize, void** pVertices);
32  void Unlock();
33 
35  GLuint GetBuffer();
36 
37  DWORD GetBaseVertex();
39  virtual bool IsMemoryBuffer();
40  void* GetBaseVertexPointer();
41 
44 
45  virtual HRESULT RestoreDeviceObjects();
46  virtual HRESULT InvalidateDeviceObjects();
47  };
48 
50 }
DWORD m_dwBase
current base or start of the unused space
Definition: DynamicVertexBufferEntityOpenGL.h:20
different physics engine has different winding order.
Definition: EventBinding.h:32
DWORD m_dwDiscard
size of the buffer
Definition: DynamicVertexBufferEntityOpenGL.h:26
DWORD m_dwDataFormat
Definition: DynamicVertexBufferEntityOpenGL.h:18
uint32 m_nUnitSize
sizeof(custom vertex)
Definition: DynamicVertexBufferEntityOpenGL.h:28
DWORD m_dwFlush
must flush after reaching this size
Definition: DynamicVertexBufferEntityOpenGL.h:24
When use DirectX, this is a real dynamic vertex buffer for rendering dynamic mesh When use OpenGL...
Definition: DynamicVertexBufferEntityDirectX.h:11
DWORD m_dwNextBase
current base or start of the unused space
Definition: DynamicVertexBufferEntityOpenGL.h:22
GLuint GetBuffer()
always return 0, since we will disable VBO and use vertex array instead.
Definition: DynamicVertexBufferEntityOpenGL.cpp:78
When use DirectX, this is a real dynamic vertex buffer for rendering dynamic mesh When use OpenGL...
Definition: DynamicVertexBufferEntityOpenGL.h:11
uint32 Lock(uint32 nSize, void **pVertices)
nSizeOfData: number of vertices to be moved into the vertex buffer.
Definition: DynamicVertexBufferEntityOpenGL.cpp:47
Base class for managed asset entity in ParaEngine.
Definition: AssetEntity.h:25
virtual bool IsMemoryBuffer()
whether we are using system memory as dynamic vertex buffer.
Definition: DynamicVertexBufferEntityOpenGL.cpp:88