NODE AsciiText
Node ini mereka teks string "This is a cool demo world !" .Parameter spacing merujuk kepada ketinggian teks tersebut dan dalam kes ini ketinggiannya adalah 1 unit.Justification CENTER pula meletakkan kedudukan teks tersebut berada di tengah-tengah pada koordinat ( 0 , 0 , 0 ).Parameter width digunakan untuk menterhadkan kelebaran teks sekiranya perlu tetapi pada aturcara ini nilainya adalah 0 menunjukkan tiada had lebar diperlukan.Node Material digunakan untuk mengkhususkan permukaan pada bentuk yang dihasilkan.Manakala node Separator pula mengasingkan anak node dari yang lain .Node Separator termasuk lights , camera , coordinates , normal , binding dan sebagainya.
#VRML V1.0 ascii
Separator {
Material {
ambientColor 0.2 0.2 0.2
diffuseColor 0.8 0.8 0.8
emissiveColor 0 0 0
shininess 0.2
transparency 0
} # Material
AsciiText {
string " This is a cool demo world ! "
spacing 1
justification CENTER
width 0
} #AsciiText
} # Separator
NODE CONE
Node Translation mengkhususkan di mana ( dalam koordinat ) objek tersebut akan berada dalam scene.Node untuk Cone akan melukis bentuk kon dengan nilai radian 15 manakala tinggi 30.'Parts' merujuk kepada bahagian kon yang dilukis samada SIDES , BOTTOM atau ALL.Dalam aturcara ini , keseluruhan kon akan dilukis.Kon yang berbentuk 3D akan dihasilkan dengan kedudukan ditengah pada ( 0 , 30, 0 ) dan di atas teks dalam scene.
DEF Cone1 Separator {
Translation {
translation 0 30 0
} # Translation
Cone {
parts ALL
bottomradius 15
height 30
} # Cone
} # Cone1 Separator
NODE CUBE
Node Cube adalah objek berbentuk kotak segiempat sama atau kiub dengan lebar , tinggi dan panjang 30 unit.Kedudukan kiub ini berada ditengah (-45 , 30 , 0 ) yang dikhususkan dengan node Translation.Aturcara ini akan menyebabkan kiub keluar disebelah kiri kon.
DEF Cube1 Separator {
Translation {
translation -45 30 0
} # Translation
Cube {
width 30
height 30
depth 30
} # Cube
} # Cube1 Separator
NODE CYLINDER
Node Cylinder menghasilkan satu objek berbentuk silinder dengan ketinggian 30 unit dan radian 15 unit.Kedudukan silinder ditengah ialah ( 45 , 30 , 0 ) yang dikhususkan dengan node Translation.Aturcara ini menghasilkan keseluruhan bahagian silinder manakala parameter yang lain ialah TOP dimana akan menghasilkan permukaan atas silinder , BOTTOM menghasilkan permukaan dibawah dan SIDES pula menghasilkan sebelah permukaan silinder.Silinder yang dihasilkan akan berada di sebelah kanan kon.
DEF Cylinder1 Separator {
Translation {
translation 45 30 0
} # Translation
Cylinder {
parts ALL
radius 15
height 30
} # Cylinder
} # Cylinder1 Separator
NODE SPHERE
Node Sphere akan menghasilkan satu objek berbentuk sfera dengan kedudukan di atas kon ( 0 , 75 , 0 ) dengan ukuran 15 radian .
DEF Sphere1 Separator {
Translation {
translation 0 75 0
} # Translation
Sphere {
radius 15
} # Sphere
} # Sphere1 Separator
NODE COORDINATE3 , INDEXEDFACESET DAN INDEXEDLINESET
Dalam aturcara ini ia akan menghasilkan 2 objek berbentuk permata (diomand ).Satu objek permata mempunyai permukaan manakala yang lagi satu tiada permukaan.Dalam FaceDiomand Separator ia mengandungi node Coordinate3 dan node IndexedFaceSet.Node Coordinate3 digunakan untuk mengkhususkan titik dalam scene.Node IndexedFaceSet menentukan koordinat yang mana sepatutnya dihubungkan untuk menghasilkan satu kerangka permata.Node IndexedLineSet akan menghubungkan titik -titik dengan garisan diantara bucu.Sementara menggunakan koordinat yang sama , kita menggunakan node Translation untuk menaikkan garisan permata kepada 75 unit daripada lokasi sebenarnya.
DEF FaceDiamond Separator {
DEF DiamondCoords Coordinate3 {
point [
0 75 25, # 0
12.5 62.5 12.5 , # 1
12.5 62.5 37.5 , # 2
-12.5 62.5 37.5 , # 3
-12.5 62.5 12.5 , # 4
0 50 25 , # 5
]
} # DiamondCoords Cordinate3
IndexedFaceSet {
coordIndex [
0, 1, 2, -1,
0, 1, 4, -1,
0, 4, 3, -1,
0, 3, 2, -1,
5, 1, 2, -1,
5, 1, 4, -1,
5, 4, 3, -1,
5, 3, 2, -1,
]
} # IndexedFaceset
} # FaceDiamond Separator
DEF LineDiamond Separator {
Translation {
translation 0 75 0
&nbs p; } # Translation
USE DiamondCoords
IndexedLineSet {
coordIndex [
0, 1, -1,
0, 2, -1,
0, 3, -1,
0, 4, -1,
4, 1, -1,
1, 2, -1,
2, 3, -1,
3, 4, -1,
5, 1, -1,
5, 2, -1,
5, 3, -1,
5, 4, -1,
]
} # IndexedLineSet
} #DiamondLine Separator
NODE FONTSTYLE
Node ini membenarkan untuk menukar jenis teks yang telah ada dalam node AsciiText.Saiz tulisan/teks boleh dikhususkan , jenis tulisan ( SERIF , SANS dan TYPEWRITER ) dan cara tulisan tu dipersembahkan ( NONE , BOLD atau ITALIC ). Dalam aturcara ini , saiz tulisan ditambah kepada 15 dan jenis tulisan ditukar kepada TYPEWRITER.
#VRML V1.0 ascii
Separator {
Material {
ambientColor 0.2 0.2 0.2
diffuseColor 0.8 0.8 0.8
emissiveColor 0 0 0
shininess 0.2
transparency 0
} # Material
FontStyle {
size 15
family TYPEWRITER
style NONE
} # FontStyle
AsciiText {
string " This is a cool demo world ! "
spacing 1
justification CENTER
width 0
} #AsciiText
} # Separator
NODE MATERIAL , MATERIALBINDING DAN INFO
Node Material dan MaterialBinding membenarkan pengguna untuk mengkhususkan warna dan hasil bentuk objek dalam scene.Untuk mengkhususkan warna dalam VRML,ia menggunakan 3 nombor dalam setiap jujukan 0-1 iaitu merah , hijau dan biru (RGB).Node ini juga boleh digunakan untuk mengkhususkan bentuk yang bersinar dan lutsinar.Node MaterialBinding mengkhususkan bagaimana material digariskan untuk dibentuk dalam scene dan nilainya adalah salah satu daripada berikut (DEFAULT, OVERALL,PER_PART,PER_PART_INDEXED, PER_FACE , PER_FACE_INDEXED
,PER_VERTEX , PER_VERTEX_INDEXED )
# VRML V1.0 ascii
Separator {
Info {
string " This is a cool world!! "
} #Info
Material {
diffuseColor 1 0 1
shininess 0.2
transparency 0
} # Material
MaterialBinding {
value DEFAULT
} # MaterialBinding
NODE TEXTURE2
Node ini membaluti sekitar bentuk yang dihasilkan (fail .jpg atau .gif).Aturcara ini diliputi dengan tekstur papan (wood.jpg) disekeliling sfera.
DEF Sphere1 Separator {
Texture2 {
filename "wood4.jpg"
}
Translation {
translation 0 75 0
} # Translation
Sphere {
radius 15
} # Sphere
} # Sphere1 Separator
NODE TRANSFORM
Node ini digunakan untuk memberi skala , posisi atau pusingan bentuk yang dihasilkan dalam scene.Katakunci lain yang digunakan dalam node ini termasuklah translation , scaleFactor dan center.ScaleFactor X Y Z membenarkan pengguna untuk mengubah saiz objek dalam apa jua arahan manakala center pula membenarkan pengguna untuk mengkhususkan pusingan yang akan digunakan.
DEF Cube1 Separator {
Transform {
rotation 0 1 0 .7
} # Transform
Translation {
translation -45 30 0
} # Translation
Cube {
width 30
height 30
depth 30
} # Cube
} # Cube1 Separator
NODE PERSPECTIVECAMERA
Dengan menggunakan node ini kita boleh mengkhususkan lokasi kamera yang baru .Aturcara ini meletakkan pengguna di ( 0 , 30 , 240 ) ,dilihat dalam arah -z ( kedalam skrin ) dengan jarak tumpuan 5 dan ketinggian sudut .785 radian.
#VRML V1.0 ascii
Separator {
PerspectiveCamera {
position 0 30 240
orientation 0 0 -1 0
focalDistance 5
heightAngle .785
} # PerspectiveCamera
NODE SPOTLIGHT
Dengan menggunakan node ini kita boleh mereka sumber cahaya yang baru .Node ini mereka spot light pada half-intensity di lokasi ( 0, 0, 120).Warnanya juga boleh dikhususkan dimana dalam aturcara ini adalah berwarna putih.
#VRML V1.0 ascii
Separator {
PerspectiveCamera {
&nb sp; position 0 30 240
orientation 0 0 -1 0
focalDistance 5
heightAngle .785
} # PerspectiveCamera
SpotLight {
on TRUE
intensity .5
color 1 1 1
location 0 0 120
direction 0 0 -1
} # SpotLight
NODE WWW ANCHOR dan WWW INLINE
Node WWWAnchor membenarkan pengguna mencapai URL melalui salah satu objek.Apabila pengguna klik pada objek tersebut , ia akan disambungkan pada laman tersebut.Mengikut aturcara di bawah , medan nama adaalh alamat URL manakala map samada NONE atau POINT.Node WWWInline pula membenarkan pengguna menambah fail .wrl kedalam aturcara yang sedia ada.
Translation {
translation 0 15 -500
} # Translation
WWWInline {
name "1707d.wrl"
} #WWWInline
} # Separator
name "http://www.planet9.com/worlds/vrsf.wrl"
map NONE
DEF Sphere1 Separator {
Texture2 {
filename "wood4.jpg"
}
Translation {
translation 0 75 0
} # Translation
Sphere {
radius 15
} # Sphere
} # Sphere1 Separator
} # WWWAnchor