Skip to content

Commit 51b623f

Browse files
API Refactoring
1 parent cef2f5d commit 51b623f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+873
-405
lines changed

README.md

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,18 @@
22

33
![](https://github.com/GuilhermeGSousa/godot-motion-matching/blob/master/motion_matching_demo.gif)
44

5-
A very simple motion matching implementation example in Godot 4.3, that allows for both strafe and non strafe movement, implemented following [Dan Holden's article](https://www.theorangeduck.com/page/code-vs-data-driven-displacement).
5+
A motion matching implementation in Godot 4.3, implemented following [Dan Holden's article](https://www.theorangeduck.com/page/code-vs-data-driven-displacement).
66

7-
### Implementation
8-
- `MMAnimationLibrary`: a **Resource** that holds not only a list of animations, but also all the extracted features data for every frame, as well as their statistics data.
9-
- `MMFeature`: an **Resource** that describes data used to match movement to a specific animation frame. You can find implementation examples `src/features`.
10-
- `MMAnimationPlayer`: an animation player that supports inertialization to transition between animations. Its it also used to make queries to a `MMAnimationLibrary`.
11-
- `MMController`: A simple 3rd person controller, that also generates trajectories used for motion matching queries.
12-
- `MotionMatcher`: Coordinates fetching query information from `MMController` and transitioning to the resulting animation.
7+
### Wiki
8+
[You can find this repo's wiki here!](https://github.com/GuilhermeGSousa/godot-motion-matching/wiki)
139

14-
15-
### Todo
16-
- Implement better debugging tools
17-
- Use a KD Tree to accelerate queries
18-
- Finish implementing `MMBoneDataFeature`
19-
- Get more complete animation data
20-
- Support jumping, crouching, and parkour movements
10+
### Features
11+
You'll find on this repo:
12+
- A plugin that allow you to run motion matching queries on an animation dataset!
13+
- A `CharacterBody3D` implementing a simple movement logic.
14+
- Trajectory generation, including collisions and environmental checks.
15+
- An editor to bake and visualize motion matching features.
16+
- Blending nodes to qllow you to smoothly transition when switching animations.
2117

2218
### Credits
2319

SConstruct

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ env = SConscript("godot-cpp/SConstruct")
1515
# tweak this if you want to use different folders, or more folders, to store your source code in.
1616
env.Append(CPPPATH=["src/"])
1717
sources = Glob("src/*.cpp")
18+
sources += Glob("src/editor/*.cpp")
1819
sources += Glob("src/features/*.cpp")
1920
sources += Glob("src/math/*.cpp")
21+
sources += Glob("src/synchronizers/*.cpp")
2022

2123
if env["platform"] == "macos":
2224
library = env.SharedLibrary(

addons/motion_matching/MMAnimationLibraryEditor.gd

Lines changed: 0 additions & 11 deletions
This file was deleted.

addons/motion_matching/MMAnimationLibraryEditor.tscn

Lines changed: 0 additions & 23 deletions
This file was deleted.

addons/motion_matching/MMPlugin.gd

Lines changed: 0 additions & 41 deletions
This file was deleted.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)