How steinann/roavatar-renderer works
RoAvatar Renderer is a TypeScript library for turning Roblox avatar data into animated, customizable 3D scenes and thumbnails. The documented user workflow configures renderer flags, initializes the renderer, fetches an avatar model through the API, and passes it to OutfitRenderer for animation and display. The graph also preserves Roblox model parsing, asset and outfit preparation, mesh deformation, scene rendering, and thumbnail generation as distinct capabilities. Some subsystem links are based on the README and module boundaries; unsampled implementation details are not assumed.
Main entry points: outfit.ts Outfit Data · renderer.ts Renderer Setup · HumanoidDescription.ts Humanoid Description · outfitRenderer.ts Outfit Renderer
Components 23
Public Setup
- Runtime Flags
src/code/misc/flags.ts - Renderer Setup
src/code/render/renderer.ts
Avatar Data
- Avatar API
src/code/api.ts - Outfit Model
src/code/avatar/outfitModel.ts - Outfit Data
src/code/avatar/outfit.ts - Avatar Assets
src/code/avatar/asset.ts
Roblox Model
- RBX Parsing
src/code/rblx/rbx.ts - RoAvatar Data
src/code/rblx/roavatar-data-parser.ts - Humanoid Description
src/code/rblx/instance/HumanoidDescription.ts - Instance Wrappers
src/code/rblx/instance/InstanceWrapper.ts - Mesh Deformation
src/code/mesh/mesh-deform.ts - Worker Pool
src/code/misc/worker-pool.ts
Rendering
- Outfit Renderer
src/code/render/outfitRenderer.ts - Renderer Scene
src/code/render/rendererScene.ts - Render Descriptions
src/code/render/renderDesc.ts - Texture Manager
src/code/render/textureManager.ts - Three.js Renderer
src/code/render/renderer.ts
Thumbnails
- Thumbnail Generator
src/code/thumbnails/generator.ts - Thumbnail Scene
src/code/thumbnails/thumbnailScene.ts - Camera Presets
src/code/thumbnails/cameraPresetsUtility.ts
Other components
- Application
- Asset Service
- Generic API
Connections 24
- Application → Runtime Flags: configures
- Application → Renderer Setup: initializes
- Renderer Setup → Runtime Flags: reads settings
- Application → Avatar API: requests avatar
- Avatar API → Outfit Model: returns model
- Application → Outfit Renderer: creates renderer
- Outfit Renderer → Outfit Model: renders model
- Outfit Model → Outfit Data: holds outfit
- Outfit Data → Avatar Assets: contains assets
- Avatar Assets → Asset Service: loads assets
- Outfit Data → Humanoid Description: converts outfit
- RBX Parsing → Instance Wrappers: uses wrappers
- RoAvatar Data → RBX Parsing: parses instances
- Humanoid Description → Outfit Data: reads outfit data
- Humanoid Description → RBX Parsing: builds instances
- Mesh Deformation → Worker Pool: dispatches work
- Outfit Renderer → Renderer Scene: renders into
- Renderer Scene → Render Descriptions: uses descriptions
- Render Descriptions → Texture Manager: loads textures
- Texture Manager → Generic API: loads images
- Renderer Setup → Three.js Renderer: sets up
- Thumbnail Generator → Thumbnail Scene: creates scene
- Thumbnail Generator → Camera Presets: sets camera
- Camera Presets → Thumbnail Scene: frames avatar