Homework descriptions

  1. Simple static world
  2. Improved static world
  3. Dynamic world with animation
  4. Interactive world with scripting

Homework 1 - Simple static world

  1. Enter to Example1.wrl and explore all 3 navigation modes.
  2. Download and edit Example1.wrl (Transform params., Color params., Viewpoints).
  3. Add one more Cylinder using DEF & USE statements.
  1. Create your own "Virtual reality" HTML page with a title, names of all authors, their e-mails etc. Publish it in a public web directory under the name HW1/index.htm.
  2. Add the Example1.wrl to that page using EMBED tag and size 640x480 pixels

  3. (The example on the right is included into a page via <EMBED src="Example1.wrl" width=256 height=256>)
  1. Create a virtual traffic area (with a solid ground) and put it in your HTML page instead of the previous example.
  2. Make three simple vehicles (one vehicle per team member) from basic solids and place them on the traffic area using Inline node.
  3. Define several viewpoints and arrange them into a virtual tour.
  4. Make a ZIP of all related files and publish it on the HTML page as HW1.zip.

Evaluation issues:


Homework 2 - Improved static world

  1. Redefine each vehicle as a prototype (PROTO) with parameterized color. Put PROTOs in standalone files and place 2 instances of each prototype in the traffic area using EXTERNPROTO.
  2. Add texture to PROTO headers and use different textures for each instantiated vehicle.
  3. Turn off the avatar's headlight (NavigationInfo). Then define a light source (PointLight) above each vehicle. Publish the color of the light in PROTO header and use different light colors for individual instances of vehicles.
  1. Define three natural object (trees, bushes, flowers) and place them in the traffic area as Billboards. Each team member should prepare one such object.
  2. Define sky color consisting of at least 3 colors.
  3. Publish the project HTML page under the name HW2/index.htm. Publish also the HW2.zip with all relevant files.

Evaluation issues:


Homework 3 - Dynamic world with animation

  1. Define a ProximitySensor inside all vehicle prototypes. Let the light source is controlled by this sensor, i.e. the light is switched on when a user comes near to the vehicle.
  1. Connect TouchSensor with selected part of each vehicle. Let the vehicle moves forward and back (TimeSensor, PositionInterpolator) when avatar touches that part.
  2. Change a color of selected part of the vehicle (ColorInterpolator) during its movement.
  3. Define another timer running forever and change slightly a height of the vehicle (PositionInterpolator). The elevation of the vehicle base should be fixed to a ground. Publish the cycleInterval parameter of that timer in a prototype header. Let each vehicle changes its height with a different frequency.
  4. Make one part of the vehicle moveable via direct manipulation by a user (SphereSensor, CylinderSensor or PlaneSensor)
  5. Publish the project HTML page under the name HW3/index.htm together with appropriate HW3.zip file.
  1. OPTIONAL [+3 points]: Rotate wheels during movement of the vehicle, consider acceleration and smooth slowing down.

Evaluation issues:


Homework 4 - Interactive world with scripting

  1. Make a billboard with your plant (a natural object) as a PROTO defined in the same file as the vehicle is. Place several instances of the plant in the traffic area.
  2. Add a TouchSensor into the plant PROTO. Prepare an Animation1 showing how the plant grows (using a scaling in a proper direction). Prepare another Animation2 showing how the plant dies.
  3. Define a Script routed with that touch sensor. Let the first click starts Animation2, while the next click starts Animation1.
  4. Prepare new viewpoints placed in front of plants in the traffic area.
  1. Add an ACCELERATION handle/pedal/slider to the vehicle and use it for a control of a vibration speed (action 3 from the previous homework). You have to use a manipulator (PlaneSensor) and Script.
  2. Publish the project HTML page under the name HW4/index.htm together with appropriate HW4.zip file.

Evaluation issues:


This page has been updated by Jiri Zara - 18.3.2009