# BiMotion

BiMotion — B-spline Motion for Text-guided Dynamic 3D Character Generation

A lightweight repository containing inference utilities and rendering helpers for generating dynamic 3D character motion driven by text prompts using B-spline trajectory parameterization.

## Contents
- demo_inference_glb.py — inference / demo script (entry point for generating animated GLB)
- utils/ — rendering and diffusion utilities
- models/ — VAE and motion modules
- captions_samples_ObjarverseXL.json — auto-captioning examples (VLM GPT-5)

## Requirements
- Python 3.8+
- PyTorch (compatible CUDA build if using GPU)
- torchdiffeq
- einops, accelerate, numpy, tqdm, etc. (see requirements in project or environment file)
- Blender (for rendering scripts that use bpy)

## Quick start (inference)
1. Install dependencies (example):
   pip install -r requirements.txt
2. Run demo inference:
   python demo_inference_glb.py --prompt "a running character" --output out.glb
3. (Optional) Use Blender scripts in utils/ to render frames or videos from generated GLB.

Adjust command-line options in demo_inference_glb.py for resolution, number of frames, and camera settings.

## Notes
- The repo includes both mesh-motion generation and Blender-based rendering helpers. Rendering requires a Blender Python environment for bpy-dependent scripts.
- Check model checkpoint paths and device settings before running inference.

## Citation
If you use this work, please cite the associated paper.
