
Game Design Fundamentals for iPhone, iPad and Mac Course
Purpose: Game Design Fundamentals for iPhone, iPad and Mac is the first stop for any developer wanting to develop games. The foundation of a good game starts with game design. This course will introduce the student on how to create a game, not from source code, but from the story, user experience, and overall design. By the end of the course, the student will have a good understanding of the creative process involved in designing a game. Game Design for iPhone, iPad and Mac is the starting course to be prepared to start the next blockbuster game!
Suggested Prerequisites: None
Topics covered:
- Storytelling in with your app
- Game Story Theory
- iPhone, iPad and Mac Game Construction
- Building your characters
- Game Story Theory
- Steps to the Game Concept and Scripts
- Creating your High-Level Design Documents
- Game Properties
- The Creative Process
- The Team and Dynamics of Development
- Changes, Revisions and Creative Criticism
- The business of your app. Making money
- Pricing your game and ads
Upcoming Game Design Fundamentals for iPhone, iPad and Mac Courses
Core Animation & Audio for iPhone, iPad and Mac Course
Purpose: Core Animation & Audio for iPhone, iPad and Mac is designed to introduce the student to the biggest part of the iPhone, iPad and Mac systems - animation and sound. Anyone who has played with a Mac, iPhone or iPad finds out quickly how big a role animation and sound plays on these systems. This course covers the key areas of Core Animation and Sound and how they can be incorporated into any program and especially games.
Suggested Prerequisites: xcelMe iPhone and iPad programming courses or equivalent iphone and iPad development experience
Topics covered:
What is Core Animation
- What is a Layer
- Animation and Layers
- Core Animation and the iPhone
- Color, Motion, Attributes and Visibility
- Filters
- Content
- Masking
- What should you animate
- When should you use Core Animation
Basic Animations
- Simplest animations
- Animation Proxy Object
- The difference between window, view and layer animation
- Window resizing
- View resizing
- Layer resizing
- Using CABasicAnimation
- Timing Functions
Keyframe Animation
- Changing values over time
- Keyframe destinations
- Keyframe animation timing
- Keyfram animation for UI Cues
- Core Animation Layers
- Layer Tranforms
- Layer Filters
- Quicktime Layers
- OpenGL Layer
- Quartz Composer Layer
- Core Audio
- Advanced Core Animation
- User Interaction
- Performance
Upcoming Core Animation & Audio for iPhone, iPad and Mac Courses
Game Programming 1 for iPhone, iPad and Mac Course
Purpose: Game Programming 1 for iPhone, iPad and Mac exposes the student to the entire game development process. From design, character creation, tools, and coding, the student will learn the process by actually building an iPhone game from scratch. The course covers usage of OpenGL for 2D games and OpenAL, Sprites and animation.
Suggested Prerequisites: xcelMe iPhone and iPad programming courses or equivalent iPhone and iPad development experience
Topics covered:
- Game Design
- The Games Objective
- Game Play Components
- Time
- Lives
- Health
- Objects
- Doors
- Weapons
- Entities
- Players
- Terminology, Technology and Tools
- Terminology
- Sprite
- Sprite Sheet
- Animation
- Bitmap Fonts
- Tile Maps
- Particle System
- Collision Detection
- Artificial Intelligence
- Game Loop
- Technology
- Your Xcode Project
- EAGLView
- Creating the framebuffer and renderbuffer
- Color Values
- Positioning
- How OpenGl Works
- Applying Transformations and the Model
- Rendering to the Screen
- The Game Loop
- Timing
- Collision Detection
- Frame-Based
- Time-based, fixed interval
- EAGLView Class
- ES1Render Class
- Configuring the view port
- Game Scenes and Game Controller
- Creating the Game Controller
- Image Rendering
- Introduction to Rendering
- Rendering a Quad
- Texture Mapping
- Texture Coordinates
- Structures
- Image Rendering Classes
- Texture2D Class
- The Image Class
- Duplicate an Image
- Rendering an Image
- Getters and Setters
- Sprite Sheets
- Introduction to Sprite Sheets
- Simple Sprite Sheet
- Complex Sprite Sheet
- Initialization
- Retrieving Sprites
- Animation
- Introduction to Animation
- Frames
- State
- Type
- Direction
- Bounce Frame
- Animation Class
- Initialization
- Adding Frames
- Animation Updates
- Animation Rendering
Upcoming Game Programming 1 for iPhone, iPad and Mac Courses
Game Programming 2 for iPhone, iPad and Mac Course
Purpose: Game Programming 2 for iPhone, iPad and Mac continues where Game Programming 1 finishes off. In this part of the course the student will learn the concepts of tile maps, simple usage of the OpenGL Particle system and OpenAL. By the end of the course the student will have created a fully functional iPhone game.
Suggested Prerequisites: xcelMe iPhone and iPad programming courses or equivalent iPhone and iPad development experience, Game Programming 1 for iPhone, iPad and Mac.
Topics covered:
Bitmap Fonts
- Introduction to Bitmap Fonts
- Creating Bitmap Font Sprite Sheet
- Initializer
- Parsing the Control File
- Text
- Rendering Justified Text
- Text Width and Height
- Deallocation
Tile Maps
- Introduction to Tile Maps
- Tile Map Editor
- Tile Palette
- Layers
- Creating a Tile Map
- Drawing a Map
- Placing Objects
- Understanding the Tiled Configuration
- Map Elements
The Particle Emitter
- Introduction to Particle Systems
- Particle System Parameters
- Life Cycle of a Particle
- Making a Particle
Sound
- Introduction to sound on the iPhone
- Audio Sessions
- Playing Music
- Playing Sound Effects
- Creating Sound Effects
- Stereo Versus Mono
- Sound Effect Management
- Loading Sound Effects
- Playing Sound Effects
- Stopping Sound Effects
- Setting Sound Effects and Listener Position
- Handling Sound Interruptions
User Input
- Introduction to User Input
- Touch Events
- Processing Touch Events
- The touchBegan Phase
- The touchMoved Phase
- The touchEnded Phase
- Processing Taps
- Accelerometer Events
The Game Interface
- OpenGL Interface
- Rendering the Interface
- Defining Button Bounds
- Handling Touches
- Handling Transitions
- OpenGL ES Orientation
- UIKit Interfaces
- Wiring Up the Interface
- UIKit Orientation
- Showing and Hiding a UIKit Interface
Collision Detection
- Collision Pruning
- Frame-Based vs time Based
- Axis-Aligned bounding boxes
- Detecting Collisions
- Collision Map
- Entity-to-Map Collision Detection
- Entity-to-Entity Collision Detection
Putting It All Together
- Saving the Game State and Settings
- Saving Game State
- Loading Fame State
- Saving High Scores
- Adding a Score
- Performance and Tuning
- Using Instruments
- Leaks Instruments
- Using the OpenGL ES Instruments
- Compiler setting
- Multiple Device Types
Upcoming Game Programming 2 for iPhone, iPad and Mac Courses
Game Engines for iPhone, iPad and Mac Course
Purpose: Games Engines 1 for iPhone, iPad and Mac introduces the student to Cocos2D, a popular and highly supported Open Source game engine for iPhone, iPad and Mac. Game Engines greatly simplify and speed the game development process. The course starts with the basics of Cocos2D and gradually exposes the student to more advance concepts. These concepts include Scrolling bitmap screens, parallax effects, Particle Effects and more! This class compliments Game Programming 1 & 2 by exposing the student to a third party library that enhances and extends the concepts learned in Game Programming 1 & 2.
Suggested Prerequisites: xcelMe iPhone and iPad programming courses or equivalent iPhone and iPad development experience, Game Programming 1 & 2
Topics covered:
- Development of a game using Cocos2D for iPhone and iPad
- Game Building Blocks
- Cocos2D Sprites In-Depth
- Scrolling Bitmap Screens
- Cocos2D Particle Effects
- Tilemaps
- Isometric Tilemaps
- Chipmunk and Box2D Physics Engines
- A Pinball Game using the physics engine.
- Apple's Game Center
Upcoming Game Engines for iPhone, iPad and Mac Courses
Programming Game AI for iPhone, iPad and Mac Course
Purpose: Programming Game AI for iPhone, iPad and Mac provides the student a comprehensive and practical introduction to the base Artificial Intelligence techniques used by the game development industry. The student will be introduced by example to state drive and goal driven behavior, path planning and optimization, finite state machines and fuzzy logic.
Suggested Prerequisites: xcelMe iPhone and iPad programming courses or equivalent iPhone and iPad development experience, Game Programming 1 & 2.
Topics covered:
State Driven Agent Design
How to Create Autonomously Moving Game Agents
- The Vehicle Model
- Spatial Partitioning
Sports Simulation - Simple Soccer
- Making Estimates and Assumptions Work for You
The Secret Life of Graphs
Raven: An Overview
- Overview of the Game Architecture
- AI Design Considerations
- AI Implementation
Practical Path Planning
- Creating a Path Planner Class
Goal-Driven Agent Behavior
Fuzzy Logic
- Fuzzy Rules
- Fuzzy Linguistic Variables
Upcoming Programming Game AI for iPhone, iPad and Mac Courses