Saga3D API Documentation  1.0-RC4
SIndirectCommand.h
Go to the documentation of this file.
1 #ifndef __SINDIRECT_COMMAND_H_INCLUDED__
2 #define __SINDIRECT_COMMAND_H_INCLUDED__
3 
4 #include <vector>
5 
6 namespace saga
7 {
8 namespace video
9 {
11  {
12  std::uint32_t VertexCount = 0;
13  std::uint32_t InstanceCount = 1;
14  std::uint32_t VertexOffset = 0;
15  std::uint32_t FirstInstance = 0;
16  };
17 
19  {
20  std::uint32_t IndexCount = 0;
21  std::uint32_t InstanceCount = 1;
22  std::uint32_t IndexOffset = 0;
23  std::uint32_t VertexOffset = 0;
24  std::uint32_t FirstInstance = 0;
25  };
26 
27  struct SDrawCommand
28  {
29  glm::ivec4 Scissor;
30  bool UseScissor = false;
31  bool IndexedDraw = false;
32  std::uint32_t VertexCount = 0;
33  std::uint32_t IndexCount = 0;
34  std::uint32_t IndexOffset = 0;
35  std::uint32_t VertexOffset = 0;
36  std::uint32_t InstanceCount = 1;
37  std::uint32_t FirstInstance = 0;
38  };
39 
40  using DrawCommandList = std::vector<SDrawCommand>;
41 
42 } // namespace video
43 } // namespace saga
44 
45 #endif // __SINDIRECT_COMMAND_H_INCLUDED__
46 
saga::video::SDrawCommand::FirstInstance
std::uint32_t FirstInstance
Definition: SIndirectCommand.h:37
saga::video::SIndirectCommand
Definition: SIndirectCommand.h:10
saga::video::SDrawCommand::IndexCount
std::uint32_t IndexCount
Definition: SIndirectCommand.h:33
saga::video::SIndexedIndirectCommand::IndexCount
std::uint32_t IndexCount
Definition: SIndirectCommand.h:20
saga::video::SDrawCommand::Scissor
glm::ivec4 Scissor
Definition: SIndirectCommand.h:29
saga::video::SDrawCommand::UseScissor
bool UseScissor
Definition: SIndirectCommand.h:30
saga::video::SIndexedIndirectCommand::VertexOffset
std::uint32_t VertexOffset
Definition: SIndirectCommand.h:23
saga::video::SDrawCommand::IndexOffset
std::uint32_t IndexOffset
Definition: SIndirectCommand.h:34
saga::video::SIndexedIndirectCommand::IndexOffset
std::uint32_t IndexOffset
Definition: SIndirectCommand.h:22
saga::video::SIndexedIndirectCommand
Definition: SIndirectCommand.h:18
saga::video::SDrawCommand::VertexCount
std::uint32_t VertexCount
Definition: SIndirectCommand.h:32
saga::video::SDrawCommand
Definition: SIndirectCommand.h:27
saga::video::SIndirectCommand::FirstInstance
std::uint32_t FirstInstance
Definition: SIndirectCommand.h:15
saga::video::SIndexedIndirectCommand::FirstInstance
std::uint32_t FirstInstance
Definition: SIndirectCommand.h:24
saga::video::SIndirectCommand::InstanceCount
std::uint32_t InstanceCount
Definition: SIndirectCommand.h:13
saga::video::DrawCommandList
std::vector< SDrawCommand > DrawCommandList
Definition: SIndirectCommand.h:40
saga::video::SDrawCommand::InstanceCount
std::uint32_t InstanceCount
Definition: SIndirectCommand.h:36
saga::video::SIndexedIndirectCommand::InstanceCount
std::uint32_t InstanceCount
Definition: SIndirectCommand.h:21
saga::video::SDrawCommand::IndexedDraw
bool IndexedDraw
Definition: SIndirectCommand.h:31
saga::video::SDrawCommand::VertexOffset
std::uint32_t VertexOffset
Definition: SIndirectCommand.h:35
saga::video::SIndirectCommand::VertexCount
std::uint32_t VertexCount
Definition: SIndirectCommand.h:12
saga::video::SIndirectCommand::VertexOffset
std::uint32_t VertexOffset
Definition: SIndirectCommand.h:14
saga
Definition: aabbox3d.h:11