载入中...
搜索中...
未找到
MotionTypes.h 文件参考

LitMotion-style typed motion handles, values, and sink interfaces. 更多...

#include "common/Export.h"
#include "common/Result.h"
#include <cstddef>
#include <cstdint>

浏览源代码.

类

struct  eve::animation::MotionHandle
 Generation-checked slot identity for a live motion. 更多...
 
struct  eve::animation::MotionVec2
 Compact float2 used by motion adapters (avoids graphics math deps). 更多...
 
struct  eve::animation::MotionVec3
 Compact float3 used by motion adapters. 更多...
 
struct  eve::animation::MotionColor
 Compact RGBA color used by motion adapters. 更多...
 
struct  eve::animation::MotionQuat
 Compact quaternion used by motion adapters (xyzw). 更多...
 
class  eve::animation::IMotionFloatSink
 Push target for a float motion. Lifetime is borrowed by MotionRuntime. 更多...
 
class  eve::animation::IMotionVec2Sink
 Push target for a MotionVec2 motion. 更多...
 
class  eve::animation::IMotionVec3Sink
 Push target for a MotionVec3 motion. 更多...
 
class  eve::animation::IMotionColorSink
 Push target for a MotionColor motion. 更多...
 
class  eve::animation::IMotionQuatSink
 Push target for a MotionQuat motion. 更多...
 
class  eve::animation::FloatPointerSink
 Sink that writes into a borrowed float*. @ownership Does not own target; caller must keep it alive while bound. 更多...
 
class  eve::animation::FloatBufferSink
 Sink that writes into buffer[index] (batch-friendly contiguous target). @ownership Does not own buffer; caller must keep the span alive while bound. 更多...
 
class  eve::animation::Vec2PointerSink
 Sink that writes into borrowed float x/y pointers. @ownership Does not own the pointers; caller must keep them alive while bound. 更多...
 
class  eve::animation::Vec3PointerSink
 Sink that writes into borrowed float x/y/z pointers. @ownership Does not own the pointers; caller must keep them alive while bound. 更多...
 
class  eve::animation::ColorPointerSink
 Sink that writes into borrowed RGBA float pointers. @ownership Does not own the pointers; caller must keep them alive while bound. 更多...
 
class  eve::animation::QuatPointerSink
 Sink that writes into borrowed quaternion xyzw float pointers. @ownership Does not own the pointers; caller must keep them alive while bound. 更多...
 

命名空间

namespace  eve
 Build metadata (engine git commit, build time, third-party version).
 
namespace  eve::animation
 

枚举

enum class  eve::animation::MotionLoopMode : std::uint8_t { eve::animation::Restart = 0 , eve::animation::Yoyo = 1 }
 Loop behaviour after a cycle completes. 更多...
 
enum class  eve::animation::MotionStyle : std::uint8_t { eve::animation::Tween = 0 , eve::animation::Punch = 1 , eve::animation::Shake = 2 }
 Evaluation style for a motion slot. 更多...
 

函数

float eve::animation::evaluateMotionEase (float t, const char *kind)
 Evaluate an ease curve; kinds match Math.ease / Tween.
 
float eve::animation::evaluateMotionOscillation (float t, int frequency, float dampingRatio)
 LitMotion-style damped sine envelope in [0,1] progress.
 
float eve::animation::evaluateMotionShakeSign (std::uint32_t seed, int frequency, float t, int axis)
 Deterministic shake sign in [-1,1] for axis (0..n).
 
MotionColor eve::animation::lerpMotionColor (MotionColor a, MotionColor b, float t)
 Component-wise lerp for MotionColor.
 
MotionQuat eve::animation::slerpMotionQuat (MotionQuat a, MotionQuat b, float t)
 Spherical linear interpolation for MotionQuat (shortest path).
 

详细描述

LitMotion-style typed motion handles, values, and sink interfaces.

Cross-module write-back goes through sink interfaces (not upward includes). Upper modules implement sinks and pass them into MotionBuilder::bind*.

在文件 MotionTypes.h 中定义.