Cogs.Core
Source
Systems
Core
CullingData.h
1
#pragma once
2
3
#include <vector>
4
5
#include <glm/glm.hpp>
6
7
#include "Utilities/FrustumClassification.h"
8
#include "Services/TaskManager.h"
9
10
namespace
Cogs
11
{
12
namespace
Core
13
{
14
class
Context;
15
16
struct
CullingSource
17
{
18
size_t
count = 0;
19
std::vector<glm::vec3> bbMinWorld;
20
std::vector<glm::vec3> bbMaxWorld;
21
};
22
23
struct
CullingData
24
{
25
Context
* context =
nullptr
;
26
const
CullingSource
* source =
nullptr
;
27
size_t
viewportIndex = 0;
28
size_t
hash = 0;
29
30
glm::mat4 viewMatrix;
31
glm::mat4 viewProjection;
32
33
std::vector<FrustumPlanes> results;
34
std::vector<float> depths;
35
36
TaskId
task = NoTask;
37
};
38
}
39
}
Cogs::Core::Context
A Context instance contains all the services, systems and runtime components needed to use Cogs.
Definition:
Context.h:83
Cogs
Contains all Cogs related functionality.
Definition:
FieldSetter.h:23
Cogs::Core::CullingData
Definition:
CullingData.h:24
Cogs::Core::CullingSource
Definition:
CullingData.h:17
Cogs::Core::TaskId
Task id struct used to identify unique Task instances.
Definition:
TaskManager.h:20
Generated by
1.9.6