2025-11-09 17:22:44 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "scene/animation/animation_blend_tree.h"
|
|
|
|
|
#include "scene/animation/animation_tree.h"
|
|
|
|
|
|
2025-11-16 21:06:39 +01:00
|
|
|
class SyncedAnimationGraph : public Node {
|
|
|
|
|
GDCLASS(SyncedAnimationGraph, Node);
|
2025-11-09 17:22:44 +01:00
|
|
|
|
|
|
|
|
private:
|
2025-11-16 21:06:39 +01:00
|
|
|
NodePath animation_tree;
|
|
|
|
|
bool processing = false;
|
2025-11-09 17:22:44 +01:00
|
|
|
|
2025-11-16 21:06:39 +01:00
|
|
|
void set_animation_tree(const NodePath &p_path);
|
|
|
|
|
NodePath get_animation_tree() const;
|
2025-11-09 17:22:44 +01:00
|
|
|
|
|
|
|
|
protected:
|
2025-11-16 21:06:39 +01:00
|
|
|
void _notification(int p_what);
|
2025-11-09 17:22:44 +01:00
|
|
|
static void _bind_methods();
|
|
|
|
|
|
|
|
|
|
public:
|
2025-11-16 21:06:39 +01:00
|
|
|
void _ready(const NodePath &p_path);
|
|
|
|
|
void _process_animation(double p_delta, bool p_update_only = false);
|
2025-11-09 17:22:44 +01:00
|
|
|
|
|
|
|
|
SyncedAnimationGraph();
|
2025-11-16 21:06:39 +01:00
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
void _set_process(bool p_process, bool p_force = false);
|
2025-11-09 17:22:44 +01:00
|
|
|
};
|