OpenGothic
Open source reimplementation of Gothic I and II
Loading...
Searching...
No Matches
phoenix.h
Go to the documentation of this file.
1#pragma once
2
3#include <Tempest/Vec>
4
5#include <zenkit/Material.hh>
6#include <zenkit/SoftSkinMesh.hh>
7
8namespace phoenix_compat {
10 {
11 Tempest::Vec3 Normal;
12 Tempest::Vec2 TexCoord;
13 uint32_t Color;
14 Tempest::Vec3 LocalPositions[4];
15 unsigned char BoneIndices[4];
16 float Weights[4];
17 };
18
20 {
21 struct SubMesh
22 {
23 zenkit::Material material;
24 size_t indexOffset = 0;
25 size_t indexSize = 0;
26 };
27
28 Tempest::Vec3 bbox[2];
29 std::vector<SkeletalVertex> vertices;
30 std::vector<uint32_t> indices;
31 std::vector<SubMesh> subMeshes;
32 };
33
34 zenkit::AxisAlignedBoundingBox get_total_aabb(const zenkit::SoftSkinMesh&);
35
36 PackedSkeletalMesh pack_softskin_mesh(const zenkit::SoftSkinMesh&);
37}
PackedSkeletalMesh pack_softskin_mesh(const zenkit::SoftSkinMesh &)
Definition phoenix.cpp:36
zenkit::AxisAlignedBoundingBox get_total_aabb(const zenkit::SoftSkinMesh &)
Definition phoenix.cpp:5
std::vector< SkeletalVertex > vertices
Definition phoenix.h:29
std::vector< uint32_t > indices
Definition phoenix.h:30
std::vector< SubMesh > subMeshes
Definition phoenix.h:31
unsigned char BoneIndices[4]
Definition phoenix.h:15
Tempest::Vec3 LocalPositions[4]
Definition phoenix.h:14