summaryrefslogtreecommitdiff
path: root/game/vehicles/railVehicleClass.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/vehicles/railVehicleClass.h')
-rw-r--r--game/vehicles/railVehicleClass.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/game/vehicles/railVehicleClass.h b/game/vehicles/railVehicleClass.h
index ccff3e2..fe27230 100644
--- a/game/vehicles/railVehicleClass.h
+++ b/game/vehicles/railVehicleClass.h
@@ -20,8 +20,12 @@ public:
[[nodiscard]] std::any createAt(const Location &) const override;
struct LocationVertex {
- glm::mat3 body, front, back;
- GlobalPosition3D bodyPos, frontPos, backPos;
+ struct Part {
+ glm::mat3 rotation;
+ GlobalPosition3D position;
+ };
+
+ Part body, front, back;
};
std::array<Mesh::Ptr, 2> bogies;
@@ -38,10 +42,10 @@ protected:
friend Persistence::SelectionPtrBase<std::shared_ptr<RailVehicleClass>>;
bool persist(Persistence::PersistenceStore & store) override;
void postLoad() override;
+ void renderAllParts(size_t count) const;
private:
glVertexArray instanceVAO;
- std::array<glVertexArray, 2> instancesBogiesVAO;
};
using RailVehicleClassPtr = std::shared_ptr<RailVehicleClass>;