2#ifndef LIBSBX_ANIMATIONS_ANIMATION_HPP_
3#define LIBSBX_ANIMATIONS_ANIMATION_HPP_
9#include <libsbx/utility/hashed_string.hpp>
11#include <libsbx/math/vector3.hpp>
12#include <libsbx/math/quaternion.hpp>
13#include <libsbx/math/uuid.hpp>
17namespace sbx::animations {
29 animation(
const std::filesystem::path& path,
const std::string& name);
31 auto track_map() const noexcept -> const std::unordered_map<utility::hashed_string,
bone_track>&;
33 auto duration() const noexcept -> std::float_t;
38 std::float_t _duration = 0.0f;
39 std::float_t _ticks_per_second = 25.0f;
41 std::unordered_map<utility::hashed_string,
bone_track> _track_map;
53 constexpr auto is_valid()
const noexcept ->
bool {
54 return (*
this) != math::uuid::nil();
57 constexpr auto operator==(
const animation_handle& other)
const noexcept ->
bool =
default;
Definition: animation.hpp:19
Time-ordered spline for interpolated animation values.
Definition: spline.hpp:65
Generic time-based spline container for animation sampling.
Definition: animation.hpp:23
Definition: animation.hpp:45