Virtual Characters

What it is

This GE consists of an open standard and reference implementation for virtual characters on the Web. Web applications will be able to create, display and animate virtual characters. The characters can be composed of multiple mesh parts, to eg. allow easily swappable parts like upper or lower bodies, and attached objects such as clothing. The virtual character functionality is implemented as a JavaScript library, and is part of the WebTundra codebase, which also contains the 3D-UI and Synchronization (client part) GE's. The 3D-UI GE (which in turn uses the WebGL API through the three.js rendering library) is utilized for the Entity-Component-Attribute based scene model, the hierarchical transformation graph and implementing the actual rendering: a virtual character becomes part of the scene hierarchy and can be manipulated using the scene model's functions.

Why get it

Using the Virtual Characters GE allows to quickly get into animating 3D characters in a Web Application. By also using the Synchronization GE which is contained in the same codebase, multi-user networked experiences such as virtual worlds can be created.

Avaliable for:


Main Interactions

A character can be instantiated either by creating an Avatar component into an entity in the scene, which refers to a character description file, and automatically instantiates the necessary components, or by manually creating the necessary components (Placeable, Mesh, AnimationController) into an entity in the scene.

Once instantiated, animations specified for the character can be enabled and disabled, and the individual properties of animations can be controlled:

The character's individual bones can also be controlled directly by setting their position, rotation or scale. So that animations and direct control do not conflict, doing this will disable keyframe animation on the bone in question. Animation on a bone can be re-enabled when direct control is no longer necessary.

A simple example of the interaction between the application and the GE is illustrated in the following sequence diagram:


FIWARE Webpage

Virtual Characters


Virtual Characters Documentation


Virtual Characters Download

Fiware Academy

Virtual Characters Courses