Detailierter
VRML-Datei-Aufbau
.
Die Objekte in VRML-Welten und ihre Eigenschaften
werden durch sogenannte Nodes (Knoten) definiert.
VRML 1.0 stellt die vier Nodes Cube, Sphere, Cone
und Cylinder zur Darstellung der entsprechenden geometrischen Primitive
zur Verfügung. Kompliziertere Objekte müssen mit dem Node
IndexedFaceSet erzeugt werden.
WWWAnchor
Der WWWAnchor-Node verhält sich wie ein Separator - mit dem Unterschied,
daß die Nachfolger die aktiven Elemente eines Hyperlinks sind, dessen
Ziel durch das name - Feld definiert ist.
WWWAnchor {
name "datei.wrl"
Separator {
aktive Elemente
}
}
WWWAnchor
Hyperlink auf eine Datei beliebigen Formats im WWW, lokalisiert durch einen
URL. Der Node WWWAnchor enthält die Felder name zur Angabe des Verweiszieles
als URL und description zur textuellen Beschreibung des Links. WWWAnchor
erzeugt wie Separator einen neuen Ast im Objektbaum. Die Elemente darin
dienen als aktive Elemente zum Anklicken.
Beispiel: Hyperlink auf die Datei cube.wrl, das aktive Element ist eine
Kugel.
WWWAnchor {
name
"cube.wrl"
description "Link zu cube.wrl"
Sphere {
radius 0.5
}
}
LOD
Der LOD-Node (Level of Detail) verhält sich wie ein Switch - mit dem
Unterschied, daß zwischen den Nachfolgern automatisch aufgrundder
Entfernung umgeschaltet wird.
LOD {
range [ 10 ]
Separator {
1. Nachfolger
}
Separator {
2. Nachfolger
}
}
Material
Alle Materialdefinitionen werden im Material-Node zusammengefaßt
und können beliebig kombiniert werden. Die Farbwerte für die
Felder ambientColor, diffuseColor, specularColor und emissiveColor werden
durch Folgen von je einem Rot-, Grün- und Blauwert zwischen 0.0 und
1.0 definiert. Die Werte für die Felder transparency und
shininess sind Zahlen zwischen 0.0 und 1.0. Außerdem können
pro Feld auch mehrere Werte definiert werden. Beispiel: Material, definiert
durch eine diffuse Farbe, Glanz und Transparenz
Material {
diffuseColor 1.0 0.0 0.0
shininess 0.5
transparency 0.3
}
Transparency
Angabe der Transparenz zwischen 0.0 und 1.0. Je kleiner der Wert desto
undurchsichtiger, je größer, desto durchsichtiger. Beispiel:
50% Transparenz:
Texturen sind 2D-Bitmaps, die auf die Oberflächen
von Objekten projeziert werden (mapping). In VRML 1.0 stehen dazu die Nodes
Texture2, Texture2Transform undTextureCoordinate2 zur Verfügung. Bitmaps
Grundlage des Texture-Mappings sind Bitmaps, die entweder im GIF- oder
JPEG-Format vorliegen, oder pixelweise im Feld image definiert werden.
Lichtquellen
Lichtquellen in VRML-Welten werden durch die Nodes DirectionalLight, PointLight
und SpotLight definiert. Die Parameter der einzelnen Nodes sind annähernd
dieselben und sind deshalb zusammengefaßt beschrieben. Jede Lichtquelle
wirkt sich nur auf Objekte aus, die nach ihr in der VRML-Hierarchie definiert
werden.Kameras
Kamerastandpunkte in VRML-Welten werden durch die Nodes OrthographicCamera
und PerspectiveCamera definiert. Die Standardeinstellung ist eine PerspectiveCamera
im Punkt (0, 0, 1) mit Blickrichtung entlang der negativen z-Achse.
VRML-Nodes
Alphabetische
Liste aller in VRML 1.0 definierten Nodes.
AsciiText
Text
Cone
Kegel
Coordinate3
Definition 3D-Koordinatenmenge
Cube
Quader
Cylinder
Zylinder
DirectionalLight
gerichtetes Licht
FontStyle
Textformatierung
Group
Gruppenbildung allgemein
IndexedFaceSet
Definition Oberflächenmenge aus 3D-Koordinaten
IndexedLineSet
Definition Linienmenge aus 3D-Koordinaten
Info
Information
LOD
Level of Detail
Material
Materialdefinition
MaterialBinding
Definition Material-Anwendung auf 3D-Flächenmengen
MatrixTransform
Kombinierte Transformation
Normal
Definition Normalenmenge
NormalBinding
Definition Normalen-Anwendung auf 3D-Flächenmengen
OrthographicCamera
Blickpunkt parallele Projektion
PerspectiveCamera
Blickpunkt perspektivische Projektion
PointLight
Punktlicht
PointSet
Punktmenge aus 3D-Koordinaten
Rotation
Rotation (siehe auch Transform: rotation)
Scale
Skalierung (siehe auch Transform: scaleFactor)
Separator
Gruppenbildung (hierarchisch)
ShapeHints
Definition Rendering von 3D-Flächenmengen
Sphere
Kugel
SpotLight
gerichtetes Licht, kegelförmig
Switch
Auswahl unter mehreren Nachfolgern
Texture2
Definition 2D-Textur
Texture2Transform
Definition 2D-Textur-Transformation
TextureCoordinate2
Definition 2D-Textur-Koordinaten
Transform
Geometrische Transformation
TransformSeparator
Gruppenbildung (mit Sicherung der akt. Transformation)
Translation
Verschiebung (siehe auch Transform: translation)
USE
Instanziierung eines mit DEF definierten Nodes.
WWWAnchor
Hyperlink
WWWInline
Einbindung externer VRML-Datei
|