Game Production: game development

Size: px
Start display at page:

Download "Game Production: game development"

Transcription

1 Game Production: game development Fabiano Dalpiaz 1

2 Outline Lecture contents 1. Development team and tasks 2. Game dev vs. Software dev 3. Tooling 4. Game engines 5. Sub-disciplines 2

3 1. Development team and tasks Software development team Main roles Technical director Lead engineer Engineers (developers) Network (multiplayer) Sound Graphics Tools (for scripting, localization, game engine) Artificial Intelligence Developers are typically specialized At least in large projects Some generalists act as a glue For each subdiscipline, a lead developer may be defined The one that talks with the producer 3

4 1. Development team and tasks Team size Team size depends on the genre Action/adventure/online games require large teams AAA games require a massive amount of people Mobile and casual games need less people Indie games: very few and hard-working people Programming is often a smaller part of a project than the art/audio/model content creation Contractors may be included See lecture on planning and risk The size may vary over time 4

5 1. Development team and tasks Development teams: late 80s 1988, Sublogic s JET (an early flight simulator): 5 people Sublogic later made scenery for Microsoft's flight simulator 3 Programmers 1 Part-Time Artist 1 Tester 1989, Prince of Persia: 1 person Jordan Mechner You may want to read his book 5

6 1. Development team and tasks Development teams: Nineties 1995, Interplay's Descent: 11 people Used 3D polygon engine instead of 2D sprites 6 Programmers 1 Artist 2 Level Designers 1 Sound Designer Off-site Musicians 1996, Tomb Raider: 6 people It took 18 months to develop it Off-site musicians 6

7 1. Development team and tasks THQ s AlterEcho (2002): 19+ people 1 Executive Producer 1 Producer 4 Programmers 2 Game Designers 1 Writer 3 Level Designers 1 2D and Texture Artist 1 Audio Designer 3 Character Modelers and Animators 1 Cinematic Animator 1 QA Lead and Testers 7

8 1. Development team and tasks 2K s Bioshock, 90 developers, 30 contract Boston team Programmer: 1 Artists and Animators: 15, plus 2 borrowed from Firaxis Designers: 6 in-house, 1 contract Audio Developers: 2 in-house, 7 contract Producers: 3 in-house, 2 contract Testers: 13 contract, plus 8 on-site testers Australia team Programmers: 12, Artists And Animators: 10 Designers: 5, Audio Developer: 1, Producers: 2 Testers: 1 in-house, 7 contract Shanghai team Artists And Animators: 12 Designers: 3 8

9 1. Development team and tasks Recent games GTA V (2013) In total: 1000 people Only in Edinburgh: 360 Budget: $200M Sales (3 days): $1B FarmVille (2009) Developed in 5 weeks Core team size: 10 people Experienced people in the team Budget unknown Revenue (approx): $113M/year w-social-games-make-money-lessons-from-farmville.html 9

10 1. Development team and tasks Side-by-side comparison: tell the difference Assassin s Creed Revelation (2011) Fez (2012) 10

11 1. Development team and tasks Task 1: system design What is game development all about? Input: the requirements in the game design document Output: the actual game Don t dive into programming upfront Design the system first (e.g., via UML or others) Use cases Interaction diagrams Activity or state diagrams Class diagrams The design defines the architecture of the system Promotes modularity Fosters reuse 11

12 1. Development team and tasks Task 1: system design exemplified (static) 12

13 1. Development team and tasks Task 2: programming game code What to program? The game itself Camera behavior Score keeping AI for bots Often in scripting language Produce faster iterations that C++ or the alike Allow technical designers/artists to change behaviors More appropriate language for domain E.g., different languages for graphics and AI 13

14 1. Development team and tasks Task 2: programming game code Some events from a scripting language: COG 14

15 1. Development team and tasks Task 2: programming game code Some events from a scripting language: COG Used in the game Jedi Knight: Dark Forces 2 15

16 1. Development team and tasks Task 3: programming the game engine Support code that is not game specific More than just drawing 3D graphics That is actually the graphics engine, part of the game engine Isolate game code from hardware E.g., controller, graphics, sound Allows designers to concentrate on the game Common functionality needed across game Serialization Network communication Pathfinding Collision detection 16

17 1. Development team and tasks Task 4: programming support tools Many tools involve content creation Level editors Particle effect editors Sound editors Some automate repetitive tasks Convert content to game format Usually have no GUI Sometimes written as plug-ins for off-the-shelf tools Maya, 3dStudio, or Photoshop If no such extension is available, build from scratch 17

18 1. Development team and tasks Task 5: quality assurance Code reviews: examine code by other programmer(s) Asserts: force program to crash to help debugging Example: Check condition is true at top of code, say pointer not NULL before following Unit tests: a single unit of the game, often automated Acceptance tests: does high-level functionality work? Do levels load correctly? Bug tracking Document bugs, track their status, classify severity Helps see the game progress 18

19 2. Game dev vs. Software dev Results from a survey at Microsoft Survey with 300+ people at Microsoft working on games, MS Office, other products 1. Being able to communicate with non-engineers is highly valuable in my job Much more in games than office & other 2. My software is well tested by unit tests Much more in other 3. When I tell people outside of my company about the software I work on, they are impressed. More in games than office & other 19

20 2. Game dev vs. Software dev Results from a survey at Microsoft 4. My team uses a waterfall process, rather than an agile process. More in office and other than in games 5. Creativity is highly valued on my team More in games than in office and other 6. Creating my software requires a team of people, each with different skills More in games than in office and other 7. It's difficult to write thorough automated tests for my software because it's so complex. More in games than in other 20

21 2. Game dev vs. Software dev Results from a survey at Microsoft 8. My software has clear functional requirements More in office and other than in games 9. Most of the code I write is reviewed by other people. More in office than in games 10. My software creates value for society More in office than in games 11.My team adheres strictly to a process (for example, scrum or waterfall). More in office than in games 21

22 3. Tooling Game development is a socio-technical effort Social aspects Developers engage in a coordinated activity Proper interaction is needed to succeed Technical aspects Proper tooling is essential to deliver the game Tooling facilitates interaction, reuse, and quick development We have mentioned content creation tooling Music Graphics Level editing More tools are needed though! Any examples in mind? 22

23 3. Tooling Version control Enables managing changes to documents, programs, websites, etc. Every file has a revision number Support sharing and access control Enable concurrent work The shared version is kept on a server Developers keep local versions on their computer Basic operations Checkout: retrieve a project from the server Commit: upload files to server Update: get the latest version of a project Well-known tools CVS, Subversion (SVN), GIT, Mercurial 23

24 3. Tooling Centralized vs distributed version control 24

25 3. Tooling Bug tracking, a la Bugzilla 25

26 3. Tooling Bugzilla for Eclipse 26

27 3. Tooling Project management Keep track of the status of the project Are developers doing their task? What is the effect of late delivery? Suppose programmer A needs a module from programmer B Programmer B is 5 days late Programmer A may be stuck and waiting Task-based vs. issue-based Tasks come from the project plan Issues come from assigned bugs Most often, bug tracking is integrated with project mgmt See, e.g., Jira 27

28 3. Tooling Project management: Jira 28

29 3. Tooling Integrated development environment (IDE) Developer s productivity can be boosted by using an integrated development environment Main features Code Auto-completion Project management Support to code versioning Automated generation of documentations Code refactoring Graphical design of user interfaces Interactive debugger Plugins 29

30 3. Tooling IDE: Visual Studio in action 30

31 3. Tooling Which IDE? It depends on the programming language(s) Personal preference Development team constraints Some options Microsoft Visual Studio: C++, C# Eclipse: Java Different IDEs for different activities E.g., Eclipse for a conversion tool, Visual Studio for the game code, etc. BTW, some hardcore game programmers use less graphical IDEs, e.g., emacs 31

32 4. Game engines Don t build games from scratch! Different games share a lot of commonality Consist of objects Have AI, graphics, sound, Since the 80s (but more prominently in the 90s), game studios have been using game engines A system for the creation of a videogame Basic functionalities are embedded 2D/3D rendering Physics engine Sound Scripting Animation AI Networking Localization 32

33 4. Game engines Illustration 33

34 4. Game engines How a game engine works 34

35 4. Game engines Scripting languages Game engines do often make use of scripts Created using a scripting language Not compiled, interpreted Pros Ease of development (less technical programming) Low-level things taken care of (fewer errors) Faster iteration time (no full re-compile needed) Cons Worse debuggers Performance Interface with rest of the game (no export primitive) 35

36 4. Game engines Well-known game engines Game Maker: Studio Initially developed by a former colleague, Mark Overmars Widely used to develop 2D games Targets entry-level programmers Unity3D Fast-growing Very complete for 3D Unreal Engine (Perhaps) the best for 3D Gaining popularity due to a 2013 change in its business model 36

37 4. Game engines Unity in a open-source / freeware pipeline 37

38 4. Game engines What s in Unity? Integrated visual editor Graphics in DirectX or OpenGL Asset import Shaders Physics Terrain modeling + vegetation Audio + video Scripting Networking support Database connectivity Shadow & Light + particle emitters 38

39 4. Game engines Unity, conceptually 39

40 5. Sub-disciplines Specific disciplines within game development Game Physics Programmer AI Programmer Graphics Programmer Sound Programmer UI Programmer Input Programmer Network Programmer Game Tools Programmer Porting Programmer 40

41 5. Sub-disciplines Game physics Developers need good understanding of physics Processor cycles are at a premium Efficiency is key FPS games typically demand large teams of physics programmers Typically embodied in the game engine Newtonian physics Collision detection Particle systems (explosion, smoke, flowing water) 41

42 5. Sub-disciplines Artificial Intelligence Game behavior that is not player-controlled (NPCs) Strategy and tactics Pathfinding AI research is very advanced But AI techniques are typically customized in games Why? AI has to be adaptive Increasing difficulty with game progress (in arcades) adapt to the player 42

43 5. Sub-disciplines Artificial Intelligence: pathfinding The problem of pathfinding Given a graph G, an initial node I in G, and a goal/target node T in G Find the best path from I to T Best typically mean: minimize the number of traversed arcs The most prominent and used algorithm is A* Best-first search 43

44 5. Sub-disciplines Artificial Intelligence: behavior How to systematically make characters decide? And to define the game logics Hard-coded If-then-else Finite state machines Decision trees Rule-based systems Why not using if-then-else? Reuse Formal verification! 44

45 5. Sub-disciplines Graphics Programmers who specialize in developing and modifying complex 3D graphics 2D graphics abilities are still useful though Casual games Scarce in industry Demand high salaries Required knowledge in math Vectors and matrices Linear algebra 45

46 5. Sub-disciplines Sound Sound in games evolved considerably Very basic sounds (Pong) Background music BG + Foreground music Soundtracks 3D positional sound Required skill: digital signal processing The different sound streams have to be well-orchestrated 46

47 5. Sub-disciplines User interface User interfaces are crucial for playability Graphics knowledge 2D, 3D, transparency, animation, particle effects Usability Engineering knowledge Where are items best positioned? How to be non-intrusive? Bad example: Oblivion s inventory (see next slide) what s wrong here? 47

48 5. Sub-disciplines User interface: Oblivion 48

49 5. Sub-disciplines User interface: Oblivion Oblivion was ported to PC, but remained a controller-focused UI Wasted space (21% of the screen only is for the inventory, with 1920x1080) Windows are not adjustable Only six items a time No shortcuts 49

50 5. Sub-disciplines Input The code that determines how the player will use the input devices Traditional input devices Controller Joystick Keyboard & Mouse Advanced input devices Wii controller Kinect Processing data is harder Adhere to standards! Don t use W to indicate reverse 50

51 5. Sub-disciplines Network The code that allows players to play the game on a LAN and or on the internet Very important in Massively Multiplayer Online (MMO) Latency control is especially important Slower connections shall be supported too Must be efficient The challenge of time synchronization Which architecture? 51

52 5. Sub-disciplines Game tools Code to handle auxiliary tasks Scripting Converting art Batches Modifying the game and levels They significantly boost development efficiency Or slow it down, if poorly engineered Typically, many of these tools are within a game engine Game-specific tools are to be programmed Required experience depends on the tool type 52

53 5. Sub-disciplines Porting These days, you want most games to be available on all (or as many as possible) platforms Exception: exclusive agreement You don t want to rebuild the game How hard is it? It depends on the game type Game engines do support porting but what if you customize a game engine? Easier for 2D casual games 53

54 5. Sub-disciplines Lead programmer Keeps the programmers focused, and on track Quite often a middle man between the client and programmers Should have a general base knowledge of all aspects of the game Sound Graphics Networking Etc. 54

55 References Mandatory 1. Murphy-Hill, Emerson, Thomas Zimmermann, and Nachiappan Nagappan. "Cowboys, ankle sprains, and keepers of quality: how is video game development different from software development?." Proceedings of the 36th International Conference on Software Engineering. ACM, Kasurinen, Jussi, Andrey Maglyas, and Kari Smolander. "Is requirements engineering useless in game development?." Requirements Engineering: Foundation for Software Quality. Springer International Publishing,

56 References Other This material is based on The game development process course held at Worcester Polytechnic Institute in 2006: df Animation and Games Development course held at Prince of Songkla University in 2012 V.M. Larios, F. Gonzales, K. Sung. Open source and freeware tools for 3D games development courses. CIGCSE 2011 Workshop 5 Holistic Game Development with Unity by Penny Byl, Focal Press,

IMGD The Game Development Process: Game Development Timeline

IMGD The Game Development Process: Game Development Timeline IMGD 1001 - The Game Development Process: Game Development Timeline by Robert W. Lindeman (gogo@wpi.edu) Kent Quirk (kent_quirk@cognitoy.com) (with lots of input from Mark Claypool!) Outline Game Timeline

More information

Propietary Engine VS Commercial engine. by Zalo

Propietary Engine VS Commercial engine. by Zalo Propietary Engine VS Commercial engine by Zalo zalosan@gmail.com About me B.S. Computer Engineering 9 years of experience, 5 different companies 3 propietary engines, 2 commercial engines I have my own

More information

BMOSLFGEMW: A Spectrum of Game Engine Architectures

BMOSLFGEMW: A Spectrum of Game Engine Architectures BMOSLFGEMW: A Spectrum of Game Engine Architectures Adam M. Smith amsmith@soe.ucsc.edu CMPS 164 Game Engines March 30, 2010 What I m about to show you cannot be found in any textbook, on any website, on

More information

Unity Certified Programmer

Unity Certified Programmer Unity Certified Programmer 1 unity3d.com The role Unity programming professionals focus on developing interactive applications using Unity. The Unity Programmer brings to life the vision for the application

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology http://www.cs.utexas.edu/~theshark/courses/cs354r/ Fall 2017 Instructor and TAs Instructor: Sarah Abraham theshark@cs.utexas.edu GDC 5.420 Office Hours: MW4:00-6:00pm

More information

Game Production: the production process

Game Production: the production process Game Production: the production process Fabiano Dalpiaz f.dalpiaz@uu.nl 1 Outline Lecture contents 1. Game production overview 2. Pre-production 3. Production 4. Testing 5. Post-production 6. Teams 7.

More information

INTRODUCTION TO GAME AI

INTRODUCTION TO GAME AI CS 387: GAME AI INTRODUCTION TO GAME AI 3/31/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Outline Game Engines Perception

More information

SGD Simulation & Game Development Course Information

SGD Simulation & Game Development Course Information SGD Simulation & Game Development Course Information SGD-111_2006SP Introduction to SGD SGD-111 CIS Course ID S21240 This course provides students with an introduction to simulation and game development.

More information

Like Mobile Games* Currently a Distinguished i Engineer at Zynga, and CTO of FarmVille 2: Country Escape (for ios/android/kindle)

Like Mobile Games* Currently a Distinguished i Engineer at Zynga, and CTO of FarmVille 2: Country Escape (for ios/android/kindle) Console Games Are Just Like Mobile Games* (* well, not really. But they are more alike than you think ) Hi, I m Brian Currently a Distinguished i Engineer at Zynga, and CTO of FarmVille 2: Country Escape

More information

Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University

Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University Software Engineering Challenges in Game Development Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University Abstract Game development is the software process that

More information

Game Engines: Why and What? Dan White Technical Director Pipeworks Message

Game Engines: Why and What? Dan White Technical Director Pipeworks Message Game Engines: Why and What? Dan White Technical Director Pipeworks danw@pipeworks.com Message As you learn techniques, consider how they can be integrated into a production pipeline. 1 Sense of scale Video

More information

DM842 Computer Game Programming

DM842 Computer Game Programming DM842 Computer Game Programming Rolf Fagerberg and Marco Chiarandini Fall 2017 Why Computer Game Programming? Fun, attraction, curiosity Career goal Great display of use of many Computer Science subjects

More information

Engineering at a Games Company: What do we do?

Engineering at a Games Company: What do we do? Engineering at a Games Company: What do we do? Dan White Technical Director Pipeworks October 17, 2018 The Role of Engineering at a Games Company Empower game designers and artists to realize their visions

More information

Emergent s Gamebryo. Casey Brandt. Technical Account Manager Emergent Game Technologies. Game Tech 2009

Emergent s Gamebryo. Casey Brandt. Technical Account Manager Emergent Game Technologies. Game Tech 2009 Emergent s Gamebryo Game Tech 2009 Casey Brandt Technical Account Manager Emergent Game Technologies Questions To Answer What is Gamebryo? How does it look today? How is it designed? What titles are in

More information

Arcade Game Maker Product Line Production Plan

Arcade Game Maker Product Line Production Plan Arcade Game Maker Product Line Production Plan ArcadeGame Team July 2003 Table of Contents 1 Overview 1 1.1 Identification 1 1.2 Document Map 1 1.3 Concepts 2 1.4 Readership 2 2 Strategic view of product

More information

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Pangolin: A Look at the Conceptual Architecture of SuperTuxKart Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Abstract This report will be taking a look at the conceptual

More information

Editing the standing Lazarus object to detect for being freed

Editing the standing Lazarus object to detect for being freed Lazarus: Stages 5, 6, & 7 Of the game builds you have done so far, Lazarus has had the most programming properties. In the big picture, the programming, animation, gameplay of Lazarus is relatively simple.

More information

Console Games Are Just Like Mobile Games* (* well, not really. But they are more alike than you

Console Games Are Just Like Mobile Games* (* well, not really. But they are more alike than you Console Games Are Just Like Mobile Games* (* well, not really. But they are more alike than you think ) Hi, I m Brian Currently a Software Architect at Zynga, and CTO of CastleVille Legends (for ios/android)

More information

Development Outcome 1

Development Outcome 1 Computer Games: Development Outcome 1 F917 10/11/12 F917 10/11/12 Page 1 Contents General purpose programming tools... 3 Visual Basic... 3 Java... 4 C++... 4 MEL... 4 C#... 4 What Language Should I Learn?...

More information

How to develop and localize Xbox 360 Titles. 강상진 XBOX Program Manager 한국마이크로소프트소프트웨어연구소

How to develop and localize Xbox 360 Titles. 강상진 XBOX Program Manager 한국마이크로소프트소프트웨어연구소 How to develop and localize Xbox 360 Titles 강상진 (sjkang@microsoft.com) XBOX Program Manager 한국마이크로소프트소프트웨어연구소 Agenda Xbox Title DEV Team Xbox Software Architecture Overview XTL(Xbox Title Library) XDK(Xbox

More information

CS Game Programming, Fall 2014

CS Game Programming, Fall 2014 CS 38101 Game Programming, Fall 2014 Recommended Text Learn Unity 4 for ios Game Development, Philip Chu, 2013, Apress, ISBN-13 (pbk): 978-1-4302-4875-0 ISBN-13 (electronic): 978-1-4302-4876-7, www.apress.com.

More information

Multiplayer Game Design and Development CSC 631/831. Lecture 1 Spring 2016

Multiplayer Game Design and Development CSC 631/831. Lecture 1 Spring 2016 Multiplayer Game Design and Development CSC 631/831 Lecture 1 Spring 2016 Course bjective 2 The whole class works together to build a working Multiplayer nline game, from design through development to

More information

Human Computer Interaction Unity 3D Labs

Human Computer Interaction Unity 3D Labs Human Computer Interaction Unity 3D Labs Part 1 Getting Started Overview The Video Game Industry The computer and video game industry has grown from focused markets to mainstream. They took in about US$9.5

More information

Individual Test Item Specifications

Individual Test Item Specifications Individual Test Item Specifications 8208110 Game and Simulation Foundations 2015 The contents of this document were developed under a grant from the United States Department of Education. However, the

More information

A RESEARCH PAPER ON ENDLESS FUN

A RESEARCH PAPER ON ENDLESS FUN A RESEARCH PAPER ON ENDLESS FUN Nizamuddin, Shreshth Kumar, Rishab Kumar Department of Information Technology, SRM University, Chennai, Tamil Nadu ABSTRACT The main objective of the thesis is to observe

More information

Ubi meets the students. May 22nd, 2013

Ubi meets the students. May 22nd, 2013 Ubi meets the students May 22nd, 2013 UBISOFT 1 Ubisoft - a global network of talented people 2 What do we do? 3 Heroes Wanted 4 UBISOFT - A GLOBAL NETWORK OF TALENTED PEOPLE UBISOFT Over 8,350 talented

More information

PASSENGER. Story of a convergent pipeline. Thomas Felix TG - Passenger Ubisoft Montréal. Pierre Blaizeau TWINE Ubisoft Montréal

PASSENGER. Story of a convergent pipeline. Thomas Felix TG - Passenger Ubisoft Montréal. Pierre Blaizeau TWINE Ubisoft Montréal PASSENGER Story of a convergent pipeline Thomas Felix TG - Passenger Ubisoft Montréal Pierre Blaizeau TWINE Ubisoft Montréal Technology Group PASSENGER How to expand your game universe? How to bridge game

More information

Program a Game Engine from Scratch. Chapter 1 - Introduction

Program a Game Engine from Scratch. Chapter 1 - Introduction Program a Game Engine from Scratch Mark Claypool Chapter 1 - Introduction This document is part of the book Dragonfly Program a Game Engine from Scratch, (Version 5.0). Information online at: http://dragonfly.wpi.edu/book/

More information

IMGD 1001: Programming Practices; Artificial Intelligence

IMGD 1001: Programming Practices; Artificial Intelligence IMGD 1001: Programming Practices; Artificial Intelligence Robert W. Lindeman Associate Professor Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu Outline Common Practices Artificial

More information

DM809 Computer Game Programming I: Graphics

DM809 Computer Game Programming I: Graphics DM809 Computer Game Programming I: Graphics Rolf Fagerberg August/Fall 2010 1 Goals for Today s Lecture Introduction to course: Motivation Contents of course Formalities of course Textbook Tentative courseplan

More information

Lecture 1: Introduction and Preliminaries

Lecture 1: Introduction and Preliminaries CITS4242: Game Design and Multimedia Lecture 1: Introduction and Preliminaries Teaching Staff and Help Dr Rowan Davies (Rm 2.16, opposite the labs) rowan@csse.uwa.edu.au Help: via help4242, project groups,

More information

Game Production: testing

Game Production: testing Game Production: testing Fabiano Dalpiaz f.dalpiaz@uu.nl 1 Outline Lecture contents 1. Intro to game testing 2. Fundamentals of testing 3. Testing techniques Acknowledgement: these slides summarize elements

More information

Level 3 Extended Diploma Unit 22 Developing Computer Games

Level 3 Extended Diploma Unit 22 Developing Computer Games Level 3 Extended Diploma Unit 22 Developing Computer Games Outcomes Understand the impact of the gaming revolution on society Know the different types of computer game Be able to design and develop computer

More information

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT Introduction to Game Design Truong Tuan Anh CSE-HCMUT Games Games are actually complex applications: interactive real-time simulations of complicated worlds multiple agents and interactions game entities

More information

Sensible Chuckle SuperTuxKart Concrete Architecture Report

Sensible Chuckle SuperTuxKart Concrete Architecture Report Sensible Chuckle SuperTuxKart Concrete Architecture Report Sam Strike - 10152402 Ben Mitchell - 10151495 Alex Mersereau - 10152885 Will Gervais - 10056247 David Cho - 10056519 Michael Spiering Table of

More information

Kevin Chan, Blue Tongue Entertainment

Kevin Chan, Blue Tongue Entertainment Kevin Chan, Blue Tongue Entertainment Games are made in Australia? Who is this guy? Who are THQ and Blue Tongue Entertainment? How is a game made? Careers in the games company Long history of game development

More information

Computer Science: Who Cares? Computer Science: It Matters. Computer Science: Disciplines

Computer Science: Who Cares? Computer Science: It Matters. Computer Science: Disciplines Computer Science: Who Cares? Computer Graphics (1970 s): One department, at one university Several faculty, a few more students $5,000,000 grant from ARPA Original slides by Chris Wilcox, Edited and extended

More information

Level 3 Extended Diploma Unit 22 Developing Computer Games

Level 3 Extended Diploma Unit 22 Developing Computer Games Level 3 Extended Diploma Unit 22 Developing Computer Games Outcomes Understand the impact of the gaming revolution on society Know the different types of computer game Be able to design and develop computer

More information

Towards a Reference Architecture for 3D First Person Shooter Games

Towards a Reference Architecture for 3D First Person Shooter Games Towards a Reference Architecture for 3D First Person Shooter Games Philip Liew-pliew@swen.uwaterloo.ca Ali Razavi-arazavi@swen.uwaterloo.ca Atousa Pahlevan-apahlevan@cs.uwaterloo.ca April 6, 2004 Abstract

More information

Introduction. Video Game Design and Development Spring part of slides courtesy of Andy Nealen. Game Development - Spring

Introduction. Video Game Design and Development Spring part of slides courtesy of Andy Nealen. Game Development - Spring Introduction Video Game Design and Development Spring 2011 part of slides courtesy of Andy Nealen Game Development - Spring 2011 1 What is this course about? Game design Real world abstractions Visuals

More information

WANT TO BECOME A GAME DEVELOPER

WANT TO BECOME A GAME DEVELOPER GAME DESIGN WANT TO BECOME A GAME DEVELOPER Part Time Course GAME DESIGN Do you have that next big game idea? Interested in learning how to create and design a functioning game? Would you like to cultivate

More information

Introduction. Video Game Programming Spring Video Game Programming - A. Sharf 1. Nintendo

Introduction. Video Game Programming Spring Video Game Programming - A. Sharf 1. Nintendo Indie Game The Movie - Official Trailer - YouTube.flv 235 Free Indie Games in 10 Minutes - YouTube.flv Introduction Video Game Programming Spring 2012 Nintendo Video Game Programming - A. Sharf 1 What

More information

IMGD Technical Game Development I: Introduction

IMGD Technical Game Development I: Introduction IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game code Game architecture, algorithms,

More information

Game Jam Survival Guide

Game Jam Survival Guide Game Jam Survival Guide Who s that guy? @badlogicgames Preparation? What Preparation? Choose your tools! Engine, framework, library Programming language, IDE Audio editors & generators Graphics editors

More information

PRODUCT DEVELOPMENT Family LINE OF. Product Live Ops

PRODUCT DEVELOPMENT Family LINE OF. Product Live Ops PRODUCT DEVELOPMENT LINE OF Product BUSINESS Production Development - Live Ops Product SENIOR MANAGEMENT STUDIO MANAGEMENT MANAGEMENT Management Creative Producing Producing Monetization Management Game

More information

Level 3 Extended Diploma Unit 22 Developing Computer Games

Level 3 Extended Diploma Unit 22 Developing Computer Games Level 3 Extended Diploma Unit 22 Developing Computer Games Outcomes LO1 Understand the impact of the gaming revolution on society LO2 Know the different types of computer game LO3 Be able to design and

More information

IMGD 1001: Programming Practices; Artificial Intelligence

IMGD 1001: Programming Practices; Artificial Intelligence IMGD 1001: Programming Practices; Artificial Intelligence by Mark Claypool (claypool@cs.wpi.edu) Robert W. Lindeman (gogo@wpi.edu) Outline Common Practices Artificial Intelligence Claypool and Lindeman,

More information

Computer Games 2011 Engineering

Computer Games 2011 Engineering Computer Games 2011 Engineering Dr. Mathias Lux Klagenfurt University This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Agenda Game Loop Sprites & 2.5D Game Engines

More information

Unity Game Development Essentials

Unity Game Development Essentials Unity Game Development Essentials Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone 1- PUBLISHING -J BIRMINGHAM - MUMBAI Preface

More information

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game-engine code Game architecture, algorithms,

More information

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game-engine code Game architecture, algorithms,

More information

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?)

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?) Who am I? AI in Computer Games why, where and how Lecturer at Uppsala University, Dept. of information technology AI, machine learning and natural computation Gamer since 1980 Olle Gällmo AI in Computer

More information

Agile Game Development

Agile Game Development Agile Game Development Introducing agile to an industry Clinton Keith Clinton Keith Agile c oach and tra iner 24 yea rs of dev elopm ence ent experi Avioni c underw s, autonomo u games ater robotics s,

More information

CSE 125 Boot Camp. Or: How I Learned to Stop Worrying and Love The Lab

CSE 125 Boot Camp. Or: How I Learned to Stop Worrying and Love The Lab CSE 125 Boot Camp Or: How I Learned to Stop Worrying and Love The Lab About Me Game Developer since 2010 forever Founder and President of VGDC gamedev.ucsd.edu (shameless self-promotion ftw) I look like

More information

the gamedesigninitiative at cornell university Lecture 14 Data-Driven Design

the gamedesigninitiative at cornell university Lecture 14 Data-Driven Design Lecture 14 Data-Driven Design Take-Away for Today What is data-driven design? How do programmers use it? How to designers/artists/musicians use it? What are benefits of data-driven design? To both developer

More information

Gaming Development Fundamentals

Gaming Development Fundamentals Gaming Development Fundamentals EXAM INFORMATION Items 27 Points 43 Prerequisites RECOMMENDED COMPUTER PROGRAMMING I DIGITAL MEDIA I Grade Level 9-12 Course Length DESCRIPTION This course is designed to

More information

The Game Development Process

The Game Development Process The Game Development Process Introduction Outline Game Business Overview Stats Shape Overview of Game Development Players Game Companies Developers and Publishers Timeline Examples 1 Random Statistics

More information

Effects of Shader Technology: Current-Generation Game Consoles and Real-Time. Graphics Applications

Effects of Shader Technology: Current-Generation Game Consoles and Real-Time. Graphics Applications Effects of Shader Technology: Current-Generation Game Consoles and Real-Time Graphics Applications Matthew Christian A Quick History of Pixel and Vertex Shaders Pixel and vertex shader technology built

More information

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, 2012 10.5682/2066-026X-12-153 SOLUTIONS FOR DEVELOPING SCORM CONFORMANT SERIOUS GAMES Dragoş BĂRBIERU

More information

GAME PRODUCTION HANDBOOK Second Edition

GAME PRODUCTION HANDBOOK Second Edition THE GAME PRODUCTION HANDBOOK Second Edition BY HEATHER MAXWELL CHANDLER INFINITY SCIENCE PlliSS INFINITY SCIENCE PRESS LLC Hingham, Massachusetts New Delhi, India TABLE OF CONTENTS Foreword Preface Acknowledgments

More information

TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER

TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER TINY METAL: Developing a big game with a small team AREA35 - GIAN PEIRCE - BIZDEV & LOCALIZATION AREA35 - DANIEL DRESSLER - CHIEF ENGINEER About This Presentation Development of TINY METAL started early

More information

publi l c i c c l c a l s a s s s Ga G m a e1 e1 : M i M c i r c os o o s f o t. t Xn X a. a Fram a ew o k.ga G m a e m { G ap a hic i s c D s ev

publi l c i c c l c a l s a s s s Ga G m a e1 e1 : M i M c i r c os o o s f o t. t Xn X a. a Fram a ew o k.ga G m a e m { G ap a hic i s c D s ev Game Engine Architecture Spring 2017 0. Introduction and overview Juha Vihavainen University of Helsinki [Gregory, Chapter 1. Introduction, pp. 3-62 ] [McShaffry, Chapter 2. What's in a Game ] On classroom

More information

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

Beginning 3D Game Development with Unity:

Beginning 3D Game Development with Unity: Beginning 3D Game Development with Unity: The World's Most Widely Used Multi-platform Game Engine Sue Blackman Apress* Contents About the Author About the Technical Reviewer Acknowledgments Introduction

More information

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters Computer Science: Disciplines What is Software Engineering and why does it matter? Computer Graphics Computer Networking and Security Parallel Computing Database Systems Artificial Intelligence Software

More information

Interactive Media and Game Development

Interactive Media and Game Development Interactive Media and Game Development Frontiers 2008 Mark Claypool What Do You Think Goes Into Developing Games? Choose a game you re familiar with Assume you are inspired (or forced or paid) to re-engineer

More information

Console Architecture 1

Console Architecture 1 Console Architecture 1 Overview What is a console? Console components Differences between consoles and PCs Benefits of console development The development environment Console game design PS3 in detail

More information

IMGD 1001: Fun and Games

IMGD 1001: Fun and Games IMGD 1001: Fun and Games Robert W. Lindeman Associate Professor Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu Outline What is a Game? Genres What Makes a Good Game? 2 What

More information

Procedural Level Generation for a 2D Platformer

Procedural Level Generation for a 2D Platformer Procedural Level Generation for a 2D Platformer Brian Egana California Polytechnic State University, San Luis Obispo Computer Science Department June 2018 2018 Brian Egana 2 Introduction Procedural Content

More information

Pangolin: Concrete Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

Pangolin: Concrete Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Pangolin: Concrete Architecture of SuperTuxKart Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Abstract For this report we will be looking at the concrete architecture

More information

3D Game Engine Design Using DirectX 9 and C#

3D Game Engine Design Using DirectX 9 and C# Introduction to 3D Game Engine Design Using DirectX 9 and C# LYNN T. HARRISON APress Media, LLC Introduction to 3D Game Engine Design Using DirectX 9 and C# Copyright 2003 by Lynn T. Harrison Originally

More information

Individual Test Item Specifications

Individual Test Item Specifications Individual Test Item Specifications 8208120 Game and Simulation Design 2015 The contents of this document were developed under a grant from the United States Department of Education. However, the content

More information

the gamedesigninitiative at cornell university Lecture 4 Game Components

the gamedesigninitiative at cornell university Lecture 4 Game Components Lecture 4 Game Components Lecture 4 Game Components So You Want to Make a Game? Will assume you have a design document Focus of next week and a half Building off ideas of previous lecture But now you want

More information

CompuScholar, Inc. Alignment to Utah Game Development Fundamentals Standards

CompuScholar, Inc. Alignment to Utah Game Development Fundamentals Standards CompuScholar, Inc. Alignment to Utah Game Development Fundamentals Standards Utah Course Details: Course Title: Primary Career Cluster: Course Code(s): Standards Link: Game Development Fundamentals CTE

More information

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories AI in Computer Games why, where and how AI in Computer Games Goals Game categories History Common issues and methods Issues in various game categories Goals Games are entertainment! Important that things

More information

Why Hire a Game Design Co-op Student?

Why Hire a Game Design Co-op Student? Why Hire a Game Design Co-op Student? Bachelor of Game Design Program The Bachelor of Game Design is the only degree of its kind in Canada. Launched in 2013, the program is aimed at producing graduates

More information

Game Design 2. Table of Contents

Game Design 2. Table of Contents Course Syllabus Course Code: EDL082 Required Materials 1. Computer with: OS: Windows 7 SP1+, 8, 10; Mac OS X 10.8+. Windows XP & Vista are not supported; and server versions of Windows & OS X are not tested.

More information

Workplace Skills Assessment Program. Virtual Event V03 - Software Engineering Team Project Requirements Document.

Workplace Skills Assessment Program. Virtual Event V03 - Software Engineering Team Project Requirements Document. Workplace Skills Assessment Program Virtual Event V03 - Software Engineering Team 2018-2019 Project Requirements Document Page 1 of 19 LEGAL This document is copyright 2010-2019 Business Professionals

More information

CompuScholar, Inc. Alignment to Utah Game Development Fundamentals 2 Standards

CompuScholar, Inc. Alignment to Utah Game Development Fundamentals 2 Standards CompuScholar, Inc. Alignment to Utah Game Development Fundamentals 2 Standards Utah Course Details: Course Title: Primary Career Cluster: Course Code(s): Standards Link: Game Development Fundamentals 2

More information

Digital Asset Management 7. Interactive Media and Game Development process

Digital Asset Management 7. Interactive Media and Game Development process Digital Asset Management 7. Interactive Media and Game Development process 2015-11-12 Game Types Arcade Games Puzzle Games Role Playing Games Strategy Games Adventure Games First-Person Shooters Third-Person

More information

Concrete Architecture of SuperTuxKart

Concrete Architecture of SuperTuxKart Concrete Architecture of SuperTuxKart Team Neo-Tux Latifa Azzam - 10100517 Zainab Bello - 10147946 Yuen Ting Lai (Phoebe) - 10145704 Jia Yue Sun (Selena) - 10152968 Shirley (Xue) Xiao - 10145624 Wanyu

More information

Videogame graphics. Ubisoft

Videogame graphics. Ubisoft Videogame graphics Ubisoft Gustav Taxén, Ph. D. Associate Professor School of Computing Science and Communication Royal Institute of Technology, Stockholm gustavt@csc.kth.se Videogames the business Videogame

More information

Catch The Kites A Lightweight Android Game

Catch The Kites A Lightweight Android Game Catch The Kites A Lightweight Android Game Submitted By Woaraka Been Mahbub ID: 2012-2-60-033 Md. Tanzir Ahasion ID: 2012-2-60-036 Supervised By Md. Shamsujjoha Senior Lecturer Department of Computer Science

More information

2/22/2006 Team #7: Pez Project: Empty Clip Members: Alan Witkowski, Steve Huff, Thos Swallow, Travis Cooper Document: VVP

2/22/2006 Team #7: Pez Project: Empty Clip Members: Alan Witkowski, Steve Huff, Thos Swallow, Travis Cooper Document: VVP 2/22/2006 Team #7: Pez Project: Empty Clip Members: Alan Witkowski, Steve Huff, Thos Swallow, Travis Cooper Document: VVP 1. Introduction and overview 1.1 Purpose of this Document The purpose of this document

More information

Project Documentation for Zombie Trail

Project Documentation for Zombie Trail Project Documentation for Zombie Trail Requirements Basic Requirements of the Program o The program is designed to be a fully playable (the game will not crash, and the end goal of the game is reachable)

More information

Game Tools MARY BETH KERY - ADVANCED USER INTERFACES SPRING 2017

Game Tools MARY BETH KERY - ADVANCED USER INTERFACES SPRING 2017 Game Tools MARY BETH KERY - ADVANCED USER INTERFACES SPRING 2017 2 person team 3 years 300 person team 10 years Final Fantasy 15 ART GAME DESIGN ENGINEERING PRODUCTION/BUSINESS TECHNICAL CHALLENGES OF

More information

Introduction to Computer Games

Introduction to Computer Games Introduction to Computer Games Doron Nussbaum Introduction to Computer Gaming 1 History of computer games Hardware evolution Software evolution Overview of Industry Future Directions/Trends Doron Nussbaum

More information

About MustPlay Games

About MustPlay Games About MustPlay Games MustPlay Game is a leading mobile games studio in Hyderabad, India, established in 2012 with a notion to develop fun to play unique games on cross platforms. While the gaming markets

More information

Attack of Township. Moniruzzaman, Md. Daffodil International University Institutional Repository Daffodil International University

Attack of Township. Moniruzzaman, Md. Daffodil International University Institutional Repository Daffodil International University Daffodil International University Institutional Repository Computer Science and Engineering Project Report of M.Sc 2018-05 Attack of Township Moniruzzaman, Md Daffodil International University http://hdl.handle.net/20.500.11948/2705

More information

Policy-Based RTL Design

Policy-Based RTL Design Policy-Based RTL Design Bhanu Kapoor and Bernard Murphy bkapoor@atrenta.com Atrenta, Inc., 2001 Gateway Pl. 440W San Jose, CA 95110 Abstract achieving the desired goals. We present a new methodology to

More information

OPEN YOUR MIND TO A WORLD OF GAME ART & DESIGN

OPEN YOUR MIND TO A WORLD OF GAME ART & DESIGN OPEN YOUR MIND TO A WORLD OF GAME ART & DESIGN Jaime Smith FATAL VELOCITY MAKE CREATIVITY YOUR WAY OF LIFE lasallecollegevancouver.com GAME ART & DESIGN DIPLOMA IN GAME ART & DESIGN MAKE CREATIVITY YOUR

More information

Remuneration Report

Remuneration Report Remuneration Report 2017-2018 In this year s report we have worked hard to not only provide the rare, specific remuneration data you need in order to benchmark roles, but also provide you greater insight

More information

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING Unity 3.x Game Development Essentials Game development with C# and Javascript Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone

More information

Shared Technology at Rare: Good and Bad. Tom Grove GDC 2007 San Francisco

Shared Technology at Rare: Good and Bad. Tom Grove GDC 2007 San Francisco Shared Technology at Rare: Good and Bad Tom Grove GDC 2007 San Francisco www.rareware.com Outline Who are Rare? The Shared Technology Group Lessons Learnt Was it worth it? Summary Questions? Part of MGS

More information

Timothy Lewis The University of Texas at Dallas 800 W. Campbell Road, Richardson, TX

Timothy Lewis The University of Texas at Dallas 800 W. Campbell Road, Richardson, TX Timothy Lewis The University of Texas at Dallas 800 W. Campbell Road, Richardson, TX 75080 timothy.lewis@utdallas.edu Education: Master of Fine Arts, October 2012, The University of Texas at Dallas (800

More information

Computer Science as a Discipline

Computer Science as a Discipline Computer Science as a Discipline 1 Computer Science some people argue that computer science is not a science in the same sense that biology and chemistry are the interdisciplinary nature of computer science

More information

JOB HISTORY EDUCATION. 08/ /2015 PMP Project Management Course Skillport, BFD. 01/ /1998 Flight Training Naval Air Station, Pensacola

JOB HISTORY EDUCATION. 08/ /2015 PMP Project Management Course Skillport, BFD. 01/ /1998 Flight Training Naval Air Station, Pensacola JOB HISTORY 06/2017 Present Lead Developer Produktentwicklung Item Industrietechnik GmbH [Solingen, Germany] Lead Developer Product: Machine Automation System PERSONAL DATA Date and Place of Birth 05.01.1976

More information

Orbital Delivery Service

Orbital Delivery Service Orbital Delivery Service Michael Krcmarik Andrew Rodman Project Description 1 Orbital Delivery Service is a 2D moon lander style game where the player must land a cargo ship on various worlds at the intended

More information

the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra

the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra the question of whether computers can think is like the question of whether submarines can swim -- Dijkstra Game AI: The set of algorithms, representations, tools, and tricks that support the creation

More information

Introduction to adoption of lean canvas in software test architecture design

Introduction to adoption of lean canvas in software test architecture design Introduction to adoption of lean canvas in software test architecture design Padmaraj Nidagundi 1, Margarita Lukjanska 2 1 Riga Technical University, Kaļķu iela 1, Riga, Latvia. 2 Politecnico di Milano,

More information