Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson.

Slides:



Advertisements
Similar presentations
CSE 380 – Computer Game Programming Tile Based Graphics Legend of Zelda, by Nintendo, released 1987.
Advertisements

A Natural Interactive Game By Zak Wilson. Background This project was my second year group project at University and I have chosen it to present as it.
Introduction to Video Game Design BBrewer Fall 2013.
Professional Toolkit V2.0 C:\Presentations - SmartCafe_Prof_V2.0 - bsc page 1 Professional Toolkit 2.0.
COMPUTER PROGRAMMING I Essential Standard 5.02 Understand Breakpoint, Watch Window, and Try And Catch to Find Errors.
2-May-15 GUI Design. 2 HMI design There are entire college courses taught on HMI (Human-Machine Interface) design This is just a very brief presentation.
Chapter 3.7 Memory and I/O Systems. 2 Memory Management Only applies to languages with explicit memory management (C or C++) Memory problems are one of.
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 1 Introduction.
Contents Overview Major Features Major Components User Interface Gameplay Testing UML Timeline.
By Steven Taylor.  Basically a video game engine is a software system designed for the creation and development of video games.  There are many game.
AGD: 5. Game Arch.1 Objective o to discuss some of the main game architecture elements, rendering, and the game loop Animation and Games Development.
Solar System Assignment By: Sam Shon. Top down view of the Solar System Interactive Background Simulates Correct Physics Gravity Collisions Ambient Music.
Domain Modeling (with Objects). Motivation Programming classes teach – What an object is – How to create objects What is missing – Finding/determining.
Chapter 11 Adding Media and Interactivity. Flash is a software program that allows you to create low-bandwidth, high-quality animations and interactive.
CHAPTER 1 XNA Game Studio 4.0. Your First Project A computer game is not just a program—it is also lots of other bits and pieces that make playing the.
Games Development 2 Entity / Architecture Review CO3301 Week
CSE 380 – Computer Game Programming Introduction ITS 102 – 3D Modeling for Games Blender's User Interface.
Systems Software & Operating systems
1 I-Logix Professional Services Specialist Rhapsody IDF (Interrupt Driven Framework) CPU External Code RTOS OXF Framework Rhapsody Generated.
In.  This presentation will only make sense if you view it in presentation mode (hit F5). If you don’t do that there will be multiple slides that are.
Canyon Adventure Technology David Maung, Tristan Reichardt, Dan Bibyk, Juan Roman Department of Computer Science and Engineering The Ohio State University.
Computer Programming Basics Assistant Professor Jeon, Seokhee Assistant Professor Department of Computer Engineering, Kyung Hee University, Korea.
Our Annunciator Program Is the Most Effective Tool Available for Displaying Information to Large Groups. Annunciator Is... Fast & Easy.
Tennis for Two, 1958, by William Higinbotham, Brookhaven National Lab CSE 380 – Computer Game Programming Graphics Device Management.
EEC-693/793 Applied Computer Vision with Depth Cameras Lecture 13 Wenbing Zhao
11 A First Game Program Session Session Overview  Begin the creation of an arcade game  Learn software design techniques that apply to any form.
MAPLDDesign Integrity Concepts You Mean We’re Still Working On It? Sustaining a Design.
10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn.
Developing the Game User Interface (UI) Lesson 5.
Web Games Programming An Introduction to Unity 3D.
This tutorial has been created to help educators and CSME collaborators navigate the computer application “Audacity” to facilitate the creation of podcasts,
1 Begin the editing process by selecting method of importing video Use the Movie Task Menu to import, edit and save video Follow this menu to complete.
A guide to creating a power point display Essentials Ctl M =New Slide: a new slide can be inserted. It is placed after the slide that you are viewing.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Memory: Relocation.
Moving Arrays -- 1 Completion of ideas needed for a general and complete program Final concepts needed for Final Review for Final – Loop efficiency.
James Hornsby Connor Bradshaw 1168 Unit 1. Unit Unit  I will use Garageband because it has simple user interface, it is easy to use.
BMTRY 789 Lecture 11: Debugging Readings – Chapter 10 (3 rd Ed) from “The Little SAS Book” Lab Problems – None Homework Due – None Final Project Presentations.
Slide 1 Project 1 Task 2 T&N3311 PJ1 Information & Communications Technology HD in Telecommunications and Networking Task 2 Briefing The Design of a Computer.
INTRODUCTION GORT is a virtual 3D modeling environment for computer programmers. Its main area of focus is to aid in the education of programmers learning.
Fall 2002CS 150: Intro. to Computing1 Streams and File I/O (That is, Input/Output) OR How you read data from files and write data to files.
IMovie 10 Overview. Importing Files from a Video Camera into iMovie 1.Plug the camera into a wall outlet using the power supply. (Some cameras will not.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Games Development 1 Review / Revision CO2301 Games Development 1 Semester 2.
File and Folder CLI Commands 12/24/ Agenda Overview of OS functions and the SHELL Internal v External Commands Command History Making & Modifying.
CSCI 156: Lab 11 Paging. Our Simple Architecture Logical memory space for a process consists of 16 pages of 4k bytes each. Your program thinks it has.
Debugging tools in Flash CIS 126. Debugging Flash provides several tools for testing ActionScript in your SWF files. –The Debugger, lets you find errors.
Antigone Engine. Introduction Antigone = “Counter Generation” Library of functions for simplifying 3D application development Written in C for speed (compatible.
SE Team 9 GlobalFlyer Cole Hoosier Ryan Hannebaum Leanne Gray Alex Stampbach.
UFCFSU-30-13D Technologies for the Web An Introduction to Unity 3D.
Computer Components Part #2 – Input and Output. Let’s Review.
Computer Graphics Imaging Lecture 13 and 14 UV Mapping.
GCSE Computing: A451 Computer Systems & Programming Topic 3 Software System Software (1) The Operating System.
1 AQA ICT AS Level © Nelson Thornes 2008 Operating Systems What are they and why do we need them?
System Software (1) The Operating System
Creating a Simple Game in Scratch Barb Ericson Georgia Tech May 2009.
Introducing Scratch Learning resources for the implementation of the scenario
Sprites (Images) and Sounds
Lesson 4 0x Operating Systems.
3GB3 Game Design Unity 3D Basics.
Game Architecture Rabin is a good overview of everything to do with Games A lot of these slides come from the 1st edition CS 4455.
Topics Introduction Hardware and Software How Computers Store Data
Introduction to Events
TerraForm3D Plasma Works 3D Engine & USGS Terrain Modeler
TECHNICAL POSTER Laser reactant objects Interactive Doors and Saving
NWC601COM – 3D Modelling and Animation
Computer Animation UV Mapping.
NWC601COM – 3D Modelling and Animation
Games Development 2 Tools Programming
Games Development 2 Entity / Architecture Review
Presentation transcript:

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Puzzle Game Inspired by the 2D Bioshock TM Hack Mini Game Syphon uses the 3rd dimension

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Each map has a start point Then, using a limited selection of the following pipe pieces… …the user must reach a designated end point!

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson The start point pumps a liquid which must be diverted before a spillage occurs. Your path across the map will not be clear! Interactions with the environment may be necessary in order to progress.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Pre Loader System System Structure / Separation of Components Artist / Level Designer tools Music & Sounds

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Re-coding to work in window / full-screen mode is time consuming. Can't always use full-screen mode when debugging. Level Editors may want to toggle modes. Different machines support different resolutions.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

DirectXEngine DirectXPreLoader dxConfig.conf DirectXPL Core  Device Management  Window Management  OS Message Handling  Input management InputManage r  Handle Input Globals.h #define..... static MapParser.h External Map Data > LogManager  Handle logs  Handle errors SceneManager Camera FloorMgr SkyMgr SceneryMgr  Game state data  User profile data  Important pointers DataStore static SceneMgr  Manage & Render Scene Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Numbering Pattern

Bit Pattern 3 2 To represent pipe connectivity we use the char data type (1 byte) The bit positions from left to right represent the numbers of our faces, with the last 2 bits unused xx Any set bits in this pattern represent a potential connection point in that position Example The pipe piece to the left would have the following connectivity bit pattern xx Vertical Pipe Piece Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

1 Bit Pattern Examples 4 The pipe piece to the left would have the following connectivity bit pattern xx Horizontal Pipe Piece Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Bit Pattern Examples The pipe piece to the left would have the following connectivity bit pattern xx 3 4 Elbowed Pipe Piece Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

A starting point Imagine our starting point is an emerging pipe from the ground. Starting points only ever have ONE SET BIT. The bit pattern for this starting point would be xx 2 Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Making a connection! Consider the following two pieces & their bit patterns xx xx We can see that these two pieces are capable of connecting Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Forming a target... Starting Point = xx To face number... Target = MAX_FACE_NUM – STARTING_POINT_NUM Target = 5 – 2 Target = 3 STARTING_POINT_NUM = Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Target = 3 Can we connect? xx A 1 in the target bit position of the connecter represents a VALID CONNECTION A 0 in the target bit position of the connecter represents an INVALID CONNECTION Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

What next? 2 What happens after a successful connection has been made? Remember our target was the number We therefore remove the 3 rd bit from the connector bit pattern xx xx Becomes.. NEW STARTING POINT Back to slide 7 Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Using FMOD (Sound Engine) to load and play songs. Load 2D global sounds (Background Music). Load 3D positioned sounds (Birds/Stream). Easily cross-fade between two sounds. Easily play, stop, mute and adjust volume levels from any class in the game.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson No need to edit game code, all levels are externally controlled. Change key aspects of the game by modifying a simple map file. Load custom floor textures and custom meshes in a few simple lines. Easily set the start and end point of a map.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson Currently a very early work in progress. Allows a user to edit a Syphon map file, using a GUI interface. See how textures will look, before making the map file.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson The Art of

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott, Tom Sampson Our first task was to think of a variety of different level concepts. Here is the selection of ideas we came up with: Grassy field Jungle Volcano Underwater Desert - Wild West Farmyard City Space Retro Snow Roman

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson We decided to design a pipe that would look industrialand strong, but we also had to make sure that every pipe piece would connect seamlessly with the next pipe. We designed a variety of pipes designed to be used in different levels.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson We decided our levels would be of a cartoony design, incorporating over the top elements and size! We designed a variety of environment objects as well as the pipes, which we placed at select positions in the maps. we also randomly placed smaller objects, allowing us to ensure no two levels would be the same.

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson However, getting our level designs into our game was going to take more than simply making them in 3dsMax. We also had to use Photoshop to create textures that would tile efficiently, or create brand new textures altogether, as well as convert them into a format that DirectX would understand. To do this we used an add on to 3dsMax called "Pandasoft" 3dsMax to creating the models Photoshop to create and modify textures Pandasoft to convert the models into an X file DirectX to run the game

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson The Sound of

Games Programming Assignment Adam Kaye, Lee Taylor, Matthew Hall, Nick Abbott Tom Sampson We designed a variety of sounds with the hope that each one would reflect the atmosphere of the game at the current time. To create the sounds themselves, we used a combination of Reason 4 and Cubase. The sounds we created include: Background music Background music (fast) - played when the water is catching up to the current pipe piece Allow - played when the player successfully places a pipe piece Deny - played when the player tries to enter a pipe piece which isn't allowed Win Lose Stream - for ambient sound Birds - for ambient sound Change pipe piece