OpenGothic
Open source reimplementation of Gothic I and II
Loading...
Searching...
No Matches
physicmesh.h
Go to the documentation of this file.
1#pragma once
2
3#include "dynamicworld.h"
4
5class Pose;
6class ProtoMesh;
7class Skeleton;
8class AttachBinder;
9
10class PhysicMesh final {
11 public:
12 PhysicMesh()=default;
13 PhysicMesh(const ProtoMesh& proto, DynamicWorld& owner, bool movable);
14
15 bool isEmpty() const;
16
17 void setObjMatrix (const Tempest::Matrix4x4& m);
18 void setSkeleton (const Skeleton* sk);
19 void setPose (const Pose& p);
21
22 private:
23 void implSetObjMatrix(const Tempest::Matrix4x4& mt, const Tempest::Matrix4x4* tr);
24
25 std::vector<DynamicWorld::Item> sub;
26 const ProtoMesh* ani=nullptr;
27 const Skeleton* skeleton=nullptr;
28 const AttachBinder* binder=nullptr;
29 };
void setInteractive(Interactive *it)
PhysicMesh()=default
void setPose(const Pose &p)
void setObjMatrix(const Tempest::Matrix4x4 &m)
void setSkeleton(const Skeleton *sk)
bool isEmpty() const
Definition pose.h:16