Game Programming Laboratory Conclusion report

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

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

12 Final Projects. Steve Marschner CS5625 Spring 2016

The effect is not that noticeable, but it should be enough to highlight some of the coasts further. And that s it.

Toon Dimension Formal Game Proposal

PETEY S GREAT ESCAPE TEAM PENGUIN CONSISTS OF: ALICE CAO, ARIAN GIBSON, BRYAN MCMAHON DESIGN DOCUMENT VERSION 0.5 JUNE 9, 2009

Journey through Game Design

Development Outcome 1

Seaman Risk List. Seaman Risk Mitigation. Miles Von Schriltz. Risk # 2: We may not be able to get the game to recognize voice commands accurately.

Behaviors That Revolve Around Working Effectively with Others Behaviors That Revolve Around Work Quality

Trade Offs in Game Design

Game Jam Survival Guide

Sensible Chuckle SuperTuxKart Concrete Architecture Report

Trainyard: A level design post-mortem

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT

Game Design 2. Table of Contents

THE MAD SCIENTIST OF DUTCH DESIGN IS 3-D PRINTING A REAL BRIDGE

Kevin Chan, Blue Tongue Entertainment

FY2017 Q4 Earnings Presentation (Held on February 8, 2018) Q&A Summary

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

About MustPlay Games

Assignment 5: Virtual Reality Design

Building Strong Donor Relationships

This is an oral history interview conducted on May. 16th of 2003, conducted in Armonk, New York, with Uchinaga-san

Orbital Delivery Service

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

QUICK SELF-ASSESSMENT - WHAT IS YOUR PERSONALITY TYPE?

HIKI NO What I Learned AMEE NEVES

1

[Game] Programming I Didn t Learn In School

Chapter 7- Lighting & Cameras

50 Tough Interview Questions (Revised 2003)

SMART GUIDE FOR AR TOYS AND GAMES

CATS METRIX 3D - SOW. 00a First version Magnus Karlsson. 00b Updated to only include basic functionality Magnus Karlsson

Course Overview; Development Process

student handbook Australian Council for Educational Research

Webinar Module Eight: Companion Guide Putting Referrals Into Action

Colored Pencil Portraits PDF

Official Documentation

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

Recipients Letters

Design Document for: Name of Game. One Liner, i.e. The Ultimate Racing Game. Something funny here! All work Copyright 1999 by Your Company Name

How to develop graphic design for games with low-pixel density Tobias Kry

Applying classic game production principles to game productions with short development times

Video Marketing Vol. 3

Course Overview; Development Process

Virtual Reality in E-Learning Redefining the Learning Experience

Course Overview; Development Process

New Physically Based Rendering (PBR) and Scene Editor included in latest release of Paradox, C# Game Engine - version 1.1.3β

MITOCW Project: Backgammon tutor MIT Multicore Programming Primer, IAP 2007

CLICK HERE TO SUBSCRIBE

If you like the idea of keeping customers happy and helping them with their enquiries, then you should consider a career in customer service.

Developing Games for Xbox Live Arcade. Katie Stone-Perez Game Program Manager Xbox Live Arcade Microsoft

Meyer 1. Executive Summary. I think Tyran Wright, front end manager at the Lehi, UT Cabela s, told me

Video Sales Letter Zombie

7 Keys to Getting Things Done, Living On Purpose and Being Happy in the Process

Pros and Cons for Each Type of Image Extensions

Mentee Handbook. CharityComms guide to everything you need to know about being a mentee on our Peer Support Scheme. charitycomms.org.

Formal Game Proposal

Lecture 1: Introduction and Preliminaries

A High Resolution Jpeg Manipulation - 45:19 Minutes

Course Overview; Development Process

Killzone Shadow Fall: Threading the Entity Update on PS4. Jorrit Rouwé Lead Game Tech, Guerrilla Games

Step 1: taking the perfect shot

Lecture Overview. Artificial Intelligence Part I. Lab Exam Results. Evaluations

Photoshop Master Class Tutorials for PC and Mac

UIC and ARCd. kdhglaksdh

Guidelines for Visual Scale Design: An Analysis of Minecraft

Social Media that Work in

Case Study ASK THE ARTISTS: THOMAS HEINRICH

Brick Breaker. By Connor Molde Comptuer Games & Interactive Media Year 1

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

SPIDERMAN VR. Adam Elgressy and Dmitry Vlasenko

COPYWRITER CHECKLIST. Find Out If You ve Got What It Takes to Succeed

Unity Game Development Essentials

Game Engine Programming

Keytar Hero. Bobby Barnett, Katy Kahla, James Kress, and Josh Tate. Teams 9 and 10 1

SOCIAL MEDIA 101 THE BASICS (THE 5 PS)

A Cross-platform Game for Learning Physics

COMPUTER AIDED DESIGN 40

Step 1 - Introducing the Georgia O Keeffe Slideshow Guide

School Based Projects

Videos get people excited, they get people educated and of course, they build trust that words on a page cannot do alone.

Pro Photo Photography Studio By Abranimations INSTRUCTION MANUAL

THE PHOTOGRAPHER S GUIDEBOOK OF ESSENTIAL EDITS

I have divided the steps to publication into the following:

Autumn. Get Ready For Autumn. Technique eguide. Get Ready For

Open College of the Arts

Duel personality: How Mind Candy is growing World of Warriors

Finding The Recipe For Success How failure helped me find the recipe for success in small business.

Shutter Speed. Changing it for creative effects. Monday, 11 July, 11

Report Career Values I

Technologists and economists both think about the future sometimes, but they each have blind spots.

28 content upgrades that will boost your list

the gamedesigninitiative at cornell university Lecture 4 Game Components

HUSTLE YOUR WAY TO THE TOP

A New Aspect of Coarse-Grained Re-configurable Architectures. Can You Untangle It? Candace Calhoun. Johnson C. Smith University Class of 2012

JOURNAL OF OBJECT TECHNOLOGY

21 Go-to Shooting Settings

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

Transcription:

Game Programming Laboratory Conclusion report Huw Bowles Samuel Muff Filip Wieladek Revision: 1

1. Table of Contents 1.Table of Contents...2 2.Introduction...2 3.Final Results The Game...2 4.Experiences...3 5.Personal Entries...5 6.Conclusion...7 2. Introduction This document concludes our Game Lab project. First, a list and some screenshots of some of the changes in the final game are listed in chapter 3. Our experiences follow in chapter 4, with the content of our debriefing slides included. In chapter 5 we speak individually about our experience with the Game Lab, and finally chapter 6 wraps up the document with final thoughts and conclusions. 3. Final Results The Game Changes since the Alpha Release The changes since the Alpha Release are quite substantial. The following points are the most obvious / visible: Improved map based on feedback from play-testing. Skybox implemented. Two more hulls added, both with more weight (and therefore less speed) but more attachment points for weapons, and more health. Energy concept no ammunition, just an automatically regenerating energy bar (shown in blue) to provide the resource-management/limit element to the game. Pickup crates fall with parachutes and provide health, energy, extra speed or invincibility. Sun with animated texture and separate bloom pass. Realistically textured moon. Fully featured earth shader with effect passes for realistic diffuse color, realistic night glow color, animated wave normals, animated cloud layer, and atmospheric effects. Casts soft shadow on moon. Lens flare effect to add to perceived brightness of sun. Slimlined in-game HUD. Camera-shake to increase perception of explosions. Control scheme changed primary / secondary abstraction too artificial. Instead the letter-buttons are used in a logical manner based on their layout on the controller X is assigned to the left attachment point(s), B is assigned to

the right attachment point(s), Y is assigned to the front attachment point(s), and A is assigned to the top attachment point(s). Background music added Screen shots All the visual changes mentioned above that can be captured in a screenshot are illustrated below: 4. Experiences The overall experience of our group was positive. Our design ideas underwent major overhaul throughout the design process. It became clear that our original idea would not only be difficult to achieve technically, but virtually impossible to make fun. Our focus moved from making something that was physically accurate to making something with a more arcade character that provided raw fun to play. As a result of the omission of some of the more physical-simulation related elements from the game, we met many of our desired development targets fairly early, and the deadlines became less and less applicable to our project.

The other parts of the documentation were a similar story they were considered more a kind of book keeping than something that added real value to the development process with the exception of the play-testing chapter. This not only gave us guidance in polishing the game to make the final product, but provided us with motivation to finish the following tasks as the feedback was quite positive. For completeness we provide the aggregated feedback that we gave in the debriefing presentation here: What was the biggest technical difficulty during the project? Rendering pipeline on the Xbox Getting models imported completely Physics engine What would you do differently in your next game project? Keep closer contact in team / more meetings at the start Adhere closer project plan especially regarding planning functionality and developing in layers What was your greatest success during the project? Getting rendering to work Getting rendering to work on the 360 Having fairly good performance throughout Modelling work Software architecture survived more or less unchanged the lifespan of the project Are you happy with the final result of your project? Yes we think that with our result we hit a nice compromise between a nice GUI, realistic and playable physics, intuitive controls, fun / interesting weapons and gameplay dynamics, and nice graphical effects. We were lucky to have two adept modelers and as a result we have some quality animated models. An obvious opportunity for expansion would have been more levels, but we decided to focus our efforts on creating one finished level with some nice background elements to create a nice backdrop for the game-play. Do you consider the project a success?

Do you consider the project a success? Yes, we consider it a success because it is technically sound, visually appealing, user friendly and most importantly fun. To what extent did you meet your project plan and milestones (not at all, partly, mostly, always)? As mentioned previously in this document, the initial milestones were revised a number of times, but we were able to work roughly ahead of an equivalent point in our initial set of milestones. What improvements would you suggest for the course organization? (perhaps in D1 evaluation)? Nice to hear some topics you wouldn t normally hear in a CS course. However more practical information would have been helpful some times. Tips for approaches for multithreading would have been useful we got the impression that some of the other groups were also having issues getting speedup from parallel code. Did you like the XNA framework? Performance issues tough. MSDN documentation lacking. Big advantages from framework functionality. Nice platform for learning ideal for this course. We would have had a big challenge to get this result starting from scratch with C++ or trying to use a different framework. Overall yes! 5. Personal Entries Here some personal impressions from the course. Huw Impressions My experiences with the game lab were on average very good.

On the technical side, I really enjoyed getting my hands dirty in the rendering code (although frustrating at times!). I had barely even seen a shader before this project so it was a good experience for me. I also enjoyed having the opportunity to work on many different aspects of the game, on both technical and artistic aspects, and I learnt a lot in doing so. I think as a team we did very well to get to this result, because it wasn t all smooth sailing. It took until very late for us to agree on an idea for the game as we all had different tastes, and then we found out at the late stage of just before the alpha release that one of our team members was not available to work on the lab at all times (as a result I was spending my study time working almost exclusively on the game for some weeks). After the alpha release we discussed these issues and the situation improved after that, communication was much better, and we were also able to split the work more evenly. The time line was generally ambitious the entire process for us was putting things into the game as fast as possible and gauging if it was going to work, and if not taking it out and moving on, without dwelling on the point. It was also a new experience to me to need to always work at production quality everything I produced went directly into the game and I had little time to revisit any code or content unless it was absolutely necessary, so I had to strive to produce high quality results whenever I worked. This was a satisfying experience. All in all I found this course to be the most intense but at the same time most rewarding course I have taken in my studies. Contributions In addition to general coding on the game engine etc: Concept art / game design drawings 2D artistic content Physics engine integration Sound engine implementation Weapons, pickups dynamics & logic implementation Initial camera implementation and tweaks on final camera Loading and writing to XML configuration files (incl. Game variables, maps, robots...) GPU particles Deferred shading rendering pipeline Animated sun, earth and moon, meteors Bloom post process Lens flare post process Maintenance / bug fixes in other areas of the game code Video editing for presentation / submissions Sound hunting and editing

Fil Impressions I found this course to be really exciting and a lot of fun. I think the most valuable experience from this course was the fact that we could implement an own game engine (instead of using one). In the past, I have been working with the Unreal Engine and the Gold Source engine (Half life 1). This has been something new and was different than just changing or extending game engine. Before I went to University I spent a lot of time with modelling. The biggest problem was always the integration of the models into the game engine (whether it was source or unreal). In this project however, I was finally able to model and implement an object without any major problems. That was really a rewarding experience. Finally, I have invested quite some time into the graphical user interface, which proved to be quite a huge task. For that I have written a GUI framework to support the interface for the game. The GUI framework was based of the Java Swing framework. This framework's API was independent of XNA and could theoretically be used for any game engine (the only change would be in the graphics class of the framework). The biggest difficulty was to implement the different animations present as user interface for PC applications are usually not animated. To sum up, I found this course to require a lot of time, but it was also one of the best projects I have done in my University life. Contributions In addition to general coding on the game engine etc: Software Architecture of the game Galaxy Model Delorean Model (note, this model was done over 5 years ago) Stomp Model All weapon models Integration of Animation library from XNA Skinned Mesh tutorial Implemented bone attachment points additionally to the animation engine All Animations for the game Pick Up crate model Graphical User interface framework Graphical User interface for the game HUD Concurrent loader of the game Line Graphic System (which was not used in the final version) Implementation of some weapons

Homing system for rockets. Maintenance / bug fixes in other areas of the game code Sound hunting and editing Sam Impressions In my opinion, this course is the best one offered at ETH. The best thing for me was the opportunity to work in an international team on a large project. I ve learnt a lot from this experience, especially about soft skills. Although I would have preferred a more low-level approach, which would work better with the ETH mentality of understanding everything in depth, I ve still enjoyed the opportunity to work on a modern game console like the Xbox 360. The downside of this course is the huge amount of time you have to invest for it. Unfortunately, I made the mistake of taking too much courses besides the GameLab, which resulted in very stressful three months, where I couldn t always dedicate the amount of time to our game that it would have deserved. Still, I could put some things into the game which had a huge influence on the final product, for example the map model or the idea to the new control scheme. In conclusion, I m very happy and proud of the achievement of our group and I found this course a very rewarding experience. In the end, I d like to thank my teammates for their effort and their patience with me. Contributions In addition to general coding on the game engine etc: Map models and map setup Other modeling work Texturing / Texture mapping Sound hunting and editing Initial implementation of the new control scheme Prototype physics and map implementation Maintenance / bug fixes in other areas of the game code 6. Conclusion All in all the Game Lab was a very rewarding experience for us.

We all had to step into different roles, creative and technical, and it s a tribute to the flexibility of the team members that our resulting content and game engine are of a high standard. Fil proved to be a talented software architect, and in a short time created the foundations for the game, which changed very little during the course of the development, and we lost very little time to restructuring code. On top of that we strived to write solid and reliable code and as a result were not plagued by any long running issues or bugs. Another strength of our group was our ability to revise design decisions and move in different directions fast, I think much of the quality of our final game is owing to this fact. In conclusion we are all extremely happy with our experiences taking the Game Lab, and with our produced result.