载入中...
搜索中...
未找到
AnimClipBinary.h
浏览该文件的文档.
1#pragma once
2
3#include <cstddef>
4#include <functional>
5#include <span>
6#include "common/Export.h"
7#include "common/Result.h"
8
9namespace eve::animation {
10class AnimClip;
11class AnimSkeleton;
21[[nodiscard]] EVENGINE_API_WORLD eve::Result<void> loadAnimationTracks(AnimClip& destination,
22 std::span<const std::byte> bytes,
23 const AnimSkeleton& skeleton);
24
27 std::reference_wrapper<AnimClip> destination;
28 std::span<const std::byte> bytes;
29};
39[[nodiscard]] EVENGINE_API_WORLD eve::Result<int> loadAnimationTrackBatch(std::span<const AnimationTrackInput> inputs,
40 const AnimSkeleton& skeleton,
41 int workerCount = 0);
42} // namespace eve::animation
#define EVENGINE_API_WORLD
Definition Export.h:109
int inputs
Definition GridGraph.cpp:23
std::uint64_t bytes
Move-only, checked operation results for the common layer.
Move-only operation result carrying either a value or Status.
Definition Result.h:155
3D bone hierarchy + bind-pose local TRS for skeletal animation. Independent of ik::Skeleton3D (FABRIK...
eve::Result< int > loadAnimationTrackBatch(std::span< const AnimationTrackInput > inputs, const AnimSkeleton &skeleton, int workerCount)
Decode independent clips in parallel, then publish all or none in input order.
eve::Result< void > loadAnimationTracks(AnimClip &destination, std::span< const std::byte > bytes, const AnimSkeleton &skeleton)
Atomically replace a clip from the little-endian eve.animation-tracks/1 format (EVAC,...
One synchronous borrowed batch input; destination and bytes must outlive the call.
std::reference_wrapper< AnimClip > destination
std::span< const std::byte > bytes