Lighthouse3d.com

Send me bugs and suggestions, please
VRML Script Tutorial
Full list

VRML Interactive Tutorial

Introduction
VRML File Structure
Drawing: Shape node
Geometry Nodes:
Box
Sphere
Cone
Cylinder
PointSet
IndexedLineSet
IndexedFaceSet
Extrusion
ElevationGrid
Example: Chessboard
Text
FontStyle
Appearance
Material
Textures
Image Texture
Movie Texture
Pixel Texture
Texture Coordinate
Texture Transform
Let there be Light
Directional Light
Point Light
Spot Light
Materials with Colored Lights
Hierarchical Node Structures
Group
Transform
Collision
Anchor
Billboard
Switch
Inlining Files
Defining and Instancing Nodes
Defining Levels of Detail
Events in VRML
Creating Paths between events: ROUTE
Generating Events based on Timers or User Actions
Timers
Touch Sensor
Visibility Sensor
Dragging Sensors
Plane Sensor
Sphere Sensor
Cylinder Sensor
Proximity Sensors
Example: Proximity sensor
Interpolators
Color
Coordinate
Normal
Orientation
Position
Scalar
Example
Let the Music Play
Sound
AudioClip
Bindable Nodes
Who Am I: NavigationInfo
Where Am I: ViewPoint
Adding Realism to the world
Background
Fog
Information about your world
WorldInfo
Definition for Auxiliary Nodes
Coordinate
Color
Normal

Z6y ];CƼ.YN%s*[Tlש-Ϭ "AcBёd<)Hu)n4ݛ0cյ~\׷B [튂OX(<~X1C]Kl:/e}ݝ8y6K9fԏu{jS[@O4t<^UմGiׯiZ¹[_Dk- Wf8{PF{F/*T  b ,n[tfQҖñA$xs1 y̧w2B1o5WzN{Ubߦ(avώ\C I5x)&gA{lJċ&cd12h@S=\7K(sRQ`EF@IN ~Ur]mohV(ƷyRL }|dJ!lvKO܁d,^M ’&^z!K0lɆB0I0;crUuq)gYЁTh+Qb$m%鬩,80Ds m2cc=3ϜG㠍E3u8! (IӗOxzVng_(uNIA.D7Q@x'b U'[\?I^{͵у28R~L|qXwSEN#zs;hf=g"^yKϷ@QT.EH?`nVv m?s! U٤0j-BH?6^Y",Ry0C)sg,k;WWļgQ`]F-E_߿o-;܅dygZmc 0P50j3P IAY:h>`O!!鷬,$A SDkJ2.):)JyP%4 N6 擗E''vKgks6xd* F#eNeu[wK .ŕgq/dL^ou\R] |ss]׬ IۀU[wL߫ZN =.";sPdVwmű:bd@^ܵ`$cQz!1'JhBvӛ#H;ׅTNi;Օ<4hd֧$HbբqAk?rDe9_gbxmd%KDC`ŢB4b0܏G|D c%e3(,IdGbGL2 !_B%73w VMf=/JXo+<廉?ѩrZ?~)H)>4f#N<[&p2\-$w{E>KX(Uv^xR.%tWZRmW k+R8^ ,$Y0IM,E`Ueh ֪ jkeZWW uEW fvsqycOrin1R704XX_W_"Uhr=D^(/L!!% e: w7榐"%m"͝G}<? |LR8B " P`VI])U2%$`n >Uхt+[x G6G&ɞ `XfS:;' 58XP>dRL*8`R0V܅LYncKj|F*i^ εTקOrJbt7L٦DBIYnmwC'(҂ qJ&ᵀ?^Q^nNv5@K mK6fu`iT̂*tfԬγx+k^~Wlkܼ~МAbSα7.95.~Z.7>9]yF|*.vˇvrX/ ᕗo~z;C 9 '3$@,]xz;uT=+gjUgu6t <*aˈS"N85.\sNUˇo^&;~'qߴ6]U\Gz~p쮸뫆our۸Jڗ]E0[pE5` .BY i ʃe&}s&{3ryOgK|jy:8 ?v5|,bg[L[aks=&՘(y=^MoΗCD">l+7]$HH:i2h]%rB ǁ[ UZSTN,%@NsVgn axY'pԹ3J`,S198}d;NvTN>u}mw8KO7.lMVKdx:G',TWA{Vpbb RkZ6Sq6r.Fc=<1|=CB3?'ɵֳzh>ʀݗKӼl0>MqoLo2Ke5~6?Y2D}b39qu'YKy<UcaN'IVwUk~:F |<[/I}\(ΌoKQ$it}K ʨ$L2tLK] &B$a`5. 5߳1%[T=71N?9^0>kJb+I ]0DG>7N\Bċ_兟0gNz17d?@PM]@X$6&^0=X3qEC?߆ˏ| c.,7qFҙtD؉DO@N"]{HQ͕A/}K&:a{ n/K3$@!^ժKZȕT\4Xz8Ar4p<p0O{$uP!D1Cز'~p2Hm d˙sfXr^m4bz{sc24ԕ"=ְI UPM%a lY`I;+5u@ZGC:6c'.o\[ Ud|>MbBmB(sggy럻cbMw_s lEmkEl>O|2("_, qN'JmnȤ֭F,,gz7zEZ),Çf纘nWu=OF^sZē=Q8h6 %#R"6cCpýpewW i/<Jl삜K[M-Nd:5`ż>y%LQ{GEOz>*QQlófjŏZ)zMkȟx׫6Gs^|^!2^!y\ٔǵMy\X6.й sfCyWl(#h~{w)fߐ1m! ]Eo5# \[Ž-Q,I+h3\q?Ev0%}}͡ OkOs1Ϙ^}rf?:K~?i);q_޻td:l1i2:&b xHf0/0e-+!1tyPܞj?PyYKHOKĽnebMļ> e=$")E:*]^hg @T䫅кC1;Q$+#V}0-:`沓|EP礕g^$u6ˍ-gF߃ɬb1TR49[魗!sP9 =mD)󫩔H HC :x-ZPC-_{yW$,a:å~Be;pҰd†^22 >z.jxѱ5gY,ky+dDRNJFY(t*Ƭy lgM*u$cǧ SoٻYMIs31@CbjJ3L l?too{{j`iô¯s̝θ;3W`Aί+F5lVPz:*qbX$ 넵Zڛ)G➖&Q=_[{IRRKuL~DT}&;{T:0J09B0([Ap/ 5+knYy[~GC}d{v) 壵T&Tju`tUZVcJž4fԛlG=|5}CÛdƲeCtՑD璝$)zߴ9>5Hv8/(Oqz|M{/ 2؉d>FFCy$!V`Os| j‹26$2҉A%%aǁęyU˝x277`l*!q%a%m['ʒ%IL͓SDym|[踰F)C \&6fÆJT+R m)2+1[i/RCh j %8W(+(_=vƜx4XG|rGur27&$*@a>*9BɄz14g߰ɉoȂ-1ɤblcSulmi$+Toe"9 >a dmw|9d\ @M3}¤%S&[S{༰${gc[}ݮf$ gVlJ=rFA{)1aqO%ǥ-.A0Recb/AMC~47+N0` ao@=C*֏"%r1y)G{ǝ'c.] "{\}!]a7x5%7Z]F8P IxT E&0֑IS8/tvDK,!@.mzUu:WSUM dWPLuy_1?;Y0C6`4g"$^yB֛xY/Nso9c^# 感RR^qR rDI;h ̓ 솦}1uzKEˮ)tAt4f@/"um҈`>xIbijr˖Rec?3:܂ag ָ\$mnU&+4Qq`+R6x`FsoH %%jc{#$9c3EP CN7`l^ VɦE}mb0r0I~Idf1y vs fi~~1qmD?ǷhlaXAUW Lj¥@DwFRmk ㊊$ !؊Y#| h:u~o^I6&v'xU %9% .]r8>,OUI%%x+c'qhXH %μ0ϐn$A-2'O>nHq'.aDU' gfsU\v&r"T~)m/ZtԂa@7(ךޙ^*z!-|={E2dLeZ{aͨJcGiYϒb zc>)7Uk>mf?'P)p:b,x}e^0a:w; xpBN%ęu}>G 6}L Z/giyӽ|WEȑ̶mYOݻc| %7LEUlƃ7I37p@9%Z^͓+ Z?u`>u3@ԃ<<ǽh0h h*9d%KhZoےiUfS}#|6$Z ;!E|Yc VN2ZxGGCϥP@)=.km[w`7VݘRG` ..~ᦴy@4khFV Um[פoʈوnsKtfhDnpqH|]JVAx>Vg3Z aϛP0ha*KxH'խ O%<4Ա:jp*=x-,7XI\,a0ŀ”v="Uآ88M3R)5߫u9pn.94y-ꯉuJ2ԊծƲ%r&F*9h]8"{i.fc E"]ݗխA}ЏRC؁-[迀%]DD1NmF@H5d;auM|\8hQpHTڵ`1_CMhQH+#,g S$vRPul?$!ړ hRCsWXCJ1F PFYÿ \ph2  >ndp6kI&#ARH4Rաh*m[{qF;GJg-HQMf)[J99mi: ELFY_&KQWEk%hוO)ZjZln+-[PR4aDY4m#W+5˼ w&)G~@jZ݂y9~uX|m9&;g*ٱl ya9N,m!(ϮLBMNxeWNor^8>֦OJ Q>6BuO(Đ,&b7o<Q:ۢ+ L;M%X"/^;'X}=gȶ+[ f&1latl:ٯTF^4e!|h(4=-yPI9FfV~Kpq)$5c' )Ю3GSc-' # {sh-魯aRv0bC-.2).űL\d=-sG1{TEu3Yk*#L 1_٭SY)0= cuQk)L :Thêef(Ыe](8oq-{hҴDQ! 'O%usT=T]cD2 L,wg eP>9"h.x^2>$c ON[&_OP]6͒&d/7B|6_I-u~UT? '^#oi؅7[f'oN>nB&{H%&}괙,]kWN`=a1{L5֑IO~rݖ]P+> }G6$.]]{vUI"[L}紹g85 .:mn kg'(uO6$?+=YjLLeBsգ7 {`>}ɞ,] DM?Jģ$钏׽fS_z2Wܾ>߾6[H}[:_!;Y%:/L˶W}l8b,YЄ <+ ~ˡ} ]֎=cCmKFAq_G;UV7 mY| ;FJ|ty6Wp+z?lЩǶ}AQ)-Euycݕ.3~`q6x8T-fIS;G]koFY~QD^8N>h],@ ņ"U{̐CR P$;CTʒlP@m5Y[~~7(>)ٯx.U 0VgJWLô79'`-&fh ܜ>(,6YTJCs z! ӵ[26{+Z )Iڸ6p<l8FZcStLYfI%28q1%|~n;$18SOld()HHfbjT{8␜"'IW'1S֖O.0Uj'm"r}r)\ kPR\H-RN҂529,+tՔ˺0*E $9.ANK9Wܦ÷,+2dmg \2Tky\mTYq&b(}c|jxĶЏ.O]T/hUﴼ%+v50S~ΔOɭ>C$8gөŮ~Z݈AAm7,04:_-SPKƵ nMکr,!CDOxK3)RүqgЏ>}agx,HQMU?VBZ΢VO{sop 7w*"sFW3MnGڡUʒW㬀)"qg*{YĘ S&:%Lq1o37SF}^sO4ŴjRAqoIKQ>:x@6WE,eи2eJ=S #M@'g;HXQJWo d&VQ9e=s~& uNhm h 2P1,:iqIZp@0<4;9V=*{_Z,o}Cv |QE;]}X /Z- bdamdvCDt?0 '&ehVPd!2Od537(UNy8X{7yD _-\H]VjP@2얕ErS+Qݩݧd ֟zV"gS@۰jrU [ zu# ff2Gq->wtSt /-T؃]R{Vs. SxYYPG sխWˆD&M"q]=jBy$Ya].QVm5f/< a VjBf43[u\P-+E놞:ύ bbTl sb2-SaPA>4ƐD, hS&pĴWA q` kE ][Ka`.ӅmmCQXPwXT .,kA }+>դt!쯍/uѳEăwb g6c I_TwIsRVTmRxF;>CUmhKmԎLKS^ÛWH]q-_)nCՃvP<.<a>J02[qq)*fI<"7_2BWFQuja쪶 ~?wr'ivI!IQ4&;fy,8mNYxyc c_hk\Γ|[Fz ^*#S<x~~u~ YL~z~/X-СQBۜ5͵C!w甛K-mf. 0uΰ^?Wك'ґa#y3'l4:> \=̖]&݈i˝pzWE^Q\UKj5ZD21,qI!OmB{ZZۀϜ;%a­ ;ٓq78l8 9h)$"yS^Gx_is}Ә?SAS]&Y+y։_&Sp->ݝVo`4z;jNZV;d)l|?5g JK,zWÜZuL;NQ 4y}ũ<I}wK

Introduction to the Tutorial


Hi, thank you for visiting my VRML Interactive Tutorial.

Good news for IE users! You can now fully benefit from this tutorial. I've updated the Try It Yourself section so that you can play with the worlds and update the VRML.

This tutorial covers the basics of VRML97 providing limitless source code due to its interactivity. Look for the "TIY" (Try it yourself") button on the top of some of the pages. Pressing this button opens a new window where you can play with the parameters and view the results. Source code using your parameters is also provided.

The left frame provides an index to the tutorial. There are sections about specific nodes as well as concepts required to fully understand all the fields involved.

This tutorial is likely to have bugs, and concepts which are not clearly explained. Please e-mail me, press the BUGS button, with bugs and suggestions. These e-mails will be much appreciated and will help me to provide a good tutorial.

I hope you enjoy the tutorial,

Antonio Ramires Fernandes