Livrés :
Annoncés :
Non maintenus :
L'architecture de composants UObject, actuellement basée sur la bibliothèque C++ UObject, permet d'interfacer n'importe quel objet C++ avec Urbi/urbiscript, rendant les méthodes et les attributs sélectionnés du code C++ visibles directement depuis le langage de script. Des indicateurs peuvent être positionnés pour permettre de prévenir le composant C++ de tout changement effectué sur les attributs de l'objet par le langage urbiscript.
Un objet C++ (UObject) peut être utilisé localement, soit en le liant statiquement lors de la compilation, soit par chargement dynamique ultérieur. L'objet C++ partage alors directement la mémoire du noyau Urbi, permettant une intégration efficace. Il s'agit d'une utilisation typique pour les composants critiques tels que les drivers de moteurs ou de capteurs. Ce même objet C++ peut également être utilisé sans modifications en tant que composant distant. Dans ce cas, il devient un programme autonome qui est exécuté avec comme paramètre l'adresse IP du moteur Urbi. Dans les deux cas, l'objet apparaitra et sera traité dans Urbi comme s'il était un objet natif.
Les composants développés par la communauté peuvent être trouvés et échangés sur le site web communautaire Urbiforge.
Urbi permet d'utiliser Gostai Studio qui intègre un éditeur de comportements pour créer graphiquement des machines à état fini hiérarchiques. Gostai Lab est une autre application permettant de réaliser rapidement des interfaces utilisateur par simple glisser-déposé de widgets sur une page de composition.