Tramway SDK
navmesh.h
Go to the documentation of this file.
1// Tramway Drifting and Dungeon Exploration Simulator SDK Runtime
2
3#ifndef TRAM_SDK_FRAMEWORK_NAVMESH_H
4#define TRAM_SDK_FRAMEWORK_NAVMESH_H
5
6#include <framework/core.h>
7#include <framework/uid.h>
8#include <framework/math.h>
9
10#include <vector>
11
12namespace tram {
13
14typedef uint32_t node_id_t;
15
19};
20
21class Navmesh {
22public:
24 ~Navmesh() = delete;
25
26 inline name_t GetName() { return name; }
27 inline const std::vector<node_id_t>& GetNodes() { return nodes; }
28
29 void LoadFromDisk();
30
31 static NavmeshNode GetNavmeshNode (node_id_t node_id);
32 static Navmesh* Find (name_t name);
33protected:
35 std::vector<node_id_t> nodes;
36};
37
38}
39
40#endif // TRAM_SDK_FRAMEWORK_NAVMESH_H
Not fully implemented yet.
Definition: navmesh.h:21
Navmesh(name_t name)
Definition: navmesh.h:23
std::vector< node_id_t > nodes
Definition: navmesh.h:35
~Navmesh()=delete
const std::vector< node_id_t > & GetNodes()
Definition: navmesh.h:27
void LoadFromDisk()
Definition: navmesh.cpp:59
static NavmeshNode GetNavmeshNode(node_id_t node_id)
Definition: navmesh.cpp:45
name_t GetName()
Definition: navmesh.h:26
name_t name
Definition: navmesh.h:34
static Navmesh * Find(name_t name)
Definition: navmesh.cpp:49
Serialization, i.e.
glm::vec3 vec3
Definition: math.h:11
uint32_t node_id_t
Definition: navmesh.h:14
Definition: navmesh.h:16
node_id_t right
Definition: navmesh.h:17
node_id_t prev
Definition: navmesh.h:17
vec3 position
Definition: navmesh.h:18
node_id_t next
Definition: navmesh.h:17
node_id_t left
Definition: navmesh.h:17
Interned string type.
Definition: uid.h:10