Unity Playground
Instructor: Prof Pisan [email protected] Overview
Game Engine Architecture
Unity's approach to creating a game engine
Defining a game - components, criticism
Role of Game Designer
Unity Playground https://unity3d.com/learn/tutorials/s/unity-playground
2 HW1: Unity Basics
Review answers
Grading:
#2 2pts #5 2pts #8 2pts Rest 4pts
3 Game Designer
Advocate for the player
See the world through the player's eyes Player experience
Playtesters - providing feedback
Game design as hosting a party - an interactive experience
Communication - sell your game, good listener and compromiser
Teamwork - personalities
Process - games are fragile, prioritize goals
Inspiration - world as challenges, structures and play. Money to relationships
Beyond existing games Will Wright - ant colonies to SimAnt What parts of your life can be turned into games?
4 Fail and Fail Again
https://officechai.com/startups/51-failed-games-rovio-created- angry-birds-now-going-public-1-billion-valuation/ Playcentric Design Process
Keeping the player experience in mind and testing the gameplay with target players through every phase of development.
Setting player experience goals
Players have to cooperate to win, but structured so cannot trust each other Players will feel a sense of happiness and playfulness
Prototyping and Playtesting
Paper is easy to modify, software decisions harder to reverse
Iteration
Design → Test → Evaluate → Design → Test → ….
6 Game Development
1. Brainstorming 2. Physical prototype 3. Presentation (if you need $$s) 4. Software prototype 5. Design documentation - putting the notes together 6. Production 7. Quality assurance
Approaches: Jump from concept to writing up design to coding. Works OK when the game is a variation of an existing game
Game Jams: Tapping into community for ideas and prototypes
Innovation: unique play mechniques, beyond existing genres, integrating into daily lives, taking on new business models, emotionally rich gameplay, ….
Have to walk before we can run -- good execution is crucial
7 Threes vs 1024 vs 2048
http://asherv.com/threes/threemails/ https://www.engadget.com/2015/05/05/threes-2048-google-play-app-store/ 8 Designers YOU should know
1. Shigeru Miyamoto 2. Will Wright 3. Sid Meier 4. Warren Spector Pick 2 designers and find out 5. Richard Garfield what is important about them
6. Peter Molyneux 7. Gary Gygax 8. Richard Garriott 9. Gabe Newell 10. Hironobu Sakaguchi 11. Ken Levine 12. Todd Howard Community 13. Hideo Kojima 14. John Romero 15. Jane McGonigal 16. Tracy Fullerton 17. Jesse Schell
18. Ian Bogost 9 Readings
A Brief History of Video Games
Games and Society
Ludology for Game Developers
Game engine architecture - Introduction
10 A Brief History of Video Games
● Tennis for two ● Spacewar ● Ralph Baer + Nolan Bushnell → "Computer Space" arcade machines
Consoles ● Atari - Pong ● Nintendo - Shigeru Miyamoto - Donkey Kong, Mario, 90% of market in 1980s ● Sega ● Sony Playstation ● Microsoft XBOX
Home PCs ● Apple - Commodore - IBM -
Designers ● Will Wright - SimCity ● Sid Meier - Pirates ● Ken and Roberta Williams - Colossal Cave ● Richard Garriott - Ultima I
11 A Brief History of Video Games
● Space Invaders ● PacMan ● Tetris ● Resident Evil ● Final Fantasy (1987) ● Myst (1993) ● Pokemon (1996)
Studios ● Activision & Infocom - text adventures ● Electronic Arts ● Interplay ● Lucas Arts ● Blizzard ● id Software
https://gamejobhunter.com/local-video-game-companies-seattle/ https://ceattle.com/seattle-gaming-companies.html
12 Games and Society
Why do people play video games
● Audience and Demographics ○ Average game players age is _____ ○ ESRB ○ Violence ● Cultural Issues ○ Banning of games ● Society Within Games ○ Good / Bad / Ugly ●
13 Ludology for Game Developers
Ludus (game) + Logos (reason / science)
● ludology - studies and theories focusing on games (parallel to narratology)
Terminology: Games, Play, Gameplay
Homo Ludens: A Study of the Play-Element in Culture (Huizinga, 1938) - anthropological and historical perspective on games
The debate that never happened - games as narratives VS games as games
1. Research into design - aesthetics and history of art and design 2. Research through design - building prototypes 3. Research for design - analyzing gameplay, principles of how to design
400 Project - Falstein's rules of game design
14 Games We Play
http://bit.ly/ypagmesweplay
15 Range of Games
Mainstream games are "mainstream"
Much wider range of games available for inspiration and experimentation:
Independent Games Festival http://www.igf.com/
Global Game Jam https://globalgamejam.org/games
14 of the Weirdest Video Games You'll Ever Find https://www.cheatsheet.com/technology/9-bizarre-video-games-its-hard-to-believe-exist.html/
The 12 best games that aren't about killing stuff https://www.businessinsider.com/the-12-best-non-violent-relaxing-games-2016-6
The 20 best non-violent games on PC https://www.rockpapershotgun.com/2018/01/26/best-non-violent-games/
16 Unity Playground https://unity3d.com/learn/tutorials/s/unity-playground https://github.com/Unity-Technologies/UnityPlayground
Physics based 2D games
Prerequisite: Complete Interactive Tutorials in Unity Hub OR Interface Essentials videos https://unity3d.com/learn/tutorials/topics/interface-essentials
Cheatsheets: https://github.com/Unity-Technologies/UnityPlayground/blob/master/Assets/Docu mentation/Cheatsheets.pdf
17 Under The Hood - Move
// FixedUpdate is called every frame when the physics are calculated void FixedUpdate () { // Apply the force to the Rigidbody2d rigidbody2D.AddForce(movement * speed * 10f); }
void Update () { // Moving with the arrow keys moveHorizontal = Input.GetAxis("Horizontal"); moveVertical = Input.GetAxis("Vertical"); ...
movement = new Vector2(moveHorizontal, moveVertical);
…. }
18 Under the Hood - AutoMove public class AutoMove : Physics2DObject { // These are the forces that will push the object every frame // don't forget they can be negative too! public Vector2 direction = new Vector2(1f, 0f);
//is the push relative or absolute to the world? public bool relativeToRotation = true; // FixedUpdate is called once per frame
void FixedUpdate () { if(relativeToRotation) { rigidbody2D.AddRelativeForce(direction * 2f); } else { rigidbody2D.AddForce(direction * 2f); } 19 } Under the Hood - FollowTarget public class FollowTarget : Physics2DObject { public Transform target; public float speed = 1f; public bool lookAtTarget = false; ... void FixedUpdate () { if(target == null) return; …. //Move towards the target rigidbody2D.MovePosition( Vector2.Lerp(transform.position, target.position, Time.fixedDeltaTime * speed)); }
20 Cat on Yer Head
https://www.playniac.com/games/cat-on-yer-head/
21 Road Ahead
HW: Unity Basics
HW: FSM - Finite State Machines
Playground Challenge (Group)
….
Final Project
22 Iterative Design 1. Brainstorming Short description of player experience goals 2. Physical Prototype 3. Presentation (optional) Secure funds 4. Software Prototype Using different software/platform, maybe just clickable web pages 5. Design Documentation Making sure everybody on the team shares the same goals - not necessarily a big static document 6. Production Exercise: Rock-Paper-Scissors based game Extra Credits: Playing Like a Designer
https://www.youtube.com/watch?v=_HmtmoGwpZc Making Your First Game
https://www.youtube.com/watch?v=z06QR-tz1_o&list=PLhyKYa 0YJ_5BkTruCmaBBZ8z6cP9KzPiX&index=1