« X3D » : différence entre les versions

De EduTech Wiki
Aller à la navigation Aller à la recherche
mAucun résumé des modifications
mAucun résumé des modifications
 
(46 versions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
==Définition==
==Définition==


===x3D===
X3D (ou eXtensible 3D) est un standard pour la construction d'environnements en trois dimensions sur le web. X3D est le successeur de VRML (ou Virtual Reality Modelling Language).


x3D (ou eXtensible 3D) est un standard pour la construction d'environnement en trois dimensions sur le web. Il permet de naviguer dans un monde 3D directement à partir de votre navigateur; il nécessite cependant l'installation d'un plug-in ou d'un logiciel à part. Ce standard prend la succession de VRML, mais reste néanmoins compatible avec celui-ci. Il a été normalisé par l'[http://www.iso.org ISO] en 2005 et les spécifications sont disponibles [http://www.web3d.org/x3d/specifications/ ici].
Spécification:
* [http://www.web3d.org/documents/specifications/19775-1/V3.2/Part01/concepts.html Extensible 3D (X3D) Part 1: Architecture and base components]


Depuis 2005, de nombreuses entreprises ont quitté le consortium web3D afin de créer leur propre technologie basée sur xml :
X3D permet de naviguer dans un monde 3D directement à partir de votre navigateur; il nécessite cependant l'utilisation d'une bibliothèque JavaScript ou l'installation d'un plug-in ou d'un logiciel à part. Ce standard prend la succession de VRML, mais reste néanmoins compatible avec celui-ci. Il a été normalisé par l'[http://www.iso.org ISO] en 2005 et les spécifications sont disponibles [http://www.web3d.org/x3d/specifications/ ici].
* Intel avec U3D
 
* Microsoft avec XAML
Il existe des nombreuses alternatives à X3D (à peu près une par grande entreprise active dans la 3D). Ces technologies ne sont cependant pas aussi ouvertes, documentées et donc accessibles que X3D. X3D est un standard ouvert semblable à [[SVG]] et permet la création de mondes virtuels à l'aide d'un simple éditeur de texte. Il existe en revanche peu d'outils auteurs, qui ne sont d'ailleurs pas forcément nécessaires, puisque la syntaxe [[XML]] de X3D permet d'utiliser un éditeur XML. Finalement, on peut convertir des modèles 3D conçus dans un autre environnement.
* Dassault Systèmes avec 3D XML
Ces technologies ne sont cependant pas aussi ouvertes, documentées et donc accessibles que VRML et X3D, qui sont disponibles gratuitement sur le web et permettent la création de mondes virtuels à l'aide d'un simple éditeur de texte.


''Liens''
''Liens''
*[http://www.web3d.org/ Page officiel du x3D]
*[http://www.web3d.org/ Page officielle du consortium Web|3D] (créateur de la norme)
*La page officielle de U3D pointe à présent vers un vendeur de livres audios (http://www.3dif.org/)
*[http://www.xaml.fr/ Page francophone de XAML]
*[http://www.3ds.com/3dxml Page officielle de 3D XML]


==Utiliser X3D==


===Ajax3D===
Pour pouvoir lire du X3D (en plus d'avoir une carte 3D), il vous faudra soit installer un "player", soit utiliser X3Dom.


Ajax3D combine la puissance de x3D (langage de balises) avec l'ajax. Un équivalent du DOM a été créé pour contrôler le monde 3D par l'intermédiaire de javascript; celui est appelé le SAI (Scene Access Interface).
'''Players'''


''Liens''
Les principaux players sont les suivants (mais voir aussi ci-dessous les solutions WebGL/JavaScript):
* [http://www.ajax3d.org/ Page officielle]
 
* [http://forums.ajax3d.org/ Forum]
* [http://freewrl.sourceforge.net/ FreeWRL], ouvert et gratuit
* [http://ajax3d.sourceforge.net/ Demo]
* [http://instantreality.org/ InstantReality]
* [http://www.alivex3d.org/papers/ausweb07.pdf Tutoriel 1]
* [http://www.octaga.com/ Octaga], développé par Octaga (commercial, avec version test)
* [http://hypermultimedia.com/ajax3d/index.htm Tutoriel 1]
* [http://www.bitmanagement.de/ BS Contact], développé par bitmanagement (commercial, avec version test)
 
Voir:
* [http://www.web3d.org/wiki/index.php/Player_support_for_X3D_components Player support for X3D components] (X3d wiki). As of March 2016, the last update was in Dec 2015.


'''Players JavaScript''' (tournent sans installation dans un navigateur)


==Utiliser x3D==
* [[X3DOM]] ([http://x3dom.org X3Dom, site officiel]) est une proposition pour intégrer X3D dans HTML5 en utilisant [[WebGL]]
** Attention: Ne jamais utiliser des balises auto-fermés (vieux bug, tjrs présent en Janvier 2015).
** Exemple HTML5: [http://tecfa.unige.ch/guides/x3d/x3dom/ex-html5/simple-shapes.html simple-shapes.html]


Pour pouvoir lire du x3D (en plus d'avoir une carte 3D), il vous faudra installer un lecteur. Les principaux sont les suivantes :
* [http://titania.create3000.de/cobweb/ Cobweb] (navigateur WebGL, marche avec FF en nov. 2015)
** [http://tecfa.unige.ch/guides/x3d/cobweb/cobweb-example.html exemple HTML5]


* [http://www.mediamachines.com/flux.html Flux Player], développé par Media Machines
==Comprendre du X3D==
* [http://www.octaga.com/ Octaga], développé par Octaga (entreprise engagé par Shell)
* [http://www.bitmanagement.de/ BS Contact], développé par bitmanagement
* [http://www.xj3d.org xj3D], qui est un projet de développement d'un toolkit en java pour VRML97 et X3D


==Comprendre du x3D==
Voir aussi: [[:en:X3D tutorials]]


x3D est un langage de balises, basé sur xml. Par exemple le bout de code suivant :  
X3D est un langage XML. Par exemple, le bout de code suivant définit une forme (<code>shape</code>) avec une boite et un "habillage":


<pre>
<source lang="XML">
<Shape DEF='Box1'>
<Shape DEF='Box1'>
  <Appearance
  <Appearance containerField='appearance'>
  containerField='appearance'>
   <Material DEF='Red'
   <Material DEF='Red'
   containerField='material'
   containerField='material'
Ligne 57 : Ligne 57 :
   size='1 2 3'/>
   size='1 2 3'/>
</Shape>
</Shape>
</pre>
</source>


signifie que nous avons créé un cube qui s'appelle 'Box1', qui est rouge, a une intensité ambiante de 0.2, une brillance de 0.2, a une grandeur de 1 sur l'axe des x, 2 sur l'axe des y et 3 sur l'axe des z. Enfantin.
Nous avons créé un cube qui s'appelle 'Box1', qui est rouge, a une intensité ambiante de 0.2, une brillance de 0.2, a une grandeur de 1 sur l'axe des x, 2 sur l'axe des y et 3 sur l'axe des z. Enfantin.


Nous pouvons ensuite lui faire subir toute sorte de modification de la manière suivante :  
Nous pouvons ensuite lui faire subir toute sorte de modification de la manière suivante :  


<pre>
<source lang="XML">
<Transform DEF='dad_Box1'
<Transform DEF='dad_Box1'
  translation='5 0 0'
  translation='5 0 0'
  rotation='.764 -.063 -.642 1.867'
  rotation='.764 -.063 -.642 1.867'
  center='.58356 -2.88 2.79429'>
  center='.5 -1 1'>
<Shape DEF='Box1'>
<Shape USE='Box1'>
/* commandes pour le carré */
  </Shape>
  </Shape>
</Transform>
</Transform>
</pre>
</source>
 
Le résultat (2 cubes, dont un déplacé et tourné est [http://tecfa.unige.ch/guides/x3d/x3dom/ex-html5/comprendre-x3d.html ici])


Ce qui veut dire que l'on déplace le cube de +5 sur l'axe des x, et qu'on lui fait faire une rotation par rapport à un point dans l'espace 3D.  
Ce qui veut dire que l'on déplace le cube de +5 sur l'axe des x, et qu'on lui fait faire une rotation par rapport à un point dans l'espace 3D.


==Créer du X3D==


==Créer du x3D==
=== Configuration du serveur web ===


Tout d'abord il vous faudra préciser le mime-types côté serveur :
Il vous faudra préciser les mime-types côté serveur si ce n'est pas déjà fait (ou demander à votre administrateur web de le faire ...)


<pre>
<pre>
Ligne 85 : Ligne 87 :
.x3d  model/x3d+xml
.x3d  model/x3d+xml
.x3db  model/x3d+binary
.x3db  model/x3d+binary
.wrl  x-world/x-vrml
</pre>
</pre>


Ensuite il est trop laborieux de créer un objet ou un environnement 3D en écrivant uniquement ses balises. Heureusement il existe un programme de création 3D (gratuit) qui permet d'exporter ses créations au format x3D, VRML, etc. Il se nomme Flux Studio et est disponible à [http://www.mediamachines.com/make.php cette adresse].
=== Editeurs de structure ===


J'ai également créé un [[x3d:flux studio tutorial]] en anglais pour les personnes qui souhaitent s'initier à ce genre d'environnement.
* [https://savage.nps.edu/X3D-Edit/  X3DEdit] est un éditeur de structure qui marche assez bien.
 
=== Outils Modéliseurs 3D pour X3D ===
 
Il est laborieux de créer un objet ou un environnement 3D en écrivant uniquement ses balises. Actuellement, il n'existe plus d'outils gratuits ou bon marchés
 
* Pour Windows, un bon outil est Flux Studio qui date de 2007, mais marche toujours. En principe, il est disponible à [http://mediamachines.wordpress.com cette adresse]. (à vérifier s'il marche toujours et s'il ne s'agit pas d'un logiciel malveillant !! - [[Utilisateur:Daniel K. Schneider|Daniel K. Schneider]] ([[Discussion utilisateur:Daniel K. Schneider|discussion]]) 1 avril 2016 à 19:41 (CEST)). On a également créé un [[Tutoriel Flux Studio]] en français pour les personnes qui souhaitent s'initier à ce genre d'environnement.
 
* [http://titania.create3000.de/ Titania], éditeur X3D pour Ubuntu, mais à partir de la version 15.x ! Je suggère d'attendre Ubuntu 16.04 Xenial (released on April 21 2016).
 
=== Validation ===
 
* [https://savage.nps.edu/X3dValidator X3D Validator] en ligne. Ne marche pas avec X3Dom, autrement dit, il faut soumettre une page XML de type .x3d.


==Liens==
==Liens==


* [http://www.web3d.org/x3d/content/X3dTooltips.html web3d.org : x3D tooltips : détails des balises]
* [http://www.web3d.org/x3d/content/X3dTooltips.html web3d.org : X3D tooltips : détails des balises]
* [http://www.web3d.org/x3d/content/examples/help.html web3d.org : exemples, références]
* [http://www.web3d.org/x3d/content/examples/help.html web3d.org : exemples, références]
* [http://mediamachines.wordpress.com le site des auteurs de Flux Player et Flux Studio]
* [http://en.wikipedia.org/wiki/X3D la page Wikipedia sur X3D (maigre)]
* [http://en.wikipedia.org/wiki/VRML la page Wikipedia sur VRML (maigre)]
* [http://edutechwiki.unige.ch/en/X3DV la page edutech wiki (en) sur le X3DV]
* [http://www.web3d-fr.com/ Web3D.fr (un portail dédié à toutes les formes de Web 3D)]
* [http://www.web3d-fr.com/X3D/presentationx3d.php la page X3D de web3d-fr]
=== Exemples ===
* [https://github.com/create3000/Library/tree/master/Examples Create3000 / Titanium]


* [http://www.mediamachines.com/ le site des auteurs de Flux player et Studio]
[[en:X3DV]]
* [http://en.wikipedia.org/wiki/X3D la page wikipedia sur x3D (maigre)]
* [http://edutechwiki.unige.ch/en/X3D la page edutech wiki (en) sur le x3D]
* [http://www.web3d-fr.com/ Web3D.fr] (un portail dédié à toutes les formes de Web 3D]
** [http://www.web3d-fr.com/X3D/presentationx3d.php Page X3D de web3d-fr]


[[en:X3D]]
[[Category: Environnements virtuels]]
[[Category: XML]]
[[Category:3D]]

Dernière version du 2 mai 2016 à 23:36

Définition

X3D (ou eXtensible 3D) est un standard pour la construction d'environnements en trois dimensions sur le web. X3D est le successeur de VRML (ou Virtual Reality Modelling Language).

Spécification:

X3D permet de naviguer dans un monde 3D directement à partir de votre navigateur; il nécessite cependant l'utilisation d'une bibliothèque JavaScript ou l'installation d'un plug-in ou d'un logiciel à part. Ce standard prend la succession de VRML, mais reste néanmoins compatible avec celui-ci. Il a été normalisé par l'ISO en 2005 et les spécifications sont disponibles ici.

Il existe des nombreuses alternatives à X3D (à peu près une par grande entreprise active dans la 3D). Ces technologies ne sont cependant pas aussi ouvertes, documentées et donc accessibles que X3D. X3D est un standard ouvert semblable à SVG et permet la création de mondes virtuels à l'aide d'un simple éditeur de texte. Il existe en revanche peu d'outils auteurs, qui ne sont d'ailleurs pas forcément nécessaires, puisque la syntaxe XML de X3D permet d'utiliser un éditeur XML. Finalement, on peut convertir des modèles 3D conçus dans un autre environnement.

Liens

Utiliser X3D

Pour pouvoir lire du X3D (en plus d'avoir une carte 3D), il vous faudra soit installer un "player", soit utiliser X3Dom.

Players

Les principaux players sont les suivants (mais voir aussi ci-dessous les solutions WebGL/JavaScript):

Voir:

Players JavaScript (tournent sans installation dans un navigateur)

Comprendre du X3D

Voir aussi: en:X3D tutorials

X3D est un langage XML. Par exemple, le bout de code suivant définit une forme (shape) avec une boite et un "habillage":

<Shape DEF='Box1'>
 <Appearance containerField='appearance'>
  <Material DEF='Red'
   containerField='material'
   ambientIntensity='0.200'
   shininess='0.200'
   diffuseColor='1 0 0'/>
 </Appearance>
 <Box DEF='GeoBox1'
  containerField='geometry'
  size='1 2 3'/>
</Shape>

Nous avons créé un cube qui s'appelle 'Box1', qui est rouge, a une intensité ambiante de 0.2, une brillance de 0.2, a une grandeur de 1 sur l'axe des x, 2 sur l'axe des y et 3 sur l'axe des z. Enfantin.

Nous pouvons ensuite lui faire subir toute sorte de modification de la manière suivante :

<Transform DEF='dad_Box1'
 translation='5 0 0'
 rotation='.764 -.063 -.642 1.867'
 center='.5 -1 1'>
<Shape USE='Box1'>
 </Shape>
</Transform>

Le résultat (2 cubes, dont un déplacé et tourné est ici)

Ce qui veut dire que l'on déplace le cube de +5 sur l'axe des x, et qu'on lui fait faire une rotation par rapport à un point dans l'espace 3D.

Créer du X3D

Configuration du serveur web

Il vous faudra préciser les mime-types côté serveur si ce n'est pas déjà fait (ou demander à votre administrateur web de le faire ...)

.x3dv  model/x3d+vrml
.x3d   model/x3d+xml
.x3db  model/x3d+binary
.wrl   x-world/x-vrml

Editeurs de structure

  • X3DEdit est un éditeur de structure qui marche assez bien.

Outils Modéliseurs 3D pour X3D

Il est laborieux de créer un objet ou un environnement 3D en écrivant uniquement ses balises. Actuellement, il n'existe plus d'outils gratuits ou bon marchés

  • Pour Windows, un bon outil est Flux Studio qui date de 2007, mais marche toujours. En principe, il est disponible à cette adresse. (à vérifier s'il marche toujours et s'il ne s'agit pas d'un logiciel malveillant !! - Daniel K. Schneider (discussion) 1 avril 2016 à 19:41 (CEST)). On a également créé un Tutoriel Flux Studio en français pour les personnes qui souhaitent s'initier à ce genre d'environnement.
  • Titania, éditeur X3D pour Ubuntu, mais à partir de la version 15.x ! Je suggère d'attendre Ubuntu 16.04 Xenial (released on April 21 2016).

Validation

  • X3D Validator en ligne. Ne marche pas avec X3Dom, autrement dit, il faut soumettre une page XML de type .x3d.

Liens

Exemples