It may be late, but it is never absent. GDMP v0.4, now available on Godot 4!
With Godot 4 major release, and GDNative superseded by GDExtension, GDMP has also completed the porting process to GDExtension. From now on, the master
branch will track the development of GDMP for Godot 4.x, while 3.x
branch keeps the original GDNative version, receiving feature backports where applicable. This release also completes most MediaPipe vision tasks that replace legacy pbtxt-based solutions.
What's changed in this release
General
- godot-cpp update to v4.2.2
- MediaPipe update to v0.10.13
- Setup process is now more streamlined (Thank @you-win for helping on windows-specific parts)
build.py
is now more configurable.- CI build workflow is created to help delivering pre-built libraries and testing more rapidly (Thank @Malcolmnixon for initial bringing up)
MediaPipeCameraHelper::set_graph
is removed, instead aMediaPipeImage
object is generated for each camera frame, connectnew_frame
signal to receive camera frames instead.- GDMP now register a custom resource provider to MediaPipe upon library initialization. That means when any calculators calling
mediapipe::GetResourceContents
to load resource such as models or assets, Godot's filesystem will be searched first, then fallback to platform-specific methods.
New classes
- The following vision tasks have been added:
MediaPipeFaceDetector
MediaPipeFaceLandmarker
MediaPipeGestureRecognizer
MediaPipeHandLandmarker
MediaPipeImageClassifier
MediaPipeImageEmbedder
MediaPipeImageSegmenter
MediaPipeObjectDetector
MediaPipePoseLandmarker
- MediaPipeImage: an intermediate class between godot::Image and mediapipe::Image (which wraps ImageFrame and GpuBuffer), and is used in vision tasks primarily.
- MediaPipeProto: The number of proto classes to keep up with is too damn high! Therefore we introduced one class to rule them all, and should (probably) works for most cases.
Android
- Dependencies updated to match Godot v4.2.2
- GDMP for Android are now bundled as a Android Archive (aar) with native libraries.
iOS
- Building instruction for iOS have been updated, removing deprecated Tulsi method.
Linux
- Add script to enable Flatpak environment.
Misc
Full Changelog: v0.3...v0.4