UDK iOS Game Development Beginner’s Guide
By Christos Gatzidis and John P. Doran
()
About this ebook
Related to UDK iOS Game Development Beginner’s Guide
Related ebooks
Unreal Development Kit Beginner’s Guide Rating: 1 out of 5 stars1/5Blender Game Engine: Beginner’s Guide Rating: 3 out of 5 stars3/5Learning AndEngine Rating: 0 out of 5 stars0 ratingsSFML Game Development By Example Rating: 0 out of 5 stars0 ratingsConstruct Game Development: Beginner’s Guide Rating: 0 out of 5 stars0 ratingsMastering Unreal Engine 4.X Rating: 0 out of 5 stars0 ratingsHTML5 Game Development with GameMaker Rating: 0 out of 5 stars0 ratingsLearning Libgdx Game Development Rating: 0 out of 5 stars0 ratingsLearning Unreal® Engine iOS Game Development Rating: 0 out of 5 stars0 ratingsCocos2d Game Development Blueprints Rating: 0 out of 5 stars0 ratingsiOS Game Development By Example Rating: 0 out of 5 stars0 ratingsUnity Multiplayer Games Rating: 5 out of 5 stars5/5Source SDK Game Development Essentials Rating: 0 out of 5 stars0 ratingsUnreal Engine 4 Game Development Essentials Rating: 4 out of 5 stars4/5Learning Android Game Development Rating: 0 out of 5 stars0 ratingsLearning Unreal Engine Game Development Rating: 5 out of 5 stars5/5Google SketchUp for Game Design: Beginner's Guide Rating: 5 out of 5 stars5/5Unity Game Development Scripting Rating: 0 out of 5 stars0 ratingsLearning LibGDX Game Development - Second Edition Rating: 0 out of 5 stars0 ratingsMastering Oculus Rift Development Rating: 0 out of 5 stars0 ratingsUnreal Engine Physics Essentials Rating: 1 out of 5 stars1/5Mastering iOS Game Development Rating: 0 out of 5 stars0 ratingsRubyMotion iOS Develoment Essentials Rating: 0 out of 5 stars0 ratingsCRYENGINE Game Development Blueprints Rating: 0 out of 5 stars0 ratingsMastering Unity Scripting Rating: 0 out of 5 stars0 ratingsMastering Android Game Development Rating: 0 out of 5 stars0 ratingsBuilding Levels in Unity Rating: 0 out of 5 stars0 ratingsUnity Android Game Development by Example Beginner's Guide Rating: 4 out of 5 stars4/5Getting Started with SpriteKit Rating: 0 out of 5 stars0 ratingsBuilding an FPS Game with Unity Rating: 0 out of 5 stars0 ratings
Programming For You
Python: Learn Python in 24 Hours Rating: 4 out of 5 stars4/5Narrative Design for Indies: Getting Started Rating: 4 out of 5 stars4/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Basic Exercises for Competitive Programming: Python Rating: 0 out of 5 stars0 ratingsHTML, CSS, and JavaScript Mobile Development For Dummies Rating: 4 out of 5 stars4/5Coding All-in-One For Dummies Rating: 4 out of 5 stars4/5Algorithms For Dummies Rating: 4 out of 5 stars4/5Mastering C# and .NET Framework Rating: 5 out of 5 stars5/5Python for Finance Cookbook: Over 50 recipes for applying modern Python libraries to financial data analysis Rating: 0 out of 5 stars0 ratingsGit Essentials Rating: 4 out of 5 stars4/5Web Design Playground: HTML & CSS The Interactive Way Rating: 5 out of 5 stars5/5Javascript For Beginners: Your Guide For Learning Javascript Programming in 24 Hours Rating: 3 out of 5 stars3/5SQL All-in-One For Dummies Rating: 3 out of 5 stars3/5The Creative Programmer Rating: 0 out of 5 stars0 ratingsPython Projects for Everyone Rating: 0 out of 5 stars0 ratingsLearn JavaScript in 24 Hours Rating: 3 out of 5 stars3/5Python for Beginners: A Crash Course to Learn Python Programming in 1 Week Rating: 0 out of 5 stars0 ratingsKivy Blueprints Rating: 0 out of 5 stars0 ratingsOCP Oracle Certified Professional Java SE 17 Developer Practice Tests: Exam 1Z0-829 Rating: 5 out of 5 stars5/5DevOps: Introduction to DevOps and its impact on Business Ecosystem: Introduction to DevOps and its impact on Business Ecosystem Rating: 0 out of 5 stars0 ratingsAccelerated DevOps with AI, ML & RPA: Non-Programmer’s Guide to AIOPS & MLOPS Rating: 5 out of 5 stars5/5CSS in Depth Rating: 2 out of 5 stars2/5Ansible DevOps Cookbook Rating: 0 out of 5 stars0 ratingsLearn SAP Basis in 24 Hours Rating: 5 out of 5 stars5/5
Reviews for UDK iOS Game Development Beginner’s Guide
0 ratings0 reviews
Book preview
UDK iOS Game Development Beginner’s Guide - Christos Gatzidis
Table of Contents
UDK iOS Game Development Beginner's Guide
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Time for action—heading
What just happened?
Pop quiz—heading
Have a go hero—heading
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. Getting Started on UDK with iOS
Defining UDK
Don't expect to make Gears of War
Downloading and installing UDK
Time for action—installing UDK on your PC
What just happened?
UDK directory overview
Binaries
Development
Engine
UDKGame
Setting up for iOS development with UDK
Walkthrough of Unreal Remote
Time for action—downloading and installing UDK Remote
What just happened?
Time for action—matching Mobile Previewer settings with your iOS device
What just happened?
Describing the concept of Urban Warrior, a third-person shooter title
Pop quiz
Summary
2. Beginning Urban Warrior, a Third-person Shooter
Starting out
A brief walkthrough of the UDK interface
Toolbox sidebar
Modes
Brushes
Volumes and Select
Go to and Builder Brush
Viewport toolbar
The toolbar
Exploring the main menu bar
File
Edit
View
Brush
Build
Play
Tools
Preferences
Help
The console bar
Keyboard shortcuts
Creating environments and the basics of level design
CSG brushes
Static meshes
The differences between CSG brushes and static meshes
Moving around viewports
Adding world geometry and texturing to the game
Time for action—creating a basic room
What just happened?
Time for action—texturing the level
What just happened?
Creating lighting for the game
Time for action—lighting the level
What just happened?
Creating actors and static meshes for the game
Time for action—adding static mesh detail
What just happened?
Have a go hero—adding multiple static meshes for extra detail
Progress in Urban Warrior, so far
Pop quiz
Summary
3. Taking It to the Next Level: Enriching with Content
The outside world
Time for action—creating an exterior
What just happened?
Previewing the mobile editor
Particles make everything better
Time for action—adding a particle system
What just happened?
Foggy weather
Time for action—adding fog
What just happened?
Summary
4. Using Kismet and Matinee
Defining Kismet
Creating your first Kismet sequence
Time for action—changing the level to a third-person perspective
What just happened?
Kismet primer
Parts of a sequence object
Benefits and drawbacks of using Kismet
Benefits of using Kismet
Drawbacks
Have a go hero—Kismet
Defining Matinee
Creating your first Matinee movie
Time for action—opening cutscene
What just happened?
Have a go hero—Matinee
With our powers combined...
Time for action—creating an automatic door
What just happened?
Kismet for mobile devices
Mobile Kismet—actions
Add Input Zone
Clear Input Zone
Remove Input Zone
Save/Load values
Mobile Kismet—events
Analog Input
Mobile Button Access
Mobile Input Access
Mobile Look
Mobile Object Picker
Mobile Simple Swipes
Touch Input
Draw Image
Draw Text
Give some input to the situation
Time for action—adding input
What just happened?
Have a go hero—mobile sequence objects / adding input
Pop quiz
Summary
5. Action Sequences for Urban Warrior
Sequences and you
Life, or something like it
Time for action—spawning AI into our level
What just happened?
It lives! but...
Time for action—base enemy AI
What just happened?
Improvements to be made
Time for action—base enemy AI
What just happened?
Have a go hero—taking your AI further
Exporting subsequences
Time for action—creating a second enemy
What just happened?
Remote events
When we can use a remote event
Creating a remote event
Named variables
When we can use a named variable
Creating a named variable
Manipulating the player
Time for action—regenerating player health over time
What just happened?
Have a go hero—regenerating player health over time
Prefabs
Time for action—door prefab
What just happened?
Building combat sequences
Layouts
Spawning and enemy placement
Environment
Scripting
Playtesting
Summary
6. Bringing it All Together
Starting a workflow
Time for action—starting our level
What just happened?
Geometry mode
Setting up the workflow
Some keyboard tips
Seeing double
Building our level
Time for action—building our level
What just happened?
Have a go hero—powerups and weapon pickups
Combat scenarios
Time for action—first combat scenario
What just happened?
Have a go hero—creating your own combat encounter
Time for action—end of level
What just happened?
Pop quiz
Summary
7. Advanced Content Creation for Urban Warrior
Main menu environment creation
Time for action—building main menu backdrop
What just happened?
Importing textures
Time for action—finishing the main menu
What just happened?
Adding sounds
Time for action—playing a sound effect
What just happened?
Customizing sounds
Adding music
Time for action—adding a background music track
What just happened?
Custom materials
Time for action—customizing brushes
What just happened?
Custom meshes
Time for action—importing custom objects
What just happened?
Optimizations
Console commands—statistics
stat fps
stat game
stat memory
stat es2
Combining meshes
Precomputed visibility
Streaming volumes
Debugging
Comment your code
Captain's log
Summary
8. Publishing and Monetizing Your Game
Before the magic happens
Registering as an iOS developer
Setting up provisioning
Time for action—creating new provisioning
What just happened?
Custom Graphics
Playtesting on the device
Why playtest?
How to playtest
Commercialization
Licensing UDK
In-game advertisements
In-app purchases
Bringing everyone together with Game Center
iCloud integration
Facebook/Twitter integration
Bringing our game to the world
Time for action—requesting a Distribution Certificate
What just happened?
Summary
A. Pop quiz—Answers
Chapter 1: Getting Started on UDK with iOS
Chapter 2: Beginning Urban Warrior, a third-person Shooter
Chapter 4: Using Kismet and Matinee
Chapter 6: Brining It All Together
Index
UDK iOS Game Development Beginner's Guide
UDK iOS Game Development Beginner's Guide
Copyright © 2012 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: August 2012
Production Reference: 1190812
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-84969-190-1
www.packtpub.com
Cover Image by John Preston Doran ( <netravelr@gmail.com> )
Credits
Authors
John P. Doran
Christos Gatzidis
Reviewers
Richard Moore
Dan Weiss
Acquisition Editor
Joanna Finchen
Lead Technical Editor
Unnati Shah
Technical Editors
Prasanna Joglekar
Prashant Salvi
Project Coordinator
Vishal Bodwani
Proofreader
Maria Gould
Indexer
Rekha Nair
Production Coordinator
Melwyn D'sa
Cover Work
Melwyn D'sa
About the Authors
John Doran is a 23 year old Technical Game Designer, who has worked on all manners of educational, mod, and professional game projects. He graduated from DigiPen Institute of Technology in Redmond, WA with a Bachelor of Science in Game Design. John previously worked at LucasArts in San Francisco, CA on Star Wars 1313 as an Intern-Level Designer. He is currently working at DigiPen's campus in Singapore tutoring and assisting students while giving lectures on UDK, Flash, and Actionscript. If you would like to reach him, send him an e-mail at john@johnpdoran.com. Though John occasionally writes papers which he posts on his personal website, this is his first published book.
I would first like to thank both Christos Gatzidis and Joanna Finchen, for giving me the opportunity to write this book. I would also like to thank all of the people at Packt, including Vishal Bodwani and Unnati Shah, for all their support during the writing process, you were all so amazing!
I would also like to thank Daniel Weiss. In addition to being a Technical Reviewer of the book, he helped me when I was just learning Unreal Tournament 3 and kindled my love of Epic's fine game engine without which I wouldn't be here today.
On that same note, I also want to thank Samir Abou Samra and Elie Hosry for their support and encouragement while working on this book, and the rest of the DigiPenSingapore staff including Jocelyn Villanueva, Chris Champagne, and Nicolette Oh, as well as my Singapore friends, Josë Rivero, Matt Hill, and Gabriel Serra.
Last but not least, a big thanks goes to all of my friends, my little brothers and sister, Chris, Joey, and Dymphna Doran, and my girlfriend Hannah Mai for being patient with me, as I spent my free time and weekends away from them as I finished the last few chapters of the book. Finally, my parents, Joseph and Sandra Doran took me seriously, when I told them I wanted to make games.
Dr. Christos Gatzidis is a Senior Lecturer in Creative Technology at Bournemouth University, UK at the School of Design, Engineering, and Computing. He has a Ph.D. from City University London, UK and an M.Sc. in Computer Animation from Teesside University, UK, and has previously published work in a number of academic edited books, conferences, and journals. He is also the framework leader for the Creative Technology collection of degrees at Bournemouth University (which includes the B.Sc. in Games Technology and the M.Sc. in Computer Games Technology courses). Christos teaches a variety of units on these courses and uses Epic's UDK across all years of the undergraduate course, to cover topics ranging from basic level design fundamentals to more advanced scripting.
I would like to thank all friends, colleagues, and family who offered support during the writing of this book and, of course, the great people at Packt (for their guidance and endless patience) plus, last but not least, Epic Games (for the creation of UDK, easily one of the coolest game design tools ever)!
About the Reviewers
Richard Moore graduated in 2009 studying video games design at Hull School of Art and Design, where he first began expanding his creativity by working as a web designer in Hull, East Yorkshire, and London for 3 years. He worked on a number of different projects with clients from different industry backgrounds, such as a collection of stylish websites, logos, brochures, business cards, web banners, animated graphics, and e-mail marketing campaigns. Through the clouds lies his passion in video game development and the complete creation of 3D art including modeling, texturing, and high resolution rendering. He does game documentation and conceptual drawings as well.
Richard will always take any opportunity to meet as many different people from the game development community as possible and as a result, he has attended the Game Grads career fair, participated in the Game Republic 2009 student showcase in Sheffield and Platform 2010, Hulls 1st Digital and Gaming event where he won the award for best character and a cheque for £100. In March 2011, he was involved in Platform Expo's 2011, Hull's second video game expo, where he entered the video game showcase for the second consecutive year and won second prize for his outstanding contribution to video game design, and is now involved in Platform Expo's 2012 being held at the University of Hull.
In July 2011, he volunteered as a Marketing Assistant/Designer for an online-based video games magazine, where he would assist the Editor-In-Chief in designing templates for latest issues of the magazine, writing reviews on latest video game titles, and talking to clients about potential advertising coverage within the magazine and online. As a result, he is now working as a Games Designer/Developer for Concise Media Design based in London, who create ground-breaking iPad apps, high-impact short films, and bespoke video games. In his spare time, he focuses on more freelance design and development work with up and coming companies, as well as rambling on about video games.
Dan Weiss is currently a programmer working at Psyonix Studios in San Diego, CA. He is a 2010 graduate of DigiPen Institute of Technology, having worked on titles such as Attack of the 50ft Robot! during his time there. Since 2004, he has also been working on the Unreal Engine, producing the mod Unreal Demolition for Unreal Tournament 2004 and Unreal Tournament 3, and is currently working on the iOS title ARC Squadron.
I'd like to thank my parents for believing in my crazy idea of working on videogames for a living; Rachel Rutherford for always being available at all hours of the day when I need some advice; and John Doran for thinking of me when this book started coming together, and always providing me with some laughs about his latest Kismet tricks.
www.PacktPub.com
Support files, eBooks, discount offers and more
You might want to visit www.PacktPub.com for support files and downloads related to your book.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
http://PacktLib.PacktPub.com
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books.
Why Subscribe?
Fully searchable across every book published by Packt
Copy and paste, print and bookmark content
On demand and accessible via web browser
Free Access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.
Preface
It has never been a more attractive time to be an app developer. With no signs of stopping, Apple's iOS devices are dominating the mobile scene and with UDK, the free version of the most popular third-party game engine available, it has never been easier to get into the app business.
This book, UDK iOS Game Development Beginner's Guide, takes a clear, step-by-step approach to building a small third-person shooter game using the Unreal Development Kit with plenty of examples of how to create a game that is uniquely your own.
You will begin learning the fundamentals of the Unreal Engine before creating a third-person shooter game in UDK. After the game is created you will learn what can be done with any project to optimize your game for the iOS platform and discover special considerations that need to be made. Finally, you'll publish your game on the App Store for the world to see and play along, with details on the different costs associated with publishing.
What this book covers
Chapter 1, Getting Started on UDK with iOS, offers a brief overview of the exciting world that is UDK development for iOS, while also using UDK Remote to play UDK games on PC using our iOS device as the input device.
Chapter 2, Beginning Urban Warrior: A Third Person Shooter, gives readers an insight into UDK's interface, starting off building a room, adding lighting, and populating the room with models.
Chapter 3, Taking It to the Next level: Enriching with Content, adds an exterior to our level while also adding lighting and fog specifically for mobile devices. Readers also use the Mobile Preview option to show how our level looks on an iOS device, while breathing life into our world with particle systems.
Chapter 4, Using Kismet and Matinee, allows us to look at Kismet and Matinee, two of the most popular ways to create motion and interactivity in our otherwise static world, creating a cinematic, an automatic door, and adding functionality to our game using Mobile Input. We also learn about sequence objects made specifically for mobile devices.
Chapter 5, Action Sequences for Urban Warrior, teaches readers about sequences, subsequences, and prefabs, while developing combat scenarios for our game with AI enemies.
Chapter 6, Bringing it all together, shows how to rapidly prototype levels using a workflow using Geometry Mode to flesh out Urban Warrior into a completed level.
Chapter 7, Advanced Content Creation for Urban Warrior, discusses how to make the game your own by bringing in custom content to your game, such as a main menu, audio, textures, static meshes, as well as how to create materials that work the same way on both PC and iOS, with some tips for optimization and debugging for iOS games.
Chapter 8, Publishing and Monetizing your Game, takes your finished game and walks through the process of getting the game onto your own device, and eventually to the iOS App Store, discussing all you need to know about the royalties model Epic Games has in place for UDK-developed iOS titles, with links leading readers who are interested to learn about adding even more functionality to their game.
What you need for this book
In order to use this book you need to have a computer with Windows that is capable of running the Unreal Development Kit (UDK). UDK requires a personal computer with the following system configuration:
Windows XP SP3 (32-bit only) with DirectX 9.0c
2GHz or better CPU
2+ GB RAM
A graphics card with Shader Model 3.0 support, such as nVidia GeForce 7800
Note that Windows 7 64-bit is currently the mainstream development environment.
The following are the requirements for content development:
Windows 7 64-bit
2.0+ GHz multi-core processor
8 GB System RAM
NVIDIA 8000 series or higher graphics card
Plenty of HDD space
The UDK will install .NET Framework 3.5 Service Pack 1, if you don't already have it, which will require an internet connection.