#VRML V2.0 utf8 # Mr. Phillip (C)1998 mr_phillip@msn.com # http://www.geocities.com/BourbonStreet/1855 NavigationInfo { # set_bind eventIn SFBool avatarSize [ 0.25, 1.6, 0.75 ] # exposedField MFFloat headlight TRUE # exposedField SFBool speed 1.0 # exposedField SFFloat type ["EXAMINE","ANY"] # exposedField MFString visibilityLimit 0.0 # exposedField SFFloat # isBound eventOut SFBool } DirectionalLight { direction -0.2 -0.6 -0.8 } DEF World Viewpoint { position 0 1.65 15 description "Shrine" } Viewpoint { fieldOfView 0.75 orientation 0 1 0 0 position 0 0 15 description "Shrine1" } Viewpoint { fieldOfView 0.75 orientation 0.24 0.95 -0.14 0.87 position 36 5. -29 description "Shrine2" } Viewpoint { fieldOfView 0.75 orientation 0.11 -0.991 0.066 0.97 position -41. 2 28 description "Shrine3" } Viewpoint { fieldOfView 0.75 orientation -0.0382227 0 0.999269 0 position 8 33 212 description "Shrine4" } Background { groundAngle 1.5708 groundColor [ 0.1 0.1 0.09, 0.48 0.48 0.45 ] backUrl [] bottomUrl [] frontUrl [] leftUrl [] rightUrl [] topUrl [] skyAngle [ 0.05, 0.1, 1, 1.5708 ] skyColor [ 1 1 0.8, 1 1 0.5, 0.125 0.125 0.5, 0.3 0.3 0.55, 0.64 0.734 0.844 ]} Transform { translation 0 3.25 0 children [ Transform { # shrine sphere with my smiling face # translation 0 0 0 children Shape { appearance Appearance { texture ImageTexture { url [ "newfacet.gif" ] } } geometry Sphere { radius .4 } } } Transform { # shrine top # translation 0 2 0 children Shape { appearance DEF MAT1 Appearance { material Material { #ambientIntensity 0.6 # exposedField SFFloat #diffuseColor 0.0 0.0 0.0 # exposedField SFColor emissiveColor 0 0 1 # exposedField SFColor #shininess 0.5 # exposedField SFFloat #specularColor 0 0 .2 # exposedField SFColor #transparency 0 # exposedField SFFloat } } geometry Box { size 8.25 0.25 8.25 } } } Transform { # shrine top next # translation 0 2.25 0 children Shape { geometry Box { size 6 0.25 6 } appearance USE MAT1 } } Transform { # shrine top most # translation 0 2.5 0 children Shape { appearance USE MAT1 geometry Box { size 4 0.5 4 } } } Transform { # shrine stacked base # translation 0 -2 0 children Shape { appearance USE MAT1 geometry Box { size 5 0.2 5 } } } Transform { # shrine mo base # translation 0 -2.2 0 children Shape { appearance USE MAT1 geometry Box { size 5.5 0.3 5.5 } } } Transform { # shrine mo mo base # translation 0 -2.5 0 children Shape { appearance USE MAT1 geometry Box { size 6 0.25 6 } } } Transform { # shrine even mo base # translation 0 -2.75 0 children Shape { appearance USE MAT1 geometry Box { size 9 0.5 9 } } } Transform { # first 1 pillar # translation -2 0 -2 children DEF pillar Shape { appearance USE MAT1 geometry Cylinder { height 4 radius .4 } } } Transform { # another 2 pillar translation 2 0 2 children USE pillar } Transform { # another 3 pillar translation -2 0 2 children USE pillar } Transform { # another 4 pillar translation 2 0 -2 children USE pillar } Transform { # another 5 pillar translation 2 0 0 children USE pillar } Transform { # another 6 pillar translation -2 0 0 children USE pillar } Transform { # another 7 pillar translation 0 0 2 children USE pillar } Transform { # another 8 pillar translation 0 0 -2 children USE pillar } Transform { # second row of 1 pillars # translation 3.5 -.5 3.5 children DEF pillar2 Shape { appearance USE MAT1 geometry Cylinder { height 5 radius .5 } } } Transform { # another 2 pillar translation 3.5 -.5 3.5 children USE pillar2 } Transform { # another 2 pillar translation -3.5 -.5 -3.5 children USE pillar2 } Transform { # another 3 pillar translation -3.5 -.5 3.5 children USE pillar2 } Transform { # another 4 pillar translation 3.5 -.5 -3.5 children USE pillar2 } Transform { # another 5 pillar translation 3.5 -.5 0 children USE pillar2 } Transform { # another 6 pillar translation -3.5 -.5 0 children USE pillar2 } Transform { # another 7 pillar translation 0 -.5 3.5 children USE pillar2 } Transform { # another 8 pillar translation 0 -.5 -3.5 children USE pillar2 } ] # End of root Transform's children } # End of root Transform #################### real cool guided tour part ################ Group { children [ DEF GuideTransform Transform { children [ DEF TourGuide Viewpoint { jump FALSE }, DEF ProxSensor ProximitySensor { size 50 50 50 } DEF StartTour TouchSensor { }, Transform { translation 2 2 8 children Shape { appearance Appearance { texture ImageTexture { url [ "clickme.gif" ] } } geometry Box { size .5 .5 .5 } # the guide box } } ] } ] } DEF GuidePI PositionInterpolator { key [ 0, 0.2, 0.3, 0.5, 0.6, 0.8, 0.9, 1 ] keyValue [ 0 1.75 0, #middle value was 1.0 0 1.75 -5, 2 1.75 -5, 2 6 -15 -4 6 -15, -4 2 -5, 0 2 -5, 0 2 0 ] } DEF GuideRI OrientationInterpolator { key [ 0, 0.2, 0.3, 0.5, 0.6, 0.8, 0.9, 1 ] keyValue [ 0 1 0 0, 0 1 0 0, 0 1 0 1.2, 0 1 0 3, 0 1 0 3.5, 0 1 0 5, 0 1 0 0, 0 1 0 0, ] } DEF TS TimeSensor { cycleInterval 30 } # 60 second tour ROUTE ProxSensor.isActive TO StartTour.set_enabled ROUTE StartTour.touchTime TO TS.startTime ROUTE TS.isActive TO TourGuide.set_bind ROUTE TS.fraction_changed TO GuidePI.set_fraction ROUTE TS.fraction_changed TO GuideRI.set_fraction ROUTE GuidePI.value_changed TO GuideTransform.set_translation ROUTE GuideRI.value_changed TO GuideTransform.set_rotation