IMGD 1001 Practice Final Exam Solution

  1. What is a texture and how does it relate to a shader?

    Ans: A shader defines the surface property of an object (ie- how
    shiny, bumpy, how light effects it).  A texture is a bitmap that is
    plugged into shader that defines image we want to appear on object
    (ie- such as a picture of letters on an otherwise flat sign).
    
  2. Provide some brief examples of how lighting can be used to influence mood.

    Ans: Color can be used to indicate mood.  For example, a green wash
    can indicate peace for the player while a red wash can indicate
    warning.  Lighting can indicate mood, with shadows providing mystery
    or warning.
    
  3. What is a key light? What is a fill light? What kind of light would you use to make "pools of light" in a scene?

    Ans: A key light is the main light source, the most intense and the
    majority.  It's put at angle to define 3-D forms.  A fill light brings
    out some details out of shadow and works well at angle.  A backlight
    is placed behind and slightly above or below object to help define
    shape.  It highlights edges, pulls away from background.  To make a
    pool of light, an artist would probably use spot lights with focused
    beam on single location since they provide great control over the
    lighting.
    
  4. What is level design? Roughly, where does it occur in the game development process?

     
    Ans: Level design is the process of creating levels for a game,
    using the implemented development tools and gameplay rules, with the
    intent of providing interesting gameplay.  Level design occurs in the
    latter stages of game development when most of the game coding and
    content has been created.  
  5. What is player-to-gameplay balance? Why is it important? Provide one way it can be done poorly in a game. Describe one way you can fix the same poorly-done example.

    Ans: Player-to-gameplay balance is where the player's relationship to
    the game is appropriate for their skill.  This can be done poorly if
    an interface is very complicated but full-knowledge of the interface
    is needed before the player can even progress past the first level.
    This could be fixed by making only some basic parts of the interface
    needed at first, requiring (and rewarding) the player to learn
    additional components of the interface at later levels.
    
  6. What is impermanence as a tool for ensuring interesting choices? Describe how you could use it in a first-person shooter game to make the gameplay more interesting.

    Ans: Impermanence is a compensation technique for making
    something that is beneficial for the player not last forever.  In a
    first-person shooter, this could mean making a grenade launcher with
    limited ammunition or an invulnerability shield that only lasts for 30
    seconds.
    
  7. What are supporting investments as a tool for ensuring interesting choices? Describe how you could use them in a real-time strategy game to make the gameplay more interesting.

     
    Ans: Supporting investments support a secondary goal towards the
    game objective.  In a real-time strategy game, a primary goal could be
    defeating an enemy and a supporting investment could be armor so the
    soldiers (that can defeat the enemy) are tougher.  
  8. What is positive feedback for a synergistic game relationship? Provide an example.

    Ans: a synergistic relationship is one in which multiples
    of some item or items is not additive.  "Positive feedback"
    is a synergistic relationship where 2+ items are better than
    the sum of each item.  An example would be two soldiers that
    can guard each others back, thus having better armor than
    either alone.
    
  9. What is version control software? Why is it useful?
    Ans: A database containing files and past history of them.  It
    provides a central location for all code and allows the programming
    team to work on related files without overwriting each other's work.
    the database preserves the history to help track down errors and
    provides branching and merging for platform specific parts.
    
  10. Name the steps in the process of debugging, as discussed in class.
    Ans: Reproduce the problem consistently, look for clues, pinpoint the
    error, repair the problem and test solution.
    
  11. What is a finite state machine? Why are they often useful for programming game AI?
    Ans: A finite state machine (FSM) is an abstract model of computation.
    It consists of a set of states, a starting state, an input vocabulary
    and a transition function that maps inputs and the current state to a
    next state.  For programming game, there is a natural correspondence
    between states and behaviors.  This makes FSMs easy to understand,
    diagram, program and debug.
    

Back to course page.