CVertexBuffer.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include <ionCore.h>
5 #include <ionMath.h>
6 #include <ionGraphics.h>
7 
8 #include "Utilities.h"
9 
10 
11 namespace ion
12 {
13  namespace Graphics
14  {
15  namespace GL
16  {
17 
19  {
20 
21  public:
22 
24 
25  void UploadData(void const * const Data, size_t const DataSize, size_t const NumberOfElements);
26  void UploadSubData(void const * const Data, size_t const DataSize, size_t const Offset, size_t const NumberOfElements);
27  void SetInputLayout(SInputLayoutElement const * const InputLayout, int const NumElements);
28  void SetInstancingEnabled(bool const Enabled);
29 
30 
31  uint Handle = 0;
32  vector<SInputLayoutElement> InputLayout;
33  bool Instancing = false;
34 
35  };
36 
37  }
38  }
39 }
void SetInstancingEnabled(bool const Enabled)
Definition: CVertexBuffer.cpp:39
bool Instancing
Definition: CVertexBuffer.h:33
void UploadSubData(void const *const Data, size_t const DataSize, size_t const Offset, size_t const NumberOfElements)
Definition: CVertexBuffer.cpp:26
Definition: CVertexBuffer.h:18
vector< SInputLayoutElement > InputLayout
Definition: CVertexBuffer.h:32
unsigned int uint
Definition: ionTypes.h:99
uint Handle
Definition: CVertexBuffer.h:31
Definition: CCatmullRomAdvancedSplineInterpolator.h:7
~CVertexBuffer()
Definition: CVertexBuffer.cpp:14
void SetInputLayout(SInputLayoutElement const *const InputLayout, int const NumElements)
Definition: CVertexBuffer.cpp:33
void UploadData(void const *const Data, size_t const DataSize, size_t const NumberOfElements)
Definition: CVertexBuffer.cpp:19
Definition: IVertexBuffer.h:30
Definition: IVertexBuffer.h:15