VRMLworks

Réponses de la FAQ comp.lang.vrml
1. Éléments de base

  1. Qu'est-ce que VRML?

    VRML, qui est prononcé "vi-ar-ème-elle" ou encore "VAR-mel" chez les anglophones, est une abréviation pour "Virtual Reality Modeling Language". Vous pourriez aussi rencontrer quelques références à "Virtual Reality Markup Language", qui était comment VRML se nommait au tout début – en prenant pour modèle HTML: "Hypertext Markup Language" -- mais depuis ce temps, les gens ont réalisé que notre vision pouvait et devait être beaucoup plus qu'une simple addition de nouvelles étiquettes décrivant la 3D.

    VRML est, d'après le Consortium VRML, "un standard ouvert pour le multimédia 3D et les mondes virtuels partagés sur l'Internet."

    1. Un standard ouvert: VRML a été reconnu comme standard international (ISO/IEC-14772-1:1997) par l'International Organization for Standardization (ISO) et l'International Electrotechnical Commission (IEC) en Décembre, 1997. Ce n'est pas l'endroit ici pour discuter de l'ouverture de la démarche qui a été entreprise, mais l'organisation ISO en a été si impressionnée qu'elle en envisage l'utilisation comme modèle pour le développement de nouveaux standards à venir.
    2. Multimédia 3D : Longtemps avant sa standardisation officielle, VRML était devenu un standard de facto pour le partage et la publication de géométries entre applications de CAO, animations, et de modélisations 3D; maintenant, à peu près toutes ces applications exportent VRML ou encore ont un utilitaire ou "plugin" pour la conversion de leur format de fichiers propriétaires vers VRML. VRML est aussi inclus ou référencé dans le standard MPEG-4 à venir, Java3D, et dans d'autres standards en cours de mise au point.
    3. Mondes virtuels partagés: Pouvoir communiquer et travailler dans un espace 3D virtuel partagé était une des motivations premières des pionniers de VRML. Le site VRMLworks possède toute une section sur le cyberespace qui traite des travaux accomplis pour la réalisation de cette vision.
    4. Sur l'Internet: à la différence des applications 3D précédentes, l'utilisation d'Internet pour le partage de scènes et d'objets 3D  faisait partie intégrante de VRML dès le tout début. Le standard et ses spécifications sont même publiés sous format HTML.

  2. VRML est un langage de quel type?

    VRML n'est pas un langage de programmation généraliste comme C++, un langage de script tel JavaScript ou un langage de spécification de page tel HTML. C'est un langage de description de scène 3D décrivant les géométries et leur comportement dans une scène communément appelé "monde".

  3. Qu'est-ce qu'un monde VRML?

    Le nom de "monde" vient d'un des objectifs initiaux de VRML: les mondes virtuels partagés sur l'Internet. Les mondes VRML peuvent être de simples fichiers isolés ou des groupes de fichiers se chargeant simultanément. Leurs contenus vont du simple objet jusqu'aux scènes d'une grande complexité, mais n'incluent jamais tous les éléments et géométries de la terre dans sa totalité; il est donc possible d'espérer pouvoir les charger au cours de votre vie.

  4. Quel est le format d'un fichier VRML?

    Un fichier VRML est, jusqu'à ce qu'un format binaire de compression soit approuvé, un simple fichier texte UTF-8 ou ASCII (un sous-ensemble du jeux de caractère UTF-8). Un fichier VRML peut être compressé en utilisant gzip, un utilitaire disponible gratuitement, et peut être créé, examiné, et modifié dans un simple éditeur de texte.

  5. Quel est le type "MIME" d'un fichier VRML?

    Le type MIME d'un fichier VRML est "model/vrml", même si quelques serveurs le livrent encore sous son ancienne forme "x-world/x-vrml". Les spécifications demandent qu'un navigateur VRML accepte les deux types MIME.  Si vous êtes administrateur de site web, vous devriez utiliser le type officiel et non pas l'ancien type "x-".

  6. Quel suffixe désigne un fichier VRML?

    Le nom d’un fichier VRML se termine par ".wrl". Il peut finir par ".wrl.gz" ou ".wrz" pour indiquer que le fichier a été "gzippé", mais ce n'est pas nécessaire, et d'après les spécifications, les navigateurs ne sont pas requis d’accepter ces extensions de fichiers.

    Blaxxun a son propre type MIME (application/x-ccpro) et son suffixe (.bxx) pour ses mondes multi-usagers. Ceci laisse la possibilité à l'usager de pouvoir configurer d'autres navigateurs VRML en tant que navigateur par défaut tout en utilisant CCPro de Blaxxun pour les mondes multi-usagers. Même si ces fichiers renferment du contenu VRML, ce contenu ainsi que le type MIME et l'extension ne sont pas régis par les spécifications VRML.

  7. Qu'est-ce que comp.lang.vrml?

    Le groupe de discussion (newsgroup) non modéré USENET comp.lang.vrml a été établi pour servir de base de discussion à propos de Virtual Reality Modeling Language. Ce groupe de discussion a largement surclassé alt.lang.vrml, le premier groupe établi pour la discussion sur VRML. La Foire Aux Questions (FAQ) de ce groupe est maintenue à http://home.hiwaay.net/~crispen/vrmlworks/faq/.

  8. Quelle est la différence entre VRML 1.0 et VRML 97?

    Brièvement, les mondes VRML 1.0 sont statiques. VRML 2.0 introduit l'animation et l'interaction avec le visiteur de ces mondes. En voici un sommaire:

    Version Caractéristiques
    VRML 1.0
    • Objets standards (cube, sphère, cône, cylindre, texte)
    • Objets arbitraires (surfaces, jeux de lignes (linesets), jeux de points (pointsets))
    • Faculté de voler, marcher, et examiner des scènes
    • Éclairage
    • Caméras (viewpoints)
    • Textures sur des objets
    • Liens cliquables
    • Définir et réutiliser des objets (DEF, USE)
    VRML 2.0

    Toutes les caractéristiques VRML 1.0 plus

    • Objets animés
    • Interrupteurs (switch)
    • Senseurs
    • Scripts (Java ou JavaScript) pour les animations et la logique
    • Interpolateurs (couleur, position, orientation, etc.)
    • Extrusions
    • Couleurs et textures de fond d'écran
    • Son (.wav et MIDI)
    • Textures animées
    • Protocole de routage des évènements
    • Définir et réutiliser des objets et des animations avec possibilité d'ajouter de nouveaux nœuds au langage au moyen de PROTO et EXTERNPROTO

    Une autre différence importante est que VRML 97 est une spécification internationale approuvée par l'International Organization for Standards: ISO/IEC-14772-1:1997 tandis que VRML 1.0 ne l'est pas. La lecture des spécifications est loin d'être la façon la plus facile pour en saisir les différences, mais c'est cependant la plus sûre

    La première ligne de tout fichier VRML 97 commence par:

          #VRML V2.0 utf8

    et la première ligne de tout fichier VRML 1.0 commence par:

          #VRML V1.0 ascii

    Beaucoup de navigateurs VRML 97, mais pas tous, pourront lire et restituer des fichiers VRML 1.0 correctement. Aucun navigateur VRML 1.0 ne pourra lire et restituer des fichiers VRML 97 correctement.

  9. Quelle est la différence entre VRML 2.0 et VRML 97?

    Il n'y en a pas. Mais ici, une importante mise en garde est de mise: il y eu beaucoup d'ébauches de travail pour les spécifications élaborées entre 1995 et la fin de 1997. Quelques-unes de ces ébauches sont toujours accessibles, et elles peuvent différer des spécifications finales de façon minime, mais quelquefois vitale. Assurez-vous de demander ou de répondre à des questions basées sur les spécifications internationales finales (ISO), et non sur une ébauche de travail précédente.

  10. Que faut-il pour voir (ou visiter) un monde VRML?

    Vous avez besoin d'un navigateur VRML. Il y a trois type de navigateurs VRML:

    1. L’application autonome. Vous pouvez compiler des applications autonomes pouvant visualiser et manipuler des  mondes VRML avec des kits de développements tels que Open Worlds, JVerge, WorldView for Developers, et Open Inventor. La plupart des gens n'auront pas besoin ou ne voudront pas compiler d'applications et utiliseront plutôt une des deux autres sortes de navigateurs.

    2. L’application de service. Une application de service a toutes les fonctionnalités pour visualiser et manipuler des mondes VRML et n'a pas besoin d'être compilée. Vous pouvez généralement pointer une telle application comme application de service à votre navigateur web, tout comme vous le faites pour un visualisateur PostScript ou pour Microsoft Word viewer, et toutes les fois que le navigateur web recevra un lien à un monde VRML, il lancera l'application de service. Beaucoup d'applications de service relanceront le navigateur web lorsqu'elles activeront un lien pour une page HTML. Deux de ces applications VRML très prisées sont Sony's Community Place, et VRWave.

    3. Le "plugin". Les plugins utilisent les fonctionnalités fournies par beaucoup de navigateurs web pour voir des mondes VRML à l'intérieur de votre navigateur web. Les deux plugins VRML les plus populaires sont WorldView, aussi appelé Microsoft VRML, pour Microsoft Internet Explorer et Cosmo Player pour Netscape Navigator et Communicator. Plusieurs versions de navigateurs web viennent avec un plugin VRML pré-installé. Il y a une page à VRMLworks pour vous aider afin de savoir si vous possédez déjà un plugin VRML et pour comprendre comment il fonctionne. Si votre navigateur web n'a pas de plugin VRML installé, vous pourrez en télécharger un à partir de Microsoft, Intervista, ou Cosmo Software.

    Il n'est absolument  pas nécessaire d'utiliser un navigateur VRML particulier avec un navigateur web particulier, mis à part le cas où un fabriquant d'un navigateur VRML vous dit que leur navigateur ne fonctionnera pas avec tel navigateur web. Vous n'êtes pas obligé non plus, d'utiliser le navigateur VRML qui aurait été pré-installé dans votre navigateur web. Allez à la  liste de navigateurs VRML au VRML Repository pour des solutions de rechanges.

    En règle générale, les applications de service et plugins VRML sont gratuits. S'il y a un coût, c'est que le produit peut offrir des fonctionnalités spéciales pouvant le justifier. Les réponses suivantes de cette FAQ peuvent renfermer de l'information qui vous aidera à choisir un navigateur.

  11. Quel est le meilleur navigateur VRML?

    Tout le monde s'accorde pour dire que celui que vous possédez actuellement est le meilleur. SVP, n'envoyez pas de message à ce sujet sur comp.lang.vrml, alors que des questions touchant le degré d'implémentation du standard par ces navigateurs sont bienvenues. Pour de l'information sur les navigateurs VRML, la source standard est la liste de navigateurs du "VRML repository". Vous pouvez aussi aller voir à:

  12. Est-ce qu'il y a un navigateur VRML pour [Mac/Unix]?

    Pour la plupart des plateformes, la réponse est oui. Le "VRML repository" a une liste de navigateurs et des plateformes sur lesquelles ils fonctionnent. Malheureusement, il n'y a aucun navigateur web ou VRML pour mon vieux "Radio Shack Color Computer". Au cas ou ceci vous aurait échappé sur le site du "VRML Repository", Cosmo Software et Intervista ont tous deux un navigateur VRML pour le Mac.

  13. J'ai téléchargé un fichier VRML pour l'étudier et il semble être dans un format binaire. Où trouver de l'information sur ce format VRML binaire?

    Voilà une des questions revenant fréquemment sur comp.lang.vrml, alors ne vous en faites pas, vous n'êtes pas seul à vous la poser. De plus, je note que vous utilisez une technique tout à fait admirable -- soit de regarder ce que d'autres ont fait afin de comprendre comment ils ont solutionné des problèmes auxquels vous devez faire face.

    La seule chose qui vous manque est de savoir que ça ne fait pas partie des spécifications. Beaucoup de producteur de contenu VRML veulent minimiser le temps de chargement à leurs visiteurs, alors ils compressent leurs mondes en utilisant gzip, un utilitaire de compression gratuit que vous pouvez obtenir pour la plupart des plateformes à partir du site de la Free Software Foundation à ftp://prep.ai.mit.edu/pub/gnu/. Au même endroit, il y a un utilitaire appelé gunzip, qui reconvertira un fichier compressé en simple texte ASCII.

    Afin de contourner un bug dans certains navigateurs web, beaucoup d'auteurs choisissent de nommer ces mondes "gzippé"  "foo.wrl" au lieu de "foo.wrl.gz", le nom de fichier par défaut généré par gzip.

    Il n'y a présentement aucun format binaire ou compilé pour VRML, mais il y a un Groupe de travail actif au "VRML Consortium" qui en élabore un.

  14. Quelle est la façon la plus économique de démarrer avec VRML?

    1. Trouvez-vous un navigateur VRML. Il y a une liste de navigateurs sur le site du "VRML Repository". Et aussi une section du site VRMLworks sur le choix, l'installation, et le dépannage des navigateurs VRML.

    2. Familiarisez-vous avec le langage VRML. Il y a une liste de tutoriaux au site VRMLworks qui énumère non seulement des tutoriaux mais aussi des adresses d'autres listes de tutoriaux.

    3. Allez chercher une copie des spécifications VRML sur le site du "VRML Consortium". Il y a des fichiers "zippés" et archivés gratuits contenant toutes les spécifications que vous pouvez installer à votre convenance sur votre ordinateur.

    4. Trouvez-vous un simple éditeur de texte. Vous en avez probablement déjà un. Sur les machines Windows, Notepad convient bien. Microsoft Word ou d'autres applications de traitement de texte ne feront pas l'affaire à moins qu'ils aient une option pour l'enregistrement des fichiers en simple format texte ASCII, parce que ces applications introduisent généralement des caractères spéciaux qui ne seront pas interprétés correctement par votre navigateur VRML. Si vous êtes familier avec vi sur les systèmes Unix, il y a un clone de vi appelé vim qui est disponible pour plusieurs plateformes.

    5. Trouvez-vous des modèles et textures du domaine publique pour mettre dans vos mondes. Le VRMLworks a une liste des sources de modèles ainsi qu'un moteur de recherche pour ces modèles.

    6. Trouvez des outils gratuiciels pouvant aider à la construction de vos mondes. Le VRMLworks a une liste d'outils utiles pour la construction de mondes.

    Coût total jusqu'a maintenant: zéro. Plusieurs excellents mondes VRML ont été conçus à ce prix.

    La toute première chose sur laquelle vous devriez investir, c'est un bon livre sur VRML. Le VRML Repository a une liste de livres, et le VRMLworks contient des critères de sélection de livre sur VRML et une revue des livres courants.

    Maintenant que vous avez décidé d'adorer VRML et que vous avez besoin de plus que vous le permettent vos outils actuels, trouvez quelques outils de modélisations, conversion, et de post-production disponibles sur le marché. Le VRML Repository a une liste d'outils dont les prix varient de gratuit à plusieurs centaines de dollars US.

  15. Quelle est la façon la plus facile de démarrer avec VRML?

    Trouvez-vous un systèmes de développement VRML (qu'on appelle modélisateur ou encore "world builder") capables de générer des modèles et animations VRML. Il y a une liste d'outils de création au VRML Repository qui vous donnera un coup de pouce. Le VRMLworks contient des critères pour la sélection d'un modélisateur adapté à vos besoins.

    Il n'y a pas si longtemps, il vous aurait fallu apprendre VRML pour démarrer. Maintenant il est parfaitement possible de construire des mondes tout à fait décents sans avoir à apprendre VRML auparavant, tout comme vous pouvez maintenant produire des pages web parfaitement correctes sans avoir appris HTML.

    Alors que vous deviendrez plus expérimenté avec VRML, vous allez probablement découvrir que beaucoup de modélisateurs produisent des mondes trop gros pour être restitués efficacement. Vous pourriez aussi vous apercevoir que certains effets subtils vont au-delà des capacités de vos outils. Le VRMLworks a une liste d'outils pouvant vous aider à la post-production pour rendre vos mondes plus rapides, efficaces, et accrocheurs, et peut-être allez-vous sentir le besoin d'apprendre un peu de VRML, en prenant ce virage afin de faciliter la réalisation de votre vision artistique, auquel cas la réponse à la question précédente pourrait être utile, tout comme une autre section du VRMLworks sur le processus de construction des mondes VRML.

  16. Quels sont les meilleurs endroits sur Internet pour trouver de l'information relative à VRML?

    Les sites suivants se retrouvent en tête de ma très longue liste personnelle:

    Mais vous ne devriez négliger aucun des sites sur la liste des références générales et des périodiques sur Internet apparaissant au VRMLwork.

[line]

Ai-je oublié quelque chose qui vous serait utile dans ces questions? Si c'est le cas, faite-le moi savoir.

-- Bob Crispen
-- Jeudi, 11 juin, 1998

Notes du traducteur:
Si vous avez des suggestions, corrections ou commentaires à apporter,
n'hésitez pas à me contacter

-- Sylvain Carette
-- Dimanche, 17 juin 2001