Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-restructure #79

Merged
merged 3 commits into from
Feb 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions assets/animation_graphs/custom_node_example.animgraph.ron
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,17 @@
nodes: [
(
name: "Custom node",
ty: "editor_as_a_plugin::MyCustomNode",
inner: (),
inner: {
"editor_as_a_plugin::MyCustomNode": (),
},
),
(
name: "Human animation",
ty: "bevy_animation_graph::nodes::graph_node::GraphNode",
inner: (
graph: "animation_graphs/human_new.animgraph.ron",
),
inner: {
"bevy_animation_graph::nodes::graph_node::GraphNode": (
graph: "animation_graphs/human_new.animgraph.ron",
),
},
),
],
edges_inverted: {
Expand Down Expand Up @@ -39,4 +41,4 @@
},
output_pose_order: {},
),
)
)
26 changes: 14 additions & 12 deletions assets/animation_graphs/human_ik.animgraph.ron
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,32 @@
nodes: [
(
name: "base anim",
ty: "bevy_animation_graph::nodes::graph_node::GraphNode",
inner: (
graph: "animation_graphs/human_new.animgraph.ron",
)
inner: {
"bevy_animation_graph::nodes::graph_node::GraphNode": (
graph: "animation_graphs/human_new.animgraph.ron",
)
}
),
(
name: "arm ik",
ty: "bevy_animation_graph::nodes::twoboneik_node::TwoBoneIKNode",
inner: (),
inner: {
"bevy_animation_graph::nodes::twoboneik_node::TwoBoneIKNode": ()
}
),
],
edges_inverted: {
NodeData("arm ik", "Target Path"): InputData("right hand path"),
NodeData("base anim", "Target Speed"): InputData("Target Speed"),
NodeData("arm ik", "target_path"): InputData("right hand path"),
NodeData("base anim", "target_speed"): InputData("target_speed"),
OutputTime: NodeTime("arm ik"),
NodeData("base anim", "Target Direction"): InputData("Target Direction"),
NodeData("base anim", "target_direction"): InputData("target_direction"),
OutputData("pose"): NodeData("arm ik", "pose"),
NodeData("arm ik", "pose"): NodeData("base anim", "pose"),
NodeData("arm ik", "Target Position"): InputData("target hand pos"),
NodeData("arm ik", "target_position"): InputData("target hand pos"),
NodeTime("arm ik", "time"): NodeTime("base anim"),
},
default_parameters: {
"Target Speed": F32(1.0),
"Target Direction": Vec3((1.0, 0.0, 0.0)),
"target_speed": F32(1.0),
"target_direction": Vec3((1.0, 0.0, 0.0)),
"right hand path": EntityPath([
"metarig",
"spine",
Expand Down
242 changes: 130 additions & 112 deletions assets/animation_graphs/human_new.animgraph.ron
Original file line number Diff line number Diff line change
Expand Up @@ -2,190 +2,208 @@
nodes: [
(
name: "speed",
ty: "bevy_animation_graph::nodes::speed_node::SpeedNode",
inner: (),
inner: {
"bevy_animation_graph::nodes::speed_node::SpeedNode": (),
},
),
(
name: "walk clip 1",
ty: "bevy_animation_graph::nodes::clip_node::ClipNode",
inner: (
clip: "animations/human_walk.anim.ron",
),
inner: {
"bevy_animation_graph::nodes::clip_node::ClipNode": (
clip: "animations/human_walk.anim.ron",
),
},
),
(
name: "Rotate",
ty: "bevy_animation_graph::nodes::rotation_node::RotationNode",
inner: (
application_mode: Compose,
rotation_space: Character,
chain_decay: Linear,
chain_length: 1,
base_weight: 1.0,
),
inner: {
"bevy_animation_graph::nodes::rotation_node::RotationNode": (
application_mode: Compose,
rotation_space: Character,
chain_decay: Linear,
chain_length: 1,
base_weight: 1.0,
),
},
),
(
name: "flip walk",
ty: "bevy_animation_graph::nodes::flip_lr_node::FlipLRNode",
inner: (
config: (
name_mapper: Pattern((
key_1: "L",
key_2: "R",
pattern_before: "^.*",
pattern_after: "$",
)),
inner: {
"bevy_animation_graph::nodes::flip_lr_node::FlipLRNode": (
config: (
name_mapper: Pattern((
key_1: "L",
key_2: "R",
pattern_before: "^.*",
pattern_after: "$",
)),
),
),
),
},
),
(
name: "wave additive",
ty: "bevy_animation_graph::nodes::blend_node::BlendNode",
inner: (
mode: Additive,
),
inner: {
"bevy_animation_graph::nodes::blend_node::BlendNode": (
mode: Additive,
),
},
),
(
name: "flip run",
ty: "bevy_animation_graph::nodes::flip_lr_node::FlipLRNode",
inner: (
config: (
name_mapper: Pattern((
key_1: "L",
key_2: "R",
pattern_before: "^.*",
pattern_after: "$",
)),
inner: {
"bevy_animation_graph::nodes::flip_lr_node::FlipLRNode": (
config: (
name_mapper: Pattern((
key_1: "L",
key_2: "R",
pattern_before: "^.*",
pattern_after: "$",
)),
),
),
),
},
),
(
name: "run clip 2",
ty: "bevy_animation_graph::nodes::clip_node::ClipNode",
inner: (
clip: "animations/human_run.anim.ron",
),
inner: {
"bevy_animation_graph::nodes::clip_node::ClipNode": (
clip: "animations/human_run.anim.ron",
),
},
),
(
name: "blend",
ty: "bevy_animation_graph::nodes::blend_node::BlendNode",
inner: (
mode: LinearInterpolate,
),
inner: {
"bevy_animation_graph::nodes::blend_node::BlendNode": (
mode: LinearInterpolate,
),
},
),
(
name: "loop",
ty: "bevy_animation_graph::nodes::loop_node::LoopNode",
inner: (
interpolation_period: 0.5,
),
inner: {
"bevy_animation_graph::nodes::loop_node::LoopNode": (
interpolation_period: 0.5,
),
},
),
(
name: "stand",
ty: "bevy_animation_graph::nodes::clip_node::ClipNode",
inner: (
clip: "animations/human_stand.anim.ron",
),
inner: {
"bevy_animation_graph::nodes::clip_node::ClipNode": (
clip: "animations/human_stand.anim.ron",
),
},
),
(
name: "chain walk",
ty: "bevy_animation_graph::nodes::chain_node::ChainNode",
inner: (
interpolation_period: 0.5,
),
inner: {
"bevy_animation_graph::nodes::chain_node::ChainNode": (
interpolation_period: 0.5,
),
},
),
(
name: "Parameters",
ty: "bevy_animation_graph::nodes::graph_node::GraphNode",
inner: (
graph: "animation_graphs/velocity_to_params.animgraph.ron",
),
inner: {
"bevy_animation_graph::nodes::graph_node::GraphNode": (
graph: "animation_graphs/velocity_to_params.animgraph.ron",
),
},
),
(
name: "chain run",
ty: "bevy_animation_graph::nodes::chain_node::ChainNode",
inner: (
interpolation_period: 0.5,
),
inner: {
"bevy_animation_graph::nodes::chain_node::ChainNode": (
interpolation_period: 0.5,
),
},
),
(
name: "run clip 1",
ty: "bevy_animation_graph::nodes::clip_node::ClipNode",
inner: (
clip: "animations/human_run.anim.ron",
),
inner: {
"bevy_animation_graph::nodes::clip_node::ClipNode": (
clip: "animations/human_run.anim.ron",
),
},
),
(
name: "wave diff",
ty: "bevy_animation_graph::nodes::blend_node::BlendNode",
inner: (
mode: Difference,
),
inner: {
"bevy_animation_graph::nodes::blend_node::BlendNode": (
mode: Difference,
),
},
),
(
name: "wave",
ty: "bevy_animation_graph::nodes::clip_node::ClipNode",
inner: (
clip: "animations/human_wave.anim.ron",
),
inner: {
"bevy_animation_graph::nodes::clip_node::ClipNode": (
clip: "animations/human_wave.anim.ron",
),
},
),
(
name: "walk clip 2",
ty: "bevy_animation_graph::nodes::clip_node::ClipNode",
inner: (
clip: "animations/human_walk.anim.ron",
),
inner: {
"bevy_animation_graph::nodes::clip_node::ClipNode": (
clip: "animations/human_walk.anim.ron",
),
},
),
(
name: "Make Rotation",
ty: "bevy_animation_graph::nodes::arithmetic::vec3::rotation_arc::RotationArcNode",
inner: (),
inner: {
"bevy_animation_graph::nodes::arithmetic::vec3::rotation_arc::RotationArcNode": (),
},
),
],
edges_inverted: {
NodeData("Rotate", "Bone Mask"): InputData("rotation_bone"),
NodeData("Rotate", "bone_mask"): InputData("rotation_bone"),
NodeTime("speed", "time"): NodeTime("loop"),
NodeData("Make Rotation", "Vec3 In 2"): InputData("Target Direction"),
NodeData("Make Rotation", "in_b"): InputData("target_direction"),
OutputData("pose"): NodeData("Rotate", "pose"),
NodeTime("chain run", "time B"): NodeTime("flip run"),
NodeData("chain walk", "pose B"): NodeData("flip walk", "pose"),
NodeTime("blend", "time A"): NodeTime("chain walk"),
NodeData("chain walk", "pose A"): NodeData("walk clip 1", "pose"),
NodeTime("chain run", "time_b"): NodeTime("flip run"),
NodeData("chain walk", "pose_b"): NodeData("flip walk", "pose"),
NodeTime("blend", "time_a"): NodeTime("chain walk"),
NodeData("chain walk", "pose_a"): NodeData("walk clip 1", "pose"),
NodeData("blend", "factor"): NodeData("Parameters", "blend_fac"),
NodeData("Parameters", "speed"): InputData("Target Speed"),
NodeData("blend", "pose A"): NodeData("chain walk", "pose"),
NodeTime("wave additive", "time A"): NodeTime("speed"),
NodeData("Parameters", "speed"): InputData("target_speed"),
NodeData("blend", "pose_a"): NodeData("chain walk", "pose"),
NodeTime("wave additive", "time_a"): NodeTime("speed"),
OutputTime: NodeTime("Rotate"),
NodeData("wave additive", "pose A"): NodeData("speed", "pose"),
NodeData("wave diff", "pose B"): NodeData("wave", "pose"),
NodeData("wave additive", "pose_a"): NodeData("speed", "pose"),
NodeData("wave diff", "pose_b"): NodeData("wave", "pose"),
NodeData("flip run", "pose"): NodeData("run clip 2", "pose"),
NodeData("blend", "pose B"): NodeData("chain run", "pose"),
NodeData("speed", "Speed"): NodeData("Parameters", "speed_fac"),
NodeData("wave additive", "pose B"): NodeData("wave diff", "pose"),
NodeTime("wave diff", "time A"): NodeTime("stand"),
NodeTime("wave diff", "time B"): NodeTime("wave"),
NodeTime("chain walk", "time B"): NodeTime("flip walk"),
NodeData("wave diff", "pose A"): NodeData("stand", "pose"),
NodeTime("wave additive", "time B"): NodeTime("wave diff"),
NodeTime("chain walk", "time A"): NodeTime("walk clip 1"),
NodeData("Rotate", "Rotation"): NodeData("Make Rotation", "Quat Out"),
NodeData("blend", "pose_b"): NodeData("chain run", "pose"),
NodeData("speed", "speed"): NodeData("Parameters", "speed_fac"),
NodeData("wave additive", "pose_b"): NodeData("wave diff", "pose"),
NodeTime("wave diff", "time_a"): NodeTime("stand"),
NodeTime("wave diff", "time_b"): NodeTime("wave"),
NodeTime("chain walk", "time_b"): NodeTime("flip walk"),
NodeData("wave diff", "pose_a"): NodeData("stand", "pose"),
NodeTime("wave additive", "time_b"): NodeTime("wave diff"),
NodeTime("chain walk", "time_a"): NodeTime("walk clip 1"),
NodeData("Rotate", "rotation"): NodeData("Make Rotation", "out"),
NodeTime("loop", "time"): NodeTime("blend"),
NodeData("chain run", "pose B"): NodeData("flip run", "pose"),
NodeTime("blend", "time B"): NodeTime("chain run"),
NodeData("chain run", "pose_b"): NodeData("flip run", "pose"),
NodeTime("blend", "time_b"): NodeTime("chain run"),
NodeData("loop", "pose"): NodeData("blend", "pose"),
NodeTime("Rotate", "time"): NodeTime("wave additive"),
NodeData("wave additive", "factor"): InputData("1"),
NodeTime("chain run", "time A"): NodeTime("run clip 1"),
NodeTime("chain run", "time_a"): NodeTime("run clip 1"),
NodeData("flip walk", "pose"): NodeData("walk clip 2", "pose"),
NodeTime("flip walk", "time"): NodeTime("walk clip 2"),
NodeData("Rotate", "pose"): NodeData("wave additive", "pose"),
NodeData("speed", "pose"): NodeData("loop", "pose"),
NodeData("Make Rotation", "Vec3 In 1"): InputData("Z"),
NodeData("Make Rotation", "in_a"): InputData("Z"),
NodeTime("flip run", "time"): NodeTime("run clip 2"),
NodeData("chain run", "pose A"): NodeData("run clip 1", "pose"),
NodeData("chain run", "pose_a"): NodeData("run clip 1", "pose"),
},
default_parameters: {
"Target Speed": F32(1.6),
"Target Direction": Vec3((1.0, 0.0, 0.0)),
"target_speed": F32(1.6),
"target_direction": Vec3((1.0, 0.0, 0.0)),
"rotation_bone": EntityPath([
"metarig",
"spine",
Expand Down
Loading