#include "Shape.hpp"
#include "ShapeRegistry.hpp"
-#include "../app/TextureIndex.hpp"
#include "../io/TokenStreamReader.hpp"
#include "../graphics/DirectionalLighting.hpp"
#include "../graphics/EntityMesh.hpp"
+#include "../shared/ResourceIndex.hpp"
#include <iostream>
#include <glm/gtx/quaternion.hpp>
}
+Part::State &Instance::EyesState() noexcept {
+ return state[model->GetEyesPart().ID()];
+}
+
+glm::mat4 Instance::EyesTransform() const noexcept {
+ return model->GetEyesPart().GlobalTransform(*this);
+}
+
void Instance::Render(const glm::mat4 &M, DirectionalLighting &prog) {
model->RootPart().Render(M, *this, prog);
}
Model::Model()
: id(0)
, root()
-, part() {
+, part()
+, eyes_id(0) {
}
}
-void Part::Read(TokenStreamReader &in, TextureIndex &tex_index, const ShapeRegistry &shapes) {
+void Part::Read(TokenStreamReader &in, ResourceIndex &tex_index, const ShapeRegistry &shapes) {
std::string name;
std::string shape_name;
std::string tex_name;