Unity 3D
Tool & Systems Developer
Runtime Asset Ingestion, Dynamic Rigging, Asynchronous Networking, & Animation Retargeting
This research project demonstrates a zero-setup, runtime asset ingestion pipeline for multiplayer games in Unity. It allows players to select custom character models (.fbx) from a server database or upload their own via an in-game file browser—without requiring pre-baking or Unity Editor setup.
When a player joins a match with a model that other clients do not possess, the network architecture asynchronously downloads, processes, rigs, and applies animation retargeting to the new character in real time. To prevent gameplay hitches or invisible entities during network sync and runtime instantiation, a lightweight placeholder loading skin renders temporarily and swaps seamlessly once the custom model is rigged and animated.
Zero-Editor Ingestion: Bypasses traditional Unity Prefab compilation by parsing and instantiating raw mesh and texture data directly during runtime.
Asynchronous Multi-Threaded Pipeline: Offloads file downloading, texture decoding, and mesh processing from the main thread to prevent frame drops and keep gameplay smooth.
Fallback & Dynamic Swap System: Instantiates a low-overhead placeholder skin immediately upon player spawn, which seamlessly hot-swaps to the fully rigged custom avatar once processing finishes.
On-the-Fly Material & Shader Conversion: Automates texture mapping and assigns network-ready shaders to raw .fbx materials upon import.
Dynamic Humanoid Rigging & Retargeting: Generates dynamic Unity Avatar references at runtime, binding generic Mecanim animation controllers to non-standard user models.
Client-Server Storage Sync: Features runtime file uploads to a central server and automated background asset fetching for remote clients.
Asset Selection & Ingestion: Players browse a cloud database or choose a local .fbx asset through an integrated runtime file browser.
Network Propagation: The client uploads the target file to the server. Surrounding clients receive a network payload containing the model's server reference key.
Placeholder Spawning: As remote clients request the asset, the engine immediately spawns a lightweight loading avatar to maintain real-time position sync.
Asynchronous Build Phase:
Download & Parse: Streams the raw asset package off-thread.
Rigging: Reconstructs bone hierarchies and binds mesh skin weights dynamically.
Retargeting: Creates a Unity Humanoid Avatar on the fly and binds the active animator controller.
Runtime Hot-Swap: Replaces the placeholder mesh with the processed model, matching current local transform states and playing animation clips without interruption.