const Chunk::Pos ChunkCoords() const noexcept { return chunk; }
+ glm::vec3 AbsolutePosition() const noexcept {
+ return glm::vec3(chunk * Chunk::Extent()) + position;
+ }
+
const glm::quat &AngularVelocity() const noexcept { return angular_velocity; }
void AngularVelocity(const glm::quat &) noexcept;
glm::mat4 Transform(const Chunk::Pos &chunk_offset) const noexcept;
Ray Aim(const Chunk::Pos &chunk_offset) const noexcept;
+ void Remove() noexcept { remove = true; }
+ bool CanRemove() const noexcept { return remove; }
+
void Update(int dt) noexcept;
void Draw() noexcept;
glm::mat4 rotation;
bool world_collision;
+ bool remove;
};