PhET Energy Skate Park Interaction Sketch

Archived Documentation

This is archived documentation.

Summary

  • Top of page there is a general description of the track:

    • Follow a heuristic for describing a track (see Track Description Heuristic below)

  • First tab puts focus on the skater.
  • Press Enter to pick up skater.
  • Arrow keys / WASD to move skater around screen.
  • As skater moves around, text descriptions are generated indicating:
    • Where the skater is on the screen
    • What is below the skater (i.e. what happens if the user releases the skater - where it will fall)
  • Press Enter to place skater.
  • If the sim is in "Play" mode, then the skater would immediately fall. If the sim is in "Pause" mode, then the skater would stay in place until un-paused.
    • Todo: It should be communicated somehow that the user is in a paused or play state.
  • Focus remains on the skater as it begins to move - thus allowing the user to pick it back up at any point by pressing Enter again.
  • Pressing Enter while moving and focused, the skater will be "picked up" and the sim pauses.
    • Need good cues for "repositioning" state and "play" state.
  • While the skater is moving along the track, sonification with text description updates will be reported.
    • Up, down, slowing down, etc.

Track Description Heuristic

  1. How many sections of track are there?
    1. A section is a continuous length of track.
  2. For each section:
    1. Where is its location relative to the screen.
      1. Establish a reference system for the screen: top, bottom, left, middle, right.
      2. If it overlaps another section in an interesting way, describe it.
    2. What is its general shape?
      1. top-bottom, left-right
      2. Common vocabulary for shapes: loops, hills, spikes, valleys, drops
      3. Common vocabulary for descriptors: gradual, gentle, steep, sharp
      4. Common vocabulary for physical size: large, medium, small
      5. Common vocabulary for direction: up, down, left, right, vertical, horizontal

Skater Movement Description Heuristic

  1. Where is the skater going?
    1. Location:
      1. stereo sound for left / right location
      2. how do you represent up or down? Pitch?
    2. General labels read as the skater moves
      1. "Entering loop", or "Going up steep slope". Make this configurable - disabled by default and rely on sonifications initially.
      2. Use the same vocabulary used in the track description (see above)
  2. How fast is the skater going?
    1. Speed: sound of wheels (sonification) with noticeable "ticks" like cracks on the pavement / sidewalk. The more frequent the ticks, the faster the skater is moving. Sound should be like smooth, polished concrete.
  3. Skater states:
    1. Moving
    2. Stopped
    3. Falling
    4. Off the track
      1. use a distinct sound than the track surface. Perhaps something that sounds a bit rougher (like asphalt), but without the distinct ticks of the track?

Programmatic Track Analysis

Since we know the location of each section of track, it should be possible to programmatically generate track descriptions.

For example if X value repeats itself, and y-value goes from low to high, then you have a loop.