Wildvine Engine
Referencia Doxygen del codigo propio de Wildvine Engine.
Cargando...
Buscando...
Nada coincide
SceneGraph.h
Ir a la documentación de este archivo.
1
6#pragma once
7#include "Prerequisites.h"
8
9class Entity;
10class DeviceContext;
11class Camera;
12class RenderScene;
13
21class
23public:
24 SceneGraph() = default;
25 ~SceneGraph() = default;
26
27 void
28 init();
29
34 void
35 addEntity(Entity* e); // registra en el grafo
36
41 void
43
44 bool
45 isAncestor(Entity* possibleAncestor, Entity* node) const;
46
47 bool
48 attach(Entity* child, Entity* parent);
49
50 bool
51 detach(Entity* child);
52
53 void
54 update(float deltaTime, DeviceContext& deviceContext);
55
56 void
57 render(DeviceContext& deviceContext);
58
59 void
60 gatherRenderScene(RenderScene& outScene, const Camera& camera);
61
62 void
63 destroy();
64private:
65 void
66 updateWorldRecursive(Entity* node, const XMMATRIX& parentWorld);
67
68 bool
69 isRoot(Entity* e) const;
70
71 bool
72 isRegistered(Entity* e) const;
73
74private:
75 //std::vector<EU::TSharedPointer<Entity>> m_entities;
76public:
77 std::vector<Entity*> m_entities;
78};
79
80
Declara la API de Prerequisites dentro del subsistema Core.
Contenedor temporal con los elementos visibles de un frame.
Definition RenderScene.h:20
Administra la jerarquia de entidades y su actualizacion espacial.
Definition SceneGraph.h:22
void gatherRenderScene(RenderScene &outScene, const Camera &camera)
void destroy()
bool isRegistered(Entity *e) const
bool isRoot(Entity *e) const
void init()
void addEntity(Entity *e)
Registra una entidad dentro del grafo.
void render(DeviceContext &deviceContext)
void updateWorldRecursive(Entity *node, const XMMATRIX &parentWorld)
SceneGraph()=default
bool detach(Entity *child)
void update(float deltaTime, DeviceContext &deviceContext)
void removeEntity(Entity *e)
Elimina una entidad del grafo si esta registrada.
std::vector< Entity * > m_entities
Entidades registradas en el grafo.
Definition SceneGraph.h:77
bool attach(Entity *child, Entity *parent)
~SceneGraph()=default
bool isAncestor(Entity *possibleAncestor, Entity *node) const