34 void reset(std::uint64_t
tick = 0)
noexcept;
42 std::uint64_t
tick, std::uint64_t duration)
noexcept;
53 {
return move_.start; }
59 {
return move_.active && move_.interruptible && move_.bezierPosition; }
67 std::uint64_t startTick{};
68 std::uint64_t endTick{};
72 bool bezierPosition{};
73 std::array<float, 3> control1{};
74 std::array<float, 3> control2{};
77 void startMove(
const engine::World3DCamera&
target,
78 std::uint64_t
tick,
bool instant,
bool linear =
false,
80 static engine::World3DCamera sample(
const Move& move,
81 std::uint64_t
tick)
noexcept;
84 std::optional<engine::World3DCamera> waiting_;
85 engine::World3DCamera current_{};
86 bool manualMouseActive_{};
87 bool manualPresetRequested_{};
void reset(std::uint64_t tick=0) noexcept
Update tick(std::uint64_t tick) noexcept
const engine::World3DCamera & endCamera() const noexcept
void requestFloatingIdle(std::uint64_t tick, const std::array< float, 3 > &previousVariation, const std::array< float, 3 > &nextVariation) noexcept
void requestPreset(pieces::BoardCameraView view, std::uint64_t tick, bool forceInterrupt=false, bool manualRequest=false) noexcept
const engine::World3DCamera & startCamera() const noexcept
bool waiting() const noexcept
bool moving() const noexcept
const engine::World3DCamera & current() const noexcept
bool floating() const noexcept
bool manualMouseActive() const noexcept
bool requestManualMouseMove(std::int32_t deltaX, std::int32_t deltaY, bool verticalOrbit, std::uint64_t tick) noexcept
void releaseManualMouse() noexcept
void requestDemoPreset(pieces::BoardCameraView view, std::uint64_t tick, std::uint64_t duration) noexcept
void requestDiceMove(std::uint64_t tick, std::uint8_t randomFourteen) noexcept
bool isPresentationSquareDefault(const display::State &state) noexcept
constexpr std::uint64_t BaseMoveTicks
const engine::World3DCamera & preset(pieces::BoardCameraView view) noexcept
bool isPresentationDefault(const display::State &state) noexcept
engine::World3DCamera camera