Animación Vulkan 1.0
Animación de tiro libre baloncesto con motor gráfico desarrollado en clase
Cargando...
Buscando...
Nada coincide
GEXMLParser.h
Ir a la documentación de este archivo.
1
5
6#pragma once
7
8#include <string>
9#include <vector>
10#include <glm/glm.hpp>
11#include "pugixml/pugixml.hpp"
12
18 std::string name;
19 float length;
20 glm::vec3 offset;
21 glm::vec3 zAxis;
22 glm::vec3 yAxis;
23 glm::vec3 limitsMin;
24 glm::vec3 limitsMax;
25 bool hasLimits;
26 std::vector<GEJointData> children;
27};
28
34 std::string name;
35 glm::vec3 offset;
36 glm::vec3 zAxis;
37 glm::vec3 yAxis;
38 std::vector<GEJointData> rootJoints;
39};
40
46public:
53 static bool parseSkeletonFile(const std::string& filename, GESkeletonData& outData);
54
55private:
61 static glm::vec3 parseVec3(pugi::xml_node node);
62
69};
Parser para archivos .skel en formato XML usando pugixml.
Definition GEXMLParser.h:45
static glm::vec3 parseVec3(pugi::xml_node node)
Parsea un nodo vec3 (offset, zaxis, yaxis).
Definition GEXMLParser.cpp:12
static bool parseSkeletonFile(const std::string &filename, GESkeletonData &outData)
Parsea un archivo .skel y devuelve los datos del esqueleto.
Definition GEXMLParser.cpp:81
static GEJointData parseBalljoint(pugi::xml_node node)
Parsea una articulación y sus hijas recursivamente.
Definition GEXMLParser.cpp:23
Definition pugixml.hpp:506
Estructura para almacenar los datos de una articulación parseada.
Definition GEXMLParser.h:17
glm::vec3 offset
Desplazamiento local respecto al padre.
Definition GEXMLParser.h:20
std::vector< GEJointData > children
Articulaciones hijas.
Definition GEXMLParser.h:26
std::string name
Nombre de la articulación.
Definition GEXMLParser.h:18
glm::vec3 zAxis
Eje Z local (dirección del hueso).
Definition GEXMLParser.h:21
glm::vec3 limitsMax
Límites máximos de rotación (grados).
Definition GEXMLParser.h:24
glm::vec3 limitsMin
Límites mínimos de rotación (grados).
Definition GEXMLParser.h:23
glm::vec3 yAxis
Eje Y local (orientación "arriba").
Definition GEXMLParser.h:22
bool hasLimits
Indica si tiene límites definidos.
Definition GEXMLParser.h:25
float length
Longitud del hueso.
Definition GEXMLParser.h:19
Estructura para almacenar los datos completos del esqueleto.
Definition GEXMLParser.h:33
std::string name
Nombre del esqueleto.
Definition GEXMLParser.h:34
glm::vec3 zAxis
Eje Z del esqueleto.
Definition GEXMLParser.h:36
std::vector< GEJointData > rootJoints
Articulaciones raíz (hijas directas del skeleton).
Definition GEXMLParser.h:38
glm::vec3 yAxis
Eje Y del esqueleto.
Definition GEXMLParser.h:37
glm::vec3 offset
Offset global del esqueleto.
Definition GEXMLParser.h:35