| .. | ||
| config.py | ||
| kinect_bridge.cpp | ||
| kinect_bridge.h | ||
| kinect_gesture_detector.cpp | ||
| kinect_gesture_detector.h | ||
| kinect_skeleton.cpp | ||
| kinect_skeleton.h | ||
| README.md | ||
| register_types.cpp | ||
| register_types.h | ||
| SCsub | ||
AeThex Kinect Module
Native AeThex Engine module for Kinect skeleton tracking and gesture detection.
Features
- KinectBridge: Main node that receives OSC data from Python bridge
- KinectSkeleton: 20-joint skeleton data with tracking states
- KinectGestureDetector: Detects arms raised, push, swipe gestures
Setup
1. Build AeThex Engine with this module
cd engine
scons platform=windows target=editor
The module is automatically included via the modules system.
2. Run the Python Kinect Bridge
cd c:\Dev\aethex-kinect-bridge\python_bridge
py kinect_bridge.py --simulate # Without hardware
py kinect_bridge.py # With Kinect v1
3. Create a scene with KinectBridge
extends Node3D
var kinect: KinectBridge
func _ready():
kinect = KinectBridge.new()
add_child(kinect)
kinect.skeleton_detected.connect(_on_skeleton_detected)
kinect.gesture_received.connect(_on_gesture)
kinect.identity_forged.connect(_on_identity_forged)
kinect.set_mode(KinectBridge.MODE_FOUNDRY)
kinect.start(9000)
func _on_skeleton_detected(detected: bool):
print("Skeleton: ", "DETECTED" if detected else "LOST")
func _on_gesture(type: String, params: Dictionary):
print("Gesture: %s %s" % [type, params])
func _on_identity_forged(signature: Dictionary):
print("🔥 FORGED: ", signature)
API Reference
KinectBridge
| Method | Description |
|---|---|
start(port: int) |
Start listening for OSC on port (default 9000) |
stop() |
Stop the bridge |
set_mode(mode) |
MODE_FOUNDRY or MODE_GAMEFORGE |
get_skeleton() |
Returns KinectSkeleton |
get_joint_position(id) |
Get Vector3 position of joint |
Signals
| Signal | Parameters | Description |
|---|---|---|
skeleton_detected |
detected: bool |
Skeleton tracking state changed |
joint_updated |
id, pos, state |
Joint position updated |
gesture_received |
type, params |
Gesture detected |
identity_forged |
signature |
Foundry identity forged |
forge_progress |
progress: float |
Arms raised progress (0-1) |
KinectSkeleton.JointID
JOINT_HIP_CENTER = 0
JOINT_SPINE = 1
JOINT_SHOULDER_CENTER = 2
JOINT_HEAD = 3
JOINT_SHOULDER_LEFT = 4
JOINT_ELBOW_LEFT = 5
JOINT_WRIST_LEFT = 6
JOINT_HAND_LEFT = 7
JOINT_SHOULDER_RIGHT = 8
JOINT_ELBOW_RIGHT = 9
JOINT_WRIST_RIGHT = 10
JOINT_HAND_RIGHT = 11
JOINT_HIP_LEFT = 12
JOINT_KNEE_LEFT = 13
JOINT_ANKLE_LEFT = 14
JOINT_FOOT_LEFT = 15
JOINT_HIP_RIGHT = 16
JOINT_KNEE_RIGHT = 17
JOINT_ANKLE_RIGHT = 18
JOINT_FOOT_RIGHT = 19
Foundry Onboarding
The Foundry mode generates unique identity signatures based on:
- Movement patterns during onboarding
- Hand positions at forge moment
- Variance and rhythm of movement
Identity data includes:
seed: Deterministic seed for generative visualscolor_hue: Base color (0-1)particle_density: Density modifiermovement_signature: Motion characteristic
GameForge Spatial IDE
In GameForge mode, gestures map to code navigation:
| Gesture | Action |
|---|---|
| Push (forward) | Drill into code/function |
| Swipe left/right | Close tab / navigate |
| Swipe up/down | Scroll through code |
| Both arms raised | Run code |