vkmEngine 1.0.0
A C++ game engine · vkmengine.com
Loading...
Searching...
No Matches
visibility.h
1#pragma once
2
3#include <vector>
4
5#include "ecs/entity.h"
6#include "system/render/data/camera_data.h"
7#include "system/render/data/render_objects.h"
8
9namespace Vkm::Engine {
10
15struct Visibility {
17
23 std::vector<EntityId> entities;
24
26 bool hasCamera = false;
27
34};
35
36} // namespace Vkm::Engine
Flattened camera for the frame.
Definition camera_data.h:10
Names one entity of one Scene, for as long as that slot holds it.
Definition entity.h:23
Every object the frame can draw, written once by the cull, and the lists of what each reader draws.
Definition render_objects.h:41
VisibilitySystem's per-frame product: camera data, every scene mesh, and which of them the camera see...
Definition visibility.h:15
RenderObjects objects
Every drawable mesh, and which the camera sees.
Definition visibility.h:16
CameraData camera
The resolved view, depth of field included; meaningful while hasCamera.
Definition visibility.h:25
std::vector< EntityId > entities
Per object, its entity, parallel to the columns of objects.
Definition visibility.h:23
EntityId cameraEntity
The scene camera the frame was rendered through.
Definition visibility.h:33