Skip to content
Pippin Barr edited this page Feb 5, 2018 · 8 revisions

Lights, Camera Prototype Group-Based Playtesting and Discussion

Playtesting instructions

  • Set up in the room to prioritise having three people at each set of desks
  • Form groups of 3 according to the desks you are sitting at so you can each play each others' prototypes (if we end up with one group of 2 or 4 that's fine)
  • We have 30 minutes for playtesting and group-discussion so:
    • For each game spend 10 minutes playing and discussing (adjust this to fit 30 minutes total based on group size)
    • Play it as a group (the developer can demo the game or the other group members can play it)
    • Discuss the game according to the approach outlined below
    • By the end you should be confident that any member of the group can speak intelligently about the prototype, its intent, and what it tells us about lights and camera in games (and beyond)

Prototype discussion steps

  1. The artist/developer describes their goals with the work, including how it may have changed over the process. Aim to be clear about what the prototype is intended to convey.
  2. The others offer positive feedback about their experience/understanding of the prototype. Aim to be specific in your discussion here, avoid generalities.
  3. The artist/developer asks the others questions about their experience/perception. The more specific the questions the better.
  4. The others ask the artist/developer questions about the work. Aim for neutrality here, but this is a good place to push developer to think more deeply about their work's potential.

Lights, Camera Prototype Class Discussion

  • We will discuss the prototypes as a class by volunteering our thoughts about specific work that impressed us or made us think differently about the subject matter
  • Every student should be ready to speak about both their own prototype in reflection on the discussion and about their group-mates' prototypes

Sound in Videogames

"The standard", SFX and Music

  • Diegetic and extra-diegetic sound effects
    • The explosions and engines in Tanks! are diegetic
    • The launch sound is extra-diegetic (?)
    • Why do we need extra-diegetic SFX? Do we?
  • Diegetic and extra-diegetic music
    • The music in Tanks! is presumably extra-diegetic? What would it mean if it were not? How could you indicate this through design?
  • Ambient sound
    • v r 1 as an example of incredible simple ambient sound (is it diegetic or extra-diegetic?)

Speech

  • Many games have character dialog as audio (What are the risks/rewards of this?)
  • Bioshock and others as an example of speech as narrative context
  • The Witness as an example of speech for philosophical context
  • The Stanley Parable as an example of interactive narration as opposed to dialog (see also: Bastion)
  • Path Out as an example of the developer stepping into the frame with audio (and video)

Perception

  • Hearing can be skilful and therefore part of the dynamics of a game
  • Blind Drive is an example of using spatialised sound as a skill-based challenge
  • The Witness includes a set of sound-based puzzles that require intense listening to the environment
  • Because it's ephemeral, sound also has interplay with the idea of memory
  • How else can we make sound perception challenging?

Input

  • With a microphone we can use sound as a form of input
  • Various karaoke-oriented games like Singstar
  • GNILLEY is a direct and simple example of this
  • Sound Self as an example of abstract emotional sound production and visualisation

Performance

  • Performing music is an entire genre of games
  • Guitar Hero and Rock Band are quintessential examples
  • Epic Sax Game is my own attempt at this
  • How do we evaluate sound performance? (Rhythm is a great fit with computation, frequency analysis is possible but difficult, ...)
  • Performance is usually strictly musical, what about sound effects and dialog?
  • Dark Room Sex Game is an indirect performance of sound that points to the intimacy it can create (particularly in the absence of a screen)

Generative/Procedural

  • Computation can produce music (most obviously through oscillator manipulation and sequencing sound samples)
  • John Cage was preoccupied with the idea of a music of chance operations in his compositions for the Prepared Piano and the famous 4'33" (Death Metal Cover), he even used things like the I Ching
  • Sound System I was my attempt to create 'natural' music in this way via a videogame physics engine
  • Sound System II was a continuation of this idea
  • Proteus remains a beautiful example of procedural landscape music

Sound in Unity

  • You can download the Sound Package of examples of some of the idea below from the Sound Release Page.

The new AI Package

  • The sound package is made on top of a new version of the AI package
  • Most important difference: all tanks are based on a BaseTank prefab that can be either a Human or AI player based on its setup (TankManager.cs is thus changed to reflect this, including an isAI checkbox and the option to put in a start AI state to determine AI behaviour)
  • Idea was to make it much simpler to create new versions of the basic tank prefab and have it be able to be either human or AI without further work on prefabs

Sound in the Editor

  • Sound can only be heard if there is an AudioListener. It's usually attached to the camera by default. (This means that in the case of first-person or other moving cameras the sound can be spatial.)
  • Actual sounds are represented by an AudioClip which is literally a sound file in mp3, wav, etc. formats
  • Sound is played by an AudioSource attached to a game object. An audio source has an assigned AudioClip that it can play. We can add filters to a source, change its spatial parameters, and channel it to a specific mixer. (examples in Sounds Package)
  • There is a thing called a Reverb Zone in the editor which can denote specific areas of reverberation (generally to denote different spaces like the difference behaviour of sound between outdoors and a cathedral)

Sound and Scripting

  • The most basic scripting command is to call Play() on an AudioSource to play the sound (which will then be heard by an Audio Listeners in the scene.
  • As you might imagine, you can dynamically change properties on the AudioSource such as filters, 3D spatialisation, etc.
  • A key question is when to play a sound.
    • The Tanks! game plays sounds on specific events (charging a shot, firing, a shell exploding)
    • We can also play sounds based on events like OnTriggerEnter to have spatially triggered sounds (example in Sounds Package)
  • Another question might be which sound to play
    • You can explicitly set the clip property of an AudioSource in order to specify the sound file it should play and could choose this dynamically (example in Sounds Package)
  • A further question might be getting sound input through the microphone
    • Use something like this Microphone Demo to get access to the microphone (example in Sounds Package)
    • (Note: Updates in Unity mean that in the Sounds Package version the microphone Audio Source is routed to a mixer mixed down to be silent to avoid feedback loops in the audio! Also deleted a bunch of code relating to the guy's user-interface elements for his visualiser.)

Clone this wiki locally