X3D

Da Wikipedia, l'enciclopedia libera.
X3D - Extensible 3D Graphics
Estensione .x3d, .x3dv, .x3db, .x3dz, .x3dbz, .x3dvz
Tipo MIME model/x3d+xml
model/x3d+binary
model/x3d+vrml
Ultima versione 3.3
Tipo Computer grafica 3D
Estensione di VRML, XML
Standard ISO/IEC 19775-1
Sito web www.web3d.org/x3d

X3D è un linguaggio per la descrizione di ambienti virtuali interattivi. È stato sviluppato dal Web 3D Consortium come evoluzione del VRML, è basato su XML, è un formato non proprietario ed è stato standardizzato dall'ISO nel 2004.

Scopo[modifica | modifica wikitesto]

Lo scopo principale di X3D è la descrizione di ambienti virtuali interattivi. Le entità che possono essere descritte sono:

  • Ambiente (descrive le caratteristiche dell'ambiente, come lo sfondo, la nebbia, ecc.)
  • Oggetti (descrive la posizione, la geometria e il colore degli oggetti)
  • Luci (descrive la posizione e le caratteristiche fisiche delle luci)
  • Suoni (descrive la posizione e le caratteristiche dei suoni)
  • Osservatore (descrive le caratteristiche dell'osservatore)
  • Animazioni (descrive le eventuali animazioni degli oggetti, delle luci, dei suoni, dell'osservatore, ecc.)
  • Interattività (descrive l'interazione dell'ambiente con l'osservatore, ad esempio il click su di un oggetto)
  • Scripting (permette di manipolare, attraverso linguaggi di scripting come Javascript o attraverso linguaggi come Java, l'ambiente virtuale)

Struttura[modifica | modifica wikitesto]

Un file X3D è un file XML in cui viene descritto l'ambiente virtuale attraverso quello che viene definito grafo della scena.
Il grafo della scena è sostanzialmente un albero i cui nodi interni rappresentano le trasformazioni spaziali delle entità definite nell'ambiente virtuale, mentre le foglie sono le entità stesse. Il fatto che si usi il termine grafo invece che albero deriva dal fatto che quando due nodi distinti fanno riferimento alla stessa entità si definisce un collegamento tra i due, ottenendo di fatto un grafo.
Nella visualizzazione della scena il player esegue una visita dell'albero inserendo nella scena le entità man mano che vengono incontrate.

Esempio[modifica | modifica wikitesto]

Un piccolo esempio può essere il seguente:

Cilindro x3d.png
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "http://www.web3d.org/specifications/x3d-3.0.dtd"
                     "file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.0.dtd">
<X3D profile="Immersive"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance"
  xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.0.xsd">
  <head>
  </head>
  <Scene>
    <Transform>
      <Shape>
        <Cylinder/>
        <Appearance>
          <Material diffuseColor="1.0 0.4 0.0"/>
        </Appearance>
      </Shape>
    </Transform>
  </Scene>
</X3D>

Quello che si ottiene è un normale cilindro di colore arancio scuro, come evidenziato nella figura.

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]