examPaper-GEng-2015-16 Sit Answers

doc

School

Simon Fraser University *

*We aren’t endorsed by this school

Course

255

Subject

Mechanical Engineering

Date

Dec 6, 2023

Type

doc

Pages

10

Uploaded by BailiffRaven3669

Report
Answer Key Game Engineering Level H Sit 2015-2016 Creative Technology Framework Unit Leader: Dr. Feng Tian Instructions 1. This paper contains 3 questions. 2. Each question carries equal marks (50 marks). 3. Answer any 2 of the questions (total exam marks 100). 4. Mathematical calculator is allowed. 5. If extra space is needed for your answer, then make a short note and continue to write on the back of the page. Student Name _______________________________________ Student identification number: ____________________________ Student Signature _____________________________________
Answer Key Question One (50 Marks) 1. Unity. Critically elaborate the differences between the three update methods - Update( ) , FixedUpdate( ), and LateUpdate( ) by answering the following. (12 marks) Update() (4 marks) a) What is the purpose of the method (i.e., what does it do?). b) When is the call used? Circle the best answer. i) Once per frame. ii) Multiple times per frame. iii) Once per object per frame. iv) None of the above. c) What is a typical use of the call? Circle the best answer. i) Non-physics transformations (e.g., object moving). ii) Physics transformations (e.g., forces on a rigid body). iii) Following a 3 rd person camera. iv) None of the above. FixedUpdate() (4 marks) a) What is the purpose of the method (i.e., what does it do?). b) When is the call used? Circle the best answer. i) Once per frame. ii) Multiple times per frame. iii) Once per object per frame. iv) None of the above. c) What is a typical use of the call? Circle the best answer. i) Non-physics transformations (e.g., simple timer). ii) Physics transformations (e.g., forces on a rigid body). iii) Following a 3 rd person camera. iv) None of the above. LateUpdate() 4 marks a) What is the purpose of the method (i.e., what does it do?). b) When is the call used? Circle the best answer. i) Once per frame. ii) Multiple times per frame. iii) Once per object per frame. iv) None of the above. c) What is a typical use of the call? Circle the best answer. i) Non-physics transformations (e.g., rotation). ii) Physics transformations (e.g., forces on a rigid body). iii) Following a 3 rd person camera. iv) None of the above.
Answer Key Answer: Update() is the most commonly used and called every frame. It deals with regular updates such as transforming non-physics objects (moving, rotation, etc.), simple timers, detecting and reacting inputs, etc. FixedUpdate() is used for physics calculations such as applying forces to a rigidbody. It is often called more frequently than Update(), such as multiple times per frame when the frame rate is low. LateUpdate() is called once per frame, after Update() has finished. A common use for LateUpdate would be a following third-person camera. If you make your character move and turn inside Update, you can perform all camera movement and rotation calculations in LateUpdate . This will ensure that the character has moved completely before the camera tracks its position. 2. Given a Unity C# script below: using UnityEngine; …} Critically elaborate the ‘deltaTime’ method by answering the following (8 marks). a) What is the purpose of the method (i.e., what does it do?). (4 marks) b) What are the consequences of not using the method? Consider the impact of different frame rates, hardware, and so on. (4 marks) Answer: Time.deltaTime is the time passed since last frame. If you want to move something at a constant velocity speed , for instance, multiply speed (here ‘10’ as in the script) by Time.deltaTime and you will get exactly the distance moved by the object since last Update. If Time.deltaTime is not used, the movement (or ‘translation’) of the game object may not be smooth, because by default the call Update() is frame based and you may have 30 frames a second or 60 frames a second or any variance based on the actual game setting and hardware such as graphics card. 3. Mechanics Dynamics Aesthetics Framework (12 marks) a) According to Hunicke, LeBlanc, and Zubek in their paper MDA: A Formal Approach to Game Design and Game Research , “each component of the MDA framework can be thought of as a .lens. or a view of the game separate, but causally linked. From the designer’s perspective, the mechanics give rise to dynamic system behavior, which in turn leads to particular aesthetic experiences. From the player’s perspective, aesthetics set the tone, which is born out in observable dynamics and eventually, operable mechanics.” Describe the purpose of the dynamics category in the framework in your own words.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Answer Key List three examples to help explain. (9 marks) b) Circle the best answer. (3 marks) i) The mechanics, dynamics, aesthetics framework is the only framework available for game developers. ii) The mechanics, dynamics, aesthetics framework is only useful for game researchers involved in the response time performance analysis of distributed games. iii) The mechanics, dynamics, aesthetics framework is a rigorous approach to help research and developers address the complexity of game design. iv) None of the above. Answer: Possible answers include systems for purchasing, building or earning game items, for designing, constructing and changing levels or worlds, and for creating personalized, unique characters. Many answers are possible. m/c: answer iii is correct. 4. Game Design Patterns (12 marks) a) List one game design pattern that is closely related to the dynamics category in the mechanics, dynamics, aesthetics framework. Provide details of the pattern as follows (6 marks). b) Briefly justify why the pattern is closely related to the dynamics category.(3 marks) c) Which of the following are game design patterns? Circle all that are true. (3 marks) i) Grinding ii) Playing by Appointment iii) Pay to Skip iv) None of the above. Answer: There are many possible answers including example patterns from the stealth game patterns, mobile game patterns, dark patterns. Many answers are possible. m/c: answers i, ii, and iii are all correct. 5. Game V&V (10 marks) a) Given the figure below, from the article written by Johan Hoberg, Differences between Software Testing and Game Testing , list two types of testing that are common to both General Software Testing and Game Testing. (4 marks) b) Prototypes. Circle the best answer.(2 marks) i) Code prototypes typically take less time to create than paper prototypes and are a more rigorous validation and verification technique. ii) Paper prototypes typically take less time to create than code prototypes and are a more rigorous validation and verification technique.
Answer Key iii) Paper prototypes typically take more time to create than code prototypes and are a less rigorous validation and verification technique. iv) Code prototypes typically take more time to create than paper prototypes and are a more rigorous validation and verification technique. c) Given the following collection of Stealth Games discussed in class: Combat Metal gear solid Choose one game. Provide one testing technique you believe is low priority for the chosen game; briefly justify your answer. (4 marks) Answer: There are many possible answers including functional testing, whitebox, blackbox, alpha, beta, gamma . m/c: answer iv is correct. Question Two (50 MARKS) 1. Unity. Critically elaborate the differences between the two function calls in Unity – Start( ) and Awake ( ) by answering the following (6 marks) Start() (3 marks) c) What is the purpose of the method (i.e., what does it do?). d) When is the call used? Circle the best answer. i) On an enabled script, before an Update() method is called. ii) On a script (enabled or not enabled), before an Update() method is called. iii) One or more times per script. iii) On an enabled script, after at least one Update() method is called. iv) None of the above. Awake() (3 marks) a) What is the purpose of the method (i.e., what does it do?). b) Discuss how the method is different from Start(). Answer: Start() is called on the frame when a script is enabled just before any of the Update methods is called the first time. Awake() is called when a scene starts, once for each object in the scene, regardless of whether or not the script is enabled. So, some initializations can be done in Awake() before Start(), as the Awake() is called on all objects in the scene before any object's Start() function is called.
Answer Key 2. Given the skeleton of a Unity C# script below: using UnityEngine; } Complete the script so that it gets the camera to follow a target game object smoothly, for example, a player. Use the space below for your answer. (8 marks). You need to define a few attributes (within the class ‘CameraFollow’), and complete the methods Start() and Update(). Using the pseudo-code is allowed, but you must demonstrate clearly the type of your attributes, the parameters of a function call (if any) and comment each line of your code. Answer: using UnityEngine ; using System . Collections ; public class CameraFollow : MonoBehaviour { public Transform target ; // The position that that camera will be following. public float smoothing = 5f; // The speed with which the camera will be following. Vector3 offset ; // The initial offset from the target. void Start () { // Calculate the initial offset. offset = transform . position - target . position ; } void Update () { // Create a postion the camera is aiming for based on the offset from the target. Vector3 targetCamPos = target . position + offset ; // Smoothly interpolate between the camera's current position and it's target position. transform . position = Vector3 . Lerp ( transform . position , targetCamPos , smoothing * Time . deltaTime ); } } 3. Mechanics Dynamics Aesthetics Framework (12 marks) a) According to Hunicke, LeBlanc, and Zubek in their paper MDA: A Formal Approach to Game Design and Game Research , “each component of the MDA framework can be thought of as a lens, or a view of the game separate, but causally linked. From the designer’s perspective, the mechanics give rise to dynamic system behavior, which in turn leads to particular aesthetic experiences. From the player’s perspective, aesthetics set the tone, which is born out in observable dynamics and eventually, operable mechanics.” Describe the purpose of the mechanics category in the framework in your own words.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Answer Key Provide three examples to help explain. (9 marks) b) Circle the best answer. (3 marks) i) The mechanics, dynamics, aesthetics framework is only useful for game researchers involved in the creative, game modelling activities. ii) The mechanics, dynamics, aesthetics framework is only useful for game developers involved in developing game engines. iii) The mechanics, dynamics, aesthetics framework is only useful for game researchers involved in developing game engines. iv) None of the above. Answer: Possible answers include for card games shuffling, trick-taking and betting The mechanics of shooters include weapons, ammunition and spawn points. The mechanics of golf include balls, clubs, sand traps and water hazards . Many answers are possible. m/c: answer iv is correct. 4. Game Design Patterns (12 marks) a) List one game design pattern that is closely related to the mechanics category in the mechanics, dynamics, aesthetics framework. Provide details of the pattern as follows. (6 marks) b) Briefly justify why the pattern is closely related to the mechanics category. (3 marks) c) Which of the following are game design patterns? Circle all that are true. (3 marks) i) Power-Ups ii) Person Views iii) Aim & Shoot iv) None of the above Answer: There are many possible answers including example patterns from the stealth game patterns, mobile game patterns, dark patterns. Many answers are possible. m/c: answers i, ii, and iii are all correct. 5. Game V&V (12 marks) a) Testing. Given the figure below, from the on-line article written by Johan Hoberg, Differences between Software Testing and Game Testing , list two types of testing that are used in Game Testing, but not in General Software Testing. (4 marks) b) Given the following collection of Stealth Games discussed in class: Combat Metal gear solid Choose one game. Provide two testing techniques you believe are high priority for the chosen game; briefly justify your answer. (6 marks)
Answer Key Answer: There are many possible answers including fun testing, play testing, level testing, realism testing. There are many possible answers depending on the characteristics of the game chosen. Question Three (50 MARKS) 1. With the Unity engine, the mipmap may be applied for texture mapping. With the mipmap, the trilinear interpolation can be set. Critically elaborate the mipmap and trilinear by answering the following questions. (8 marks) a) Give the definition of mipmap. What are the mipmaps which are normally defined, given a 512 x 512 texture? (3 marks) b) What are two advantages to using the mipmap? (2 marks) c) What is the trilinear interpolation? How many texels are sampled per pixel for interpolation? (2 marks) d) Give an advantage of using the trilinear interpolation. (1 marks) Answer: The mipmap means ‘many things in a small place’, a technique that takes an original, high- resolution texture image and scales it into multiple smaller-resolution texture maps within the same texture file. For example, given a 512x512 texture, we may store up to 8 mipmaps from 256x256, 128x128, 64x64, …, 1x1. I f the image to be rendered is big or close to the camera, the renderer uses a bigger texture map, while if it is smaller or farther away, then smaller textures are used. Using the mipmap filtering may handle the potential texture flickering problem, and reduce the process load. The trilinear interpolation is to perform a blend between the 2 nearest mipmaps (instead of just picking the 1 nearest), which requires 8 texels to be sampled per pixel. Using the trilinear interpolation will make the transition between between mipmap levels smoother. 2. Critically elaborate the Unity prefabs by answering the following questions. (6 marks) a) What are prefabs? Give one of advantages of using the prefabs for Unity game development. (3 marks) b) Give two differences between the prefabs and ‘normal’ Unity game objects. (3 marks) Answer:
Answer Key The prefabs in Unity are like a template from which you can create new object instances in the scene, especially where they don't exist in the scene to start with. They are pretty useful to creation of multiple objects like bricks, bullets, etc. One of advantages is that making changes to a prefab also changes any instances of the prefab that exist, unless you override properties on the instance. Two differences between the prefabs and ‘normal’ game objects are (1) a game object is a bag of components, and lives in the scene - it shows up in the Hierarchy, while a prefab is a copy of a game object converted into a reusable asset - it shows up in the Project folder; (2) a game object is serialized into Unity's custom database format in the Library, while a prefab is serialized as a file on disk. 3. Mechanics Dynamics Aesthetics Framework (12 marks) a) According to Hunicke, LeBlanc, and Zubek in their paper MDA: A Formal Approach to Game Design and Game Research , “each component of the MDA framework can be thought of as a lens. or a view of the game separate, but causally linked. From the designer’s perspective, the mechanics give rise to dynamic system behavior, which in turn leads to particular aesthetic experiences. From the player’s perspective, aesthetics set the tone, which is born out in observable dynamics and eventually, operable mechanics.” Describe the purpose of the aesthetics category in the framework in your own words. Provide three examples to help explain. (9 marks) Circle the best answer. (3 marks) i) The mechanics, dynamics, aesthetics framework is the only framework available for game developers. ii) The mechanics, dynamics, aesthetics framework is only useful for game developers involved in the GPU utilization analysis for 3D games. iii) The mechanics, dynamics, aesthetics framework formalizes a player’s consumption of games by breaking them into their distinct components (Rules, Systems, Fun) and establishing their design counterparts (Mechanics, Dynamics, Aesthetics) . iv) None of the above. Answer: Possible answers include competitive, collaborative, co-operative emotional reactions to the gameplay. m/c: answer iii is correct. 4. Game Design Patterns (12 marks) a) List one game design pattern that is closely related to the aesthetics category in the mechanics, dynamics, aesthetics framework. Provide details of the pattern as follows.(6 marks) b) Briefly justify why the pattern is closely related to the aesthetics category.(3 marks) d) Which of the following are game design patterns? Circle all that are true. (3 marks) i) Cut Scenes ii) Parallel Lives iii) High Score Lists
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Answer Key iv) None of the above Answer: There are many possible answers including example patterns from the stealth game patterns, mobile game patterns, dark patterns. m/c: answers i, ii, and iii are all correct. 5. Game V&V (12 marks) a) Testing. Given the figure below, from the article written by Johan Hoberg, Differences between Software Testing and Game Testing , identify where the following kinds of testing belong by filling in the table: (7 marks) b) Playtesting. Circle the best answer.(2 marks) i) All playtesting techniques can only be applied on paper prototypes. ii) Some playtesting techniques can be applied on prototypes (code or paper). iii) Playtesting techniques cannot be applied on any kind of prototype. v) None of the above. c) Given the following collection of Stealth Games discussed in class: Combat Metal gear solid Choose one game. Provide one Playtesting technique you believe is high priority for the chosen game; briefly justify your answer. (3 marks) Answer: Kind of Testing Game Testing? Yes/No General Software Testing? Yes/No Alpha Yes Yes Beta Yes Yes Blackbox Yes Yes Fun factor No Yes Gamma Yes Yes Usability Yes Yes Whitebox Yes Yes mc answer ii is correct. There are many possible answers depending on the characteristics of the game chosen.