Principles of Computer Game Design and Implementation. Revision Lecture

Similar documents
Second Semester Examinations 2012/13

Second Semester Examinations 2016/17

CPSC / Sonny Chan - University of Calgary. Collision Detection II

Collision Detection based on Spatial Partitioning

Spatial Data Structures

Spatial Data Structures

Spatial Data Structures

Spatial Data Structures

Spatial Data Structures

Simulation in Computer Graphics Space Subdivision. Matthias Teschner

MODELING AND HIERARCHY

Announcements. Written Assignment2 is out, due March 8 Graded Programming Assignment2 next Tuesday

Principles of Computer Game Design and Implementation. Lecture 23

Game Mathematics. (12 Week Lesson Plan)

Programming Game Al by Example

Collision Detection. Pu Jiantao.

Geometry proxies (in 2D): a Convex Polygon

Scene Management. Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development

CS535 Fall Department of Computer Science Purdue University

Collision Detection. These slides are mainly from Ming Lin s course notes at UNC Chapel Hill

Lecture 24 of 41. Collision Handling Part 1 of 2: Separating Axes, Oriented Bounding Boxes

Acceleration Data Structures

Graphs, Search, Pathfinding (behavior involving where to go) Steering, Flocking, Formations (behavior involving how to go)

CS GAME PROGRAMMING Question bank

Speeding up your game

Using Bounding Volume Hierarchies Efficient Collision Detection for Several Hundreds of Objects

Principles of Computer Game Design and Implementation. Lecture 11

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Spatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology

Topic 10: Scene Management, Particle Systems and Normal Mapping. CITS4242: Game Design and Multimedia

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

Lecture 18 of 41. Scene Graphs: Rendering Lab 3b: Shader

I may not have gone where I intended to go, but I think I have ended up where I needed to be. Douglas Adams

Ray Tracing III. Wen-Chieh (Steve) Lin National Chiao-Tung University

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016

This week. CENG 732 Computer Animation. Warping an Object. Warping an Object. 2D Grid Deformation. Warping an Object.

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

Lecture 25 of 41. Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees

To Do. Advanced Computer Graphics. The Story So Far. Course Outline. Rendering (Creating, shading images from geometry, lighting, materials)

Ray Tracing Acceleration. CS 4620 Lecture 20

Overview. Animation is a big topic We will concentrate on character animation as is used in many games today. humans, animals, monsters, robots, etc.

Lecture 16. Introduction to Game Development IAP 2007 MIT

MANAGING MODS Imported mods are located in:..\[steamlibrary]\steamapps\common\purefarming \ PureFarming_Data\StreamingAssets\IMPORTER\mod

Animation. Keyframe animation. CS4620/5620: Lecture 30. Rigid motion: the simplest deformation. Controlling shape for animation

Engineering Real- Time Applications with Wild Magic

3D GRAPHICS. design. animate. render

CS 352: Computer Graphics. Hierarchical Graphics, Modeling, And Animation

Intersection Acceleration

CS 378: Computer Game Technology

Collision and Proximity Queries

Pathfinding Decision Making

Chapter 11 Global Illumination. Part 1 Ray Tracing. Reading: Angel s Interactive Computer Graphics (6 th ed.) Sections 11.1, 11.2, 11.

Interactive Computer Graphics

Hierarchical Modeling and scene graphs

Collision handling: detection and response

Spatial Data Structures and Speed-Up Techniques. Ulf Assarsson Department of Computer Science and Engineering Chalmers University of Technology

Ray Tracing. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner)

Animation. CS 4620 Lecture 32. Cornell CS4620 Fall Kavita Bala

Collision Detection II. These slides are mainly from Ming Lin s course notes at UNC Chapel Hill

Subdivision Of Triangular Terrain Mesh Breckon, Chenney, Hobbs, Hoppe, Watts

Universiteit Leiden Computer Science

TDA361/DIT220 Computer Graphics, January 15 th 2016

Course Outline. Advanced Computer Graphics. Animation. The Story So Far. Animation. To Do

Accelerated Raytracing

improving raytracing speed

Overview. Collision detection. Collision detection. Brute force collision detection. Brute force collision detection. Motivation

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?

Course Review. Computer Animation and Visualisation. Taku Komura

Advanced 3D Game Programming with DirectX* 10.0

Math for Gameplay / AI. John O Brien Senior Gameplay Programmer Insomniac Games, Inc

CURRICULUM STRUCTURE Topics Covered Term 1: Term 2: Term 3:

Ray Tracing Acceleration Data Structures

Dgp _ lecture 2. Curves

Simulation (last lecture and this one)

COMP371 COMPUTER GRAPHICS

Solid Modeling. Thomas Funkhouser Princeton University C0S 426, Fall Represent solid interiors of objects

Principles of Computer Game Design and Implementation. Lecture 13

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13

CMSC 425: Lecture 10 Geometric Data Structures for Games: Index Structures Tuesday, Feb 26, 2013

Collision Detection with Bounding Volume Hierarchies

Application of Collision Detection Algorithm in 2D Animation Design

Topics. Ray Tracing II. Intersecting transformed objects. Transforming objects

Consider a partially transparent object that is illuminated with two lights, one visible from each side of the object. Start with a ray from the eye

Game AI: The set of algorithms, representations, tools, and tricks that support the creation and management of real-time digital experiences

Algorithms for GIS:! Quadtrees

Keyframe Animation. Animation. Computer Animation. Computer Animation. Animation vs Modeling. Animation vs Modeling

Bounding Volume Hierarchies

(Refer Slide Time: 00:01:27 min)

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

Collision detection. Piotr Fulma«ski. 1 grudnia

Rigging / Skinning. based on Taku Komura, Jehee Lee and Charles B.Own's slides

Integrating Physics into a Modern Game Engine. Object Collision. Various types of collision for an object:

Unity Game Development

11 - Spatial Data Structures

Advanced 3D-Data Structures

Collision Detection. Motivation - Dynamic Simulation ETH Zurich. Motivation - Path Planning ETH Zurich. Motivation - Biomedical Simulation ETH Zurich

Collision detection. Piotr Fulma«ski. 19 pa¹dziernika Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

MSBVH: An Efficient Acceleration Data Structure for Ray Traced Motion Blur

Computational Geometry. Definition, Application Areas, and Course Overview

Transcription:

Principles of Computer Game Design and Implementation Revision Lecture

Introduction Brief history; game genres Game structure A series of interesting choices Series of convexities Variable difficulty increase 2

Mock Exam Questions In your opinion, why do game developers often design the game so periods of increased difficulty follow more relaxed periods? Ideal Game Difficulty Progression B B B B A A A A 3

Game Architecture Advantages of modular architectures Game structure Game code Game engine Tools Game loop Implementation languages 4

Mock Exam Questions What is the difference between game engine and game code? Describe the functionality of the main game loop. Illustrate your answer with a drawing. 5

Game Engine jmonkeyengine basics Image synthesis Model View Renderer Scene graph Geometries Nodes 6

Mock Exam Questions Describe the role of a renderer in the image synthesis process. What purpose do internal nodes have in a scene graph? Explain how transformations are applied to scene graph nodes. 7

Mathematical Concepts 2D and 3D vectors Translation Unit vectors Uniform motion Vector arithmetic V+W V-W kv 8

Mock Exam Questions Let V = (1,2,3) and W = (4,5,6). Find the value of V+W V-W 3V 9

Transformations Rotation Applied trigonometry Transformation matrix Matrix multiplication Vectors as 1x3 matrices 10

Mock Exam Questions Let V = (1,2,3) and W = (4,5,6). Find the angle between V and W. Let and Compute Compute 11

Dot & Cross Products Local coordinate systems Dot product Vector length Measuring angles Classifying angles Projection Cross product Normals 12

Mock Exam Questions Let V = (1,2,3) and W = (4,5,6). Find the value of V W V W V Find a vector orthogonal to both V and W 13

Collision Detection Overlap test V intersection test Consequences of poor collision detection Bounding volumes AABB OBB Bounding spheres Separating bounding volume Bounding volume hierarchies 14

Mock Exam Questions What game artefacts are a consequence of poor collision detection? Simple bounding volume shapes include spheres. Name one advantage of sphere over other bounding volume shapes. Outline a method that, given coordinates (x 1,y 1 ), (x 2,y 2 ) and radiuses r 1, r 2 of two bounding spheres determines if they overlap. 15

Spatial Data Structures Grids Spatial hash Quad- and octrees k-d trees Binary space partitioning trees Solid leaf BSP trees 16

Collision Response Animation V physics-based response Kinematics V dynamics Particle motion Euler steps Targeting problem Ball-plain collision Ball-ball collision 17

Mock Exam Questions Are there any advantages of collision response based on animation compared to collision response based on accurate physical modelling of collision? A ball moving uniformly with a constant speed collides with a stationary ball of the same mass. Assuming that collision is elastic, what will be the outcome of the collision? 18

Physics Engine Advantages and disadvantages (V homegrown solution) Integration with the game engine 19

Mock Exam Questions Name two advantages of using a home-grown physics implementation compared with using a third-party physics engine. 20

Game AI What is game AI V traditional AI discipline Requirement to game AI Intelligent entities Virtual player Agents Sense-think-act cycle 21

Mock Exam Questions Discuss the differences between game AI and the traditional AI discipline. What are the requirements on computer game AI? Explain the difference between a virtual player and an intelligent agent. What is meant by 100% optimisation in computer game AI? 22

Game Tree Board games Minimax Chance games. Expectiminimax 23

Mock Exam Questions Given a game tree, find out the minimax value of the root. Given a chance game tree, find the expectiminimax value of the root. 24

Decision Making (1) Decision tree Advantages over hard-coding choices Learning decision trees Rule based systems in games Finite state machines Basic defs Implementation approaches HFSMs 25

Mock Exam Question Given the following table representing decisions taken by human players, and considering attributes in the order Ammo, Cover, Health, learn a decision tree. Health Cover Ammo Decision Healthy In Cover With Ammo Attack Hurt In Cover With Ammo Attack Healthy In Cover Empty Defend Hurt In Cover Empty Defend Hurt Exposed With Ammo Defend 26

Mock Exam Questions Assume you are modelling the behaviour of a cleaner robot, that constantly goes through three states: Search for trash, head for trash, head for container. What decision making model is best suitable to represent this behaviour. Model the robot behaviour clearly indicating states and transitions. Extend the model with the ability for the robot to interrupt and recharge making sure that the robot comes back into the state in which it was before power went low. 27

Decision Making (2) Behaviour trees Architecture Actions, conditions, decorators Emerging behaviour Planning GOB & GOAP STRIPS planning Hierarchical plans 28

Mock Exam Question Represent the following agent behaviour in a behaviour tree. Go to the door If the door is open, go into the room If the door is locked If you have the key, unlock the door, open it and enter the room Else break through the door and enter the room Indicate clearly tests, actions and composites. 29

Mock Exam Questions Consider an agent with Two goals Eat (5) and Sleep (3), where the number represent the insistence of the goal and Three actions: Eat snack: Eat-3, Sleep+0.25 Cook dinner: Eat-5, Sleep+3 Take a nap: Eat+1, Sleep-2 Which of the actions will be chosen by the overall utility reduction method? 30

Mock Exam Questions Given a planning problem find a solution E.g. monkey and banana problem 31

Character Movement Steering behaviours Pathfinding Tile-based games 3D Waypoints Navigation meshes Hierarchical pathfinding 32

Mock Exam Questions Discuss the advantages of considering how a character moves on two levels: steering and pathfinding Compare waypoint pathfinding with navigational meshes pathfinding. What are advantages and disadvantages of both? 33

Other Topics Animation Keyframe animation, skeletal animation, inverse kinematics Procedural content generation 34

Mock Exam Questions What are difficulties in fully automated level generation in computer games? What is the purpose of inverse kinematics? 35