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 is this course about? Game design Real world abstractions Visuals Interaction Design iterations Nintendo Video Game Programming - A. Sharf 2
What is this course about? Gameplay mechanics Rapid prototyping Many examples FUN! Nintendo Video Game Programming - A. Sharf 3
play mechanics are the foundation on which games are built Playing with power www.1up.com/do/feature?cid=3151392 Nintendo Video Game Programming - A. Sharf 4
Game mechanics=ideas mechanics determine structure and rules: how you win how you lose what to do to stay alive Nintendo Video Game Programming - A. Sharf 5
Basics - fundamental concepts that have become a part of many of today's games Nintendo Video Game Programming - A. Sharf 6
Video Game Programming - A. Sharf 7
Video Game Programming - A. Sharf 8
Video Game Programming - A. Sharf 9
Video Game Programming - A. Sharf 10
Handy features - ideas not absolutely essential to the design but enhance experience. Nintendo Video Game Programming - A. Sharf 11
Video Game Programming - A. Sharf 12
Video Game Programming - A. Sharf 13
Video Game Programming - A. Sharf 14
Video Game Programming - A. Sharf 15
Style - play mechanics that add an exciting touch of artistic flair to games Nintendo Video Game Programming - A. Sharf 16
Video Game Programming - A. Sharf 17
Video Game Programming - A. Sharf 18
Video Game Programming - A. Sharf 19
Video Game Programming - A. Sharf 20
Side by Side -- mechanics that allow other players or even computercontrolled characters to enrich the gaming experience. Nintendo Video Game Programming - A. Sharf 21
Video Game Programming - A. Sharf 22
Video Game Programming - A. Sharf 23
About myself Andrei Sharf asharf@cs.bgu.ac.il http://www.cs.bgu.ac.il/~asharf/gaming _spring2012.htm Research: Computer graphics, interactive techniques, shape modeling, geometry processing 3D shape acquisition, urban modeling, 4D detection Nintendo Video Game Programming - A. Sharf 24
Agenda 1. Definition of game and game design 2. Game design in small teams 3. Quick and dirty: rapid prototyping 4. Abstraction of the real world 5. Game feel : principles of virtual sensation 6. Games as systems/simulations in software 7. Prototype design (+ programming) strategies Nintendo Video Game Programming - A. Sharf 25
More agenda Reuse content: photos, 3D scans (bubbles, puzzles) How Trauma Evokes a Realistic Atmosphere The Game Prodigy - The Source for Game Design.flv Nintendo Video Game Programming - A. Sharf 26
More agenda Create/control feelings and moods Tricks and magic with smartphones Smartphone interaction (more architecture less gaming) Ipod Magic Deception (Viral Video) - Iq187 Tech Talk #16 - YouTube.flv Nintendo Video Game Programming - A. Sharf 27
Course structure Teams of 3-4 people (start forming this week) Weekly (mandatory!) meetings Sunday 14-16 (503 build. 72): Lecture Monday 10-12 (304 build. 28): Practice You will need at least two full days outside of class to work on games (likely more) First 6 weeks: 3 prototypes per person! Rest: each team fully develops their favorite and most successful prototype Home quiz + Oral quiz Nintendo Video Game Programming - A. Sharf 28
Requirements Most importantly: time Almost as important: dedication It would be beneficial to have experience in one or more of the following areas Graphics programming (OpenGL, etc.) General programming and systems design Classical art and painting/sketching/animation Sound and music design Organizational and team leading capabilities Nintendo Video Game Programming - A. Sharf 29
Submissions 3 game prototypes Final game design document Final game prototype Final game beta Final game Home quiz Nintendo Video Game Programming - A. Sharf 30
Tools? XNA (http://creators.xna.com) core and concepts will be covered in practical session Other possibilities Straight up OpenGL and C/C++ or Java Unity 3D Flixel (Flash AS3 libraries) SDL (http://www.libsdl.org/) 2D boy framework (http://2dboy.com/2009/05/27/rapid-prototyping-framework/) Whatever works Nintendo Video Game Programming - A. Sharf 31
Platforms? Again, whatever you like PC / Mac Xbox 360 (via XNA) iphone You will need to take care of your own hardware, and be able to present prototypes in class on a weekly basis Nintendo Video Game Programming - A. Sharf 32
Contact Andrei Sharf Email: asharf@cs.bgu.ac.il Reception: Monday 12-14, Room 313 Gilad Bauman(TA) Email: giladbau@gmail.com Reception: Monday 14-16 Nintendo Video Game Programming - A. Sharf 33
What is a game? and what is game design? Nintendo Video Game Programming - A. Sharf 34
What is a game? Many definitions exist Common in many definitions: Participants (players) Decisions (interactions) Conflicts (opposition) Resource management (game tokens) Pursuit of a goal (or goals) (and all of this in a closed, formal system) Nintendo Video Game Programming - A. Sharf 35
What is game design? A form of modern day Alchemy If we knew the formula for a great game we would always use it Alchemy has advanced to chemistry, so we can advance to a science too, right? Define rules / guidelines of the game Design interesting interaction Risk and reward (e.g. interesting decisions for player) Advance the plot (score, level, skill, narrative, etc.) Keep the player challenged, not frustrated Nintendo Video Game Programming - A. Sharf 36
Aspects of video game design What is video game design? Player mechanics and controls? Game rules, dynamics and goals? World and level design? Choice of colors, icons and setting? Interactive sound and music? Intuitive tools and code for designers and coders? Enemy/ally intelligence and behavior? Nintendo Video Game Programming - A. Sharf 37
Aspects of video game design Answer: All of the above (and more) video game design is inherently interdisciplinary learn as much as you can about all aspects of a video game - you will be a better video game designer! Nintendo Video Game Programming - A. Sharf 38
Fundamental meaningful play Descriptive Relationship between player action and system outcome Evaluative Discernable Perceive the immediate outcome of player action Explosion, sound effect, game state change Integrated Outcome of an action is woven into the game system Actions on earlier levels influence gameplay later on Nintendo Video Game Programming - A. Sharf 39
Video Game Programming - A. Sharf 40
Game Design Team Players For small/medium sized game projects Nintendo Video Game Programming - A. Sharf 41
Small design teams Team lead / design Organize team Schedule milestones Iterate game design and game rules Study game theory etc. See: Rules of Play, Theory of fun, The Art of Game Design www.experimentalgameplay.com www.2dboy.com Nintendo Video Game Programming - A. Sharf 42
Small design teams Gameplay programmer game AI : refers to rulebased aspects software engineer encode behaviors, path planning, state machines, etc. Works closely with lead game designer Nintendo Video Game Programming - A. Sharf 43
Small design teams Graphics programmer Rendering technology Work with content creator on procedural content Interface with gameplay programmer (collision detection, events, etc.) Polish the visuals with particle effects, etc. Bizarre Creations Nintendo Video Game Programming - A. Sharf 44
Small design teams Content creator 2D Sprites (Photoshop) 3D Models Textures, Normalmaps 2D/3D animations Sound design Role of an art director Coherent look-and-feel Adapt style to game mechanics and story Nintendo God of War, SCEA Video Game Programming - A. Sharf 45
Small design teams None of these roles are carved in stone The previous example is one way of splitting work among a group of four Many successful projects have been completed by groups of two, and also solo developers Tip/trick: realistically adjust your design ambitions to the expected man-hours you will be able to invest Nintendo Video Game Programming - A. Sharf 46
Resources Stand on the shoulders of giants Nintendo Video Game Programming - A. Sharf 47
Resources Game development / careers gamecareerguide.com,gamasutra.com, gamedev.net,igda.com Game news kotaku.com,1up.com,gamespot.com tigsource.com,indiegames.com/blog/ Podcasts 1up.com,gamespot.com, brainygamer.net Nintendo Video Game Programming - A. Sharf 48
Resources Books Fullerton, Game Design Workshop Norman, The Design of Everyday Things Swink, Game Feel Salen/Zimmerman, Rules of Play Schell, The Art of Game Design Koster, A Theory of Fun Research Jesper Juul, www.jesperjuul.net Game studies, www.gamestudies.com Nintendo Video Game Programming - A. Sharf 49
Tips Keep it VERY simple! You only have one week for everything Code quick and dirty You will not be using this code ever again Quickly converge on a toolset + platform Based on previous experience, preference, methods of distribution, etc. Have friends play test your game This will always be helpful throughout the course Nintendo Video Game Programming - A. Sharf 50
Theory of Fun!!! Raph Koster Nintendo Video Game Programming - A. Sharf 51
Video Game Programming - A. Sharf 52
Video Game Programming - A. Sharf 53
Video Game Programming - A. Sharf 54
Video Game Programming - A. Sharf 55
Video Game Programming - A. Sharf 56
Video Game Programming - A. Sharf 57
Video Game Programming - A. Sharf 58
Video Game Programming - A. Sharf 59
Video Game Programming - A. Sharf 60
Video Game Programming - A. Sharf 61
Video Game Programming - A. Sharf 62
Video Game Programming - A. Sharf 63
Video Game Programming - A. Sharf 64
Video Game Programming - A. Sharf 65
Video Game Programming - A. Sharf 66
Video Game Programming - A. Sharf 67
Video Game Programming - A. Sharf 68
Video Game Programming - A. Sharf 69
Video Game Programming - A. Sharf 70
Video Game Programming - A. Sharf 71
Video Game Programming - A. Sharf 72
Video Game Programming - A. Sharf 73
Video Game Programming - A. Sharf 74
Video Game Programming - A. Sharf 75
Video Game Programming - A. Sharf 76
Video Game Programming - A. Sharf 77
Video Game Programming - A. Sharf 78
Video Game Programming - A. Sharf 79
Video Game Programming - A. Sharf 80
Video Game Programming - A. Sharf 81
Video Game Programming - A. Sharf 82
Video Game Programming - A. Sharf 83
Video Game Programming - A. Sharf 84
Video Game Programming - A. Sharf 85
Video Game Programming - A. Sharf 86
Video Game Programming - A. Sharf 87
Video Game Programming - A. Sharf 88
Video Game Programming - A. Sharf 89
Video Game Programming - A. Sharf 90
Video Game Programming - A. Sharf 91
Video Game Programming - A. Sharf 92
Video Game Programming - A. Sharf 93
Video Game Programming - A. Sharf 94
Video Game Programming - A. Sharf 95
Video Game Programming - A. Sharf 96
Video Game Programming - A. Sharf 97
Video Game Programming - A. Sharf 98
Video Game Programming - A. Sharf 99
Video Game Programming - A. Sharf 100
Video Game Programming - A. Sharf 101
More agenda Reuse content: photos, 3D scans (bubbles, puzzles) How Trauma Evokes a Realistic Atmosphere The Game Prodigy - The Source for Game Design.flv Nintendo Video Game Programming - A. Sharf 102
More agenda Create/control feelings and moods Tricks and magic with smartphones Smartphone interaction (more architecture less gaming) Ipod Magic Deception (Viral Video) - Iq187 Tech Talk #16 - YouTube.flv Nintendo Video Game Programming - A. Sharf 103
Homework Your very first prototype Nintendo Video Game Programming - A. Sharf 104
Art Games - Part 5 - YouTube.flv Nintendo Video Game Programming - A. Sharf 105
For next week Each participant Select a toolset, and make a very small game! Constraints No sound or music whatsoever Only art assets (bitmaps) allowed: circles and squares what you create in code is up to you Input: at most four keys on a keyboard, or one thumbstick and one button, or simple motion controls or taps on a touch-screen (not both) Nintendo Video Game Programming - A. Sharf 106
Some Inspirations The Marriage http://www.rodvik.com/rod games/marriage.html Simple game rules + simple rendering Interesting mechanics Ikaruga (shooter) Simple polarity principle Looks beautiful, but would be equally playable if not Nintendo Video Game Programming - A. Sharf 107
Video Game Programming - A. Sharf 108