Diapositive1.PNG

Bonjour à tous, merci encore d’être venu.

Le but de cette intervention de 10 minutes est de vous présenter le projet OpenSim.

Comme il y’a énormément de choses à raconter sur OpenSim, et que 10 minutes c’est pas beaucoup, cette présentation est découpée en quatre parties qui reprennent chacunes les questions qui reviennent le plus souvent. Donc les voici :

  • OpenSim, Qu’est ce que c’est ?
  • Pourquoi OpenSim ?
  • OpenSim, comment ça marche ?
  • OpenSim, ou en est-on ?

Au fur et à mesure de la présentation, je serais amené à copier quelques liens de référence dans le chat. Je vous demanderais simplement de juste les bookmarker afin de ne pas perdre le fil de la présentation. Comme je ne suis pas conférencier dans l’âme, je risque certainement bafouiller un peu, et donc je vous remercie d’avance pour votre indulgence…

Diapositive2.PNG

Donc, OpenSim est un serveur d’univers virtuel à la second life, gratuit, open source, et multiplateforme.

  • Un serveur d'Univers Virtuel « à la Second Life »

OpenSim, c’est le résultat d’un gros travail d’analyse du trafic réseau qui circule entre le viewer et les serveurs de Second Life. Ce travail a été initié il y’a plus d’un an et demi par un certain Adam Frisby qui est le fondateur d’une startup Canadienne qui s’appelle DeepThink.

Aujourd’hui, OpenSim est capable de reproduire fidèlement un métaverse équivalent à Second Life, reprennant exactement les mêmes notions que nous connaissons bien in-world. On y retrouve à quelques détails près, les régions, des avatars, des primitives, des objets, etc…, ainsi que que tous les différents types d’items que nous pouvons stocker dans nos inventaires : notecards, vêtements, scripts

  • OpenSim est Gratuit et Open Source.

Tout comme le viewer de Second Life, OpenSim est gratuit et Open Source sous licence BSD. Cela veut dire que le code source est ouvert au public, que n’importe qui peut le consulter, proposer des corrections, des changements, et des améliorations.

Alors, si vous proposez des changements ils seront soumis à l’équipe de développement principale d’OpenSim, qu’on appelle la « Core Team », pour être validés et intégrés au code. S’ils sont acceptés.

Quelques chiffres à présent :

OpenSim totalise 160 000 lignes de code. Sa force de travail a été évaluée à 41 hommes/année, et le coût de ce travail est évalué à 2 250 500 $.

Ces chiffres ne sont que des évaluations calculées par un site communautaire dans lequel le projet est enregistrés.

  • OpenSim est Multi-plateforme

OpenSim est écrit en C#, sous l’environnement DotNET de Microsoft. Il est entièrement compatible avec Mono, qui est l’équivalent OpenSource et multiplateforme de DotNET. C’est donc grâce à cette particularité de Mono qu’on est en mesure de faire tourner OpenSim aussi bien sur Windows que sur Linux et Mac OSX.

Diapositive3.PNG

  • Mettre la création à la portée de tous

Les tarifs d’hébergement d’une région chez Linden Labs sont très elevés, et ça freine la création.

Des associations et collectivités d’artistes, des amateurs passionnés qui disposent de moyens limités, doivent souvent faire appel à des dons et des sponsors pas faciles à obtenir afin de s’offrir un espace de construction pour mener à bien leurs initiatives.

Grâce à OpenSim, il devient possible à ces personnes d’héberger leur région à des prix bien plus abordables, ou même d’utiliser leurs installations existante.

Quand aux particuliers qui souhaitent simplement s’exercer, ils peuvent abriter facilement et rapidement une région sur leur propre machine, pour s’adonner à la construction, aux scripting, etc… sans devoir bourse délier.

  • Libérer le métaverse inventé par Linden Labs, lui permettre de s’étendre à d’autres environnements

Le but du projet OpenSim n’est pas de voler le concept à son créateur, bien au contraire !

Le but d’OpenSim, c’est de sortir ce métaverse de l’environnement propriétaire dans lequel il est enfermé pour lui donner de nouveaux horizons. L’éventail des possibilités du métaverse s’élargit alors, et crée de nouveaux besoins.

Et comme le produit est libéré des contraintes d’un logiciel propriétaire, c’est avec plus de confort et plus de lattitude qu’on peut tenter de répondre à ces nouveaux besoins.

  • Une nouvelle offre pour de nouveaux besoins

On peut imaginer des métaverses privés dans des réseaux d’entreprise utilisant une version d’OpenSim taillée sur mesure par rapport à leurs besoins.

Par exemple, des concepteurs CAO géographiquement distants pourraient discuter autour d’une maquette de construction future représentée en 3D.

On peut également envisager une application de monitoring de grands bâtiments, reliée à des capteurs et des relais externes.

Ou alors, un constructeur de maisons individuelles pourrait diffuser des DVDs installables pour présenter ses modèles à construire.

Quand aux exemples « live » d’intégration réussie d’OpenSim, en voici deux :

IBM utilise OpenSim pour le monitoring de ses nombreux centres de données. L’entreprise Stonfield InWorld utilise OpenSim pour concevoir des solutions de e-learning et d’interaction sociale dans de grands groupes.

  • "Lindens are our friends" !

Linden Labs a bien compris l’enjeu que constitue la libération de sa technologie, et soutient le projet.

Il faut dire qu’OpenSim offre indirectement la possibilité à Linden Labs de tester, d’éprouver et de crédibiliser son concept de metaverse a l’exterieur de cette grille propriétaire et fermée.

Il faut souligner également que des membres de Core Team d’OpenSim participent à L'Architecture Working Group (AWG), qui travaille entre autre sur la future interopérabilité entre plusieurs grilles.

En dehors de ça, des employés Linden Labs et des membres de la core team d’OpenSim restent en contact régulier pour échanger des informations techniques.

Diapositive4.PNG

  • Opensim est en version alpha

OpenSim n’est pas terminé. Il est encore en cours de développement intensif.

Mais il est suffisamment stable pour être utilisé par des personnes averties.

Pour prévenir les risques dûs aux changements dans les mises à jour, sauvegardez régulièrement votre travail !

  • L'histoire d'opensim

OpenSim a plus d’un an et demi, et a déjà subi quatre refontes complètes de son architecture ! Mais maintenant que cette dernière est à peu près stabilisée, on peut déjà voir fleurir des dérivés d’OpenSim, qu’on appelle des forks:

J’en ai compté trois :

- RealXtend, qui est une version spécifique d’OpenSim, qui intègre également d’importants changement du côté viewer.

- LiteSim, en cours de développement, qui est destiné à être ultra léger et optimisé. Il est écrit en grande partie en Python.

- Enfin, nous avons OpenUGAI, une alternative sérieuse des services UGAI de gestion de grille écrite en PERL.

Cet ensemble est destiné à tirer parti de la robustesse et des possibilité de répartition de charge d’un serveur Web, comme Apache. Seule la partie région continue à être prise en charge par OpenSim.

Diapositive5.PNG

  • Ce qui ne marche pas encore

Si l’échange de devises entre avatar fonctionne in-world, les interfaces qui permettrait à une grille OpenSim de recevoir et de transmettre des vrais fonds depuis l’extérieur ne sont pas encore implémentées.

Pour créer une véritable économie convertible, il sera nécessaire de faire appel à des services tiers sécurisés et transactionnel. Ca n’est pas encore pour maintenant.

Les groupes ne sont pas implémentés non plus.

Les mariages ne sont pas implémentés non plus et on est tous mariés à « Mr OpenSim » :-)

Quand aux profils, ils ne bénéficient que d’une implémentation partielle: Il est seulement possible de remplir un profil avec des photos et du texte.

L’implémentation LSL est incomplète, mais permet d’ores et déjà de concevoir de jolis scripts. On trouve ici un inventaire des fonction LSL implémentées et restant à être implémentées.

Et bien sûr, il y’a la liste des incidents connus. Tous les incidents OpenSim doivent être reportés dans le BugTracker du projet qui est l’équivalent du JIRA de Second Life.

  • Les plus d'opensim

Certains « plus » offerts par OpenSim compensent largement ses lacunes par rapport à Second Life.

Par exemple, il existe un petit module de génération de texture dynamique, qui permet grâce à un jeu d’instructions spécifiques en LSL d’afficher sur des prims des images venant du Web, sans devoir les télécharger.

Ce même module permet de dessiner et d’écrire sur des primitives à l’aide d’un metalangage ressemblant à Logo

On dispose d’un jeu d’instructions spécifiques pour piloter sa région.

Pour ce qui est de la programmation inworld dans OpenSim, nous avons plusieurs moteur de scripting interchangeables.

Actuellement, il y’en a deux :

- Le DotNetEngine, qui permet de développer des scripts directement en C#
- Le Xengine, plus orienté temps réel, capable de persister l’état d’un script lors du redémarrage d’une région

Nous avons également plusieurs moteurs de physique interchangeables, avec la possibilité d’en contrôller tous les paramètres. Comme la gravité, les frottements, etc…

  • le futur d'opensim

Plusieurs travaux sont en cours. Une équipe d’élèves planche sur l’authentification d’un avatar à l’aide d’OpenID dans le cadre d’un projet de fin d’année.

Le framework NHibernate très connu du monde Java est en cours d’intégration pour assurer la compatibilité avec un maximum de bases de données.

La voice est en cours d’expérimentation. Des expérimentations sont en cours avec Asterisk, une application de voip avec laquelle il serait en théorie possible d’envoyer des fax sur des primitives…

L’Intéropérabilité entre grilles fait l’objet de discussions active avec l’Architecture Working Group

En général, les discussions en cours sur les releases futures d’OpenSim se trouvent ici.

Voir les slides de toute la conférence chez Jean-Marie, et sur le site de la Francogrid.