Unity 3.x Game Development by Example Beginner's Guide


Unity 3.x Game Development by Example Beginner's Guide
eBook: $26.99
Formats: PDF, PacktLib, ePub and Mobi formats
$22.95
save 15%!
Print + free eBook + free PacktLib access to the book: $71.98    Print cover: $44.99
$67.94
save 6%!
Packt
Anytime, Anywhere
Unlimited eBook downloads and up to 50% off the print version!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Support
Sample Chapters
  • Build fun games using the free Unity game engine even if you've never coded before
  • Learn how to "skin" projects to make totally different games from the same file – more games, less effort!
  • Deploy your games to the Internet so that your friends and family can play them
  • Packed with ideas, inspiration, and advice for your own game design and development
  • Stay engaged with fresh, fun writing that keeps you awake as you learn
  • Updated for the latest 3.x release

 

Book Details

Language : English
Paperback : 408 pages [ 235mm x 191mm ]
Release Date : September 2011
ISBN : 1849691843
ISBN 13 : 9781849691840
Author(s) : Ryan Henson Creighton
Topics and Technologies : All Books, Game Development, Unity, Beginner's Guides, Games

Table of Contents

Preface
Chapter 1: That's One Fancy Hammer!
Chapter 2: Let's Start with the Sky
Chapter 3: Game 1: Ticker Taker
Chapter 4: Code Comfort
Chapter 5: Game #2: Robot Repair
Chapter 6: Game #2: Robot Repair Part 2
Chapter 7: Don't Be a Clock Blocker
Chapter 8: Ticker Taker
Chapter 9: Game #3: The Break-Up
Chapter 10: Game #3: The Break-Up Part 2
Chapter 11: Game #4: Shoot the Moon
Chapter 12: Action!
Appendix: References
Index
  • Chapter 1: That's One Fancy Hammer!
    • Introducing Unity 3D
    • Unity takes over the world
    • Browser-based 3D? Welcome to the future
    • Time for action – Install the Unity Web Player
    • Welcome to Unity 3D!
      • What can I build with Unity?
        • FusionFall
      • Completely hammered
      • Should we try to build FusionFall?
      • Another option
        • Off-Road Velociraptor Safari
      • I bent my Wooglie
        • Big Fun Racing
        • Diceworks
    • Walk before you can run (or double jump)
    • There's no such thing as "finished"
    • Stop! Hammer time
      • Explore Bootcamp
    • The wonders of technology!
    • The Scene window
      • The Game window
      • The Hierarchy
        • The Project panel
        • The Inspector
        • Heads up?
        • Layers and layout dropdowns
        • Playback controls
        • Scene controls
    • Don't stop there—live a little!
    • Summary
      • Big ambition, tiny games
    • Chapter 2: Let's Start with the Sky
      • That little lightbulb
      • The siren song of 3D
      • Features versus content
      • A game with no features
      • Mechanic versus skin
      • Trapped in your own skin
      • That singular piece of joy
      • One percent inspiration
      • Motherload
      • Heads up!
      • Artillery Live!
      • Pong
      • The mechanic that launched a thousand games
      • Toy or story
      • Redefining the sky
      • Summary
        • Let's begin
      • Chapter 3: Game 1: Ticker Taker
        • Kick up a new Unity project
          • Where did everything go?
        • 'Tis volley
        • Keep the dream alive
        • Slash and burn!
        • The many faces of keep-up
        • Creating the ball and the hitter
        • Time for action – Creating the ball
        • A ball by any other name
        • Time for action – Renaming the ball
        • Origin story
          • XYZ/RGB
        • Time for action – Moving the ball Into the "sky"
        • Time for action – Shrinking the ball
        • Time for action – Saving your scene
        • Time for action – Adding the paddle
          • What is a mesh?
          • Poly wanna crack your game performance?
        • Keeping yourself in the dark
        • Time for action – Adding a light
        • Time for action – Moving and rotating the light
          • Extra credit
        • Are you a luminary?
          • Who turned out the lights?
          • Darkness reigns
        • Time for action – Camera mania
        • Time for action – Test your game
        • Let's get physical
        • Time for action – Adding physics to your game
        • Understanding the gravity of the situation
        • More bounce to the ounce
        • Time for action – Make the ball bouncy
        • Summary
          • Following the script
        • Chapter 4: Code Comfort
          • What is code?
          • Time for action – Writing your first Unity script
          • A leap of faith
          • Lick it and stick it
            • Disappear Me!
          • It's all Greek to me
          • You'll never go hungry again
          • With great sandwich comes great responsibility
          • Examining the code
          • Time for action – Find the Mesh Renderer component
          • Time for action – Make the ball re-appear
          • Ding!
          • Time for action – Journey to the Unity Script Reference
          • The Renderer class
          • What's another word for "huh"?
          • It's been fun
          • Time for action – Unstick the script
          • Gone, but not forgotten
          • Why code?
          • Equip your baby bird
          • Time for action – Creating a new MouseFollow script
          • A capital idea
          • Animating with code
          • Time for action – Animating the paddle
          • Pick a word—(almost) any word
          • Screen coordinates versus world coordinates
          • Move the paddle
          • Worst. Game. Ever.
          • See the matrix
          • Time for action – Listening to the paddle
          • A tiny bit o' math
          • Tracking the numbers
          • Futzing with the numbers
          • Time for action – Logging the new number
          • She's A-Work!
          • Somebody get me a bucket
          • Time for action – Declaring a variable to store the screen midpoint
          • Using all three dees
          • Time for action – Following the Y position of the mouse
          • A keep-up game for robots
          • Once more into the breach
          • Time for action – Re-visiting the Unity Language Reference
          • Our work here is done
          • Time for action – Adding the sample code to your script
          • One final tweak
            • What's a quaternion?
            • Wait, what's a quaternion?
            • WHAT THE HECK IS A QUATERNION??
          • Educated guesses
            • More on Slerp
          • Right on target
          • Keep it up
            • Beyond the game mechanic
          • Chapter 5: Game #2: Robot Repair
            • You'll totally flip
            • A blank slate
            • You're making a scene
            • Time for action – Setting up two scenes
            • No right answer
            • Time for action – Preparing the GUI
            • The beat of your own drum
            • Time for action – Creating and linking a custom GUI skin
            • Time for action – Creating a button UI control
            • Want font?
            • Cover your assets
            • Time for action – Nix the mip-mapping
            • Front and center
            • Time for action – Centering the button
            • To the game!
            • Time for action – Adding both scenes to the Build List
            • Set the stage for robots
            • Time for action – Preparing the game scene
            • The game plan
            • Have some class!
            • Time for action – Storing the essentials
            • Start me up
            • Going loopy
            • The anatomy of a loop
            • To nest is best
            • Seeing is believing
            • Time for action – Creating an area to store the grid
            • Build that grid
            • Now you're playing with power!
            • Chapter 6: Game #2: Robot Repair Part 2
              • From zero to game in one chapter
              • Finding your center
              • Time for action – Centering the game grid vertically
              • Time for action – Centering the game grid horizontally
              • Down to the nitty griddy
                • Do the random card shuffle
              • Time for action – Preparing to build the deck
                • Let's break some robots
              • Time for action – Building the deck
              • Time for action – Modifying the img argument
              • What exactly is "this"?
              • Random reigns supreme
              • Second dragon down
              • Time to totally flip
              • Time for action – Making the cards two-sided
              • Time for action – Building the card-flipping function
              • Time for action – Building the card-flipping function
              • Pumpkin eater
              • Stabby McDragonpoker rides again
              • Game and match
              • Time for action – ID the cards
              • Time for action – Comparing the IDs
              • On to the final boss
                • Endgame
              • Time for action – Checking for victory
                • Endgame
              • Bring. It. On.
              • Chapter 7: Don't Be a Clock Blocker
                • Apply pressure
                • Time for action – Preparing the clock script
                • Time for more action – Preparing the clock text
                • Still time for action – Changing the clock text color
                • Time for action rides again – Creating a font texture and material
                • Time for action – What's with the tiny font?
                • Time for action – Preparing the clock code
                • Time for action – Creating the countdown logic
                • Time for action – Displaying the time onscreen
                • Picture it
                • Time for action – Grabbing the picture clock graphics
                • Time for action – Flexing those GUI muscles
                • The incredible shrinking clock
                • Keep your fork—there's pie!
                • How they did it
                • Time for action – Rigging up the textures
                • Time for action – Writing the pie chart script
                • Time for action – Commencing operation pie clock
                • Time for action – Positioning and scaling the clock
                • Unfinished business
                • Chapter 8: Ticker Taker
                  • Welcome to Snoozeville
                    • Model behavior
                  • Time for action – Exploring the models
                  • Time for action – Hands up!
                  • Time for action – Changing the FBX import scale settings
                  • Time for action – Making the mesh colliders convex
                  • Time for action – Making the hands and tray follow the mouse
                  • Time for action – Get your heart on
                  • Time for action – Ditch the ball and paddle
                  • Time for action – Material witness
                  • This just in: this game blows
                  • Time for action – Multiple erections
                  • Time for action – Creating a font texture
                  • Time for action – Creating the HeartBounce script
                  • Time for action – Tagging the tray
                  • Time for action –Tweak the bounce
                  • Time for action – Keeping track of the bounces
                  • Time for action – Adding the lose condition
                  • Time for action – Adding the Play Again button
                    • Ticker taken
                  • Chapter 9: Game #3: The Break-Up
                    • Time for action – Bombs away!
                    • Time for action – Poke those particles
                    • Time for action – Creating a spark material
                    • Time for action – Prefabulous
                    • Time for action – Lights, camera, apartment
                    • Time for action – Adding the character
                    • Time for action – Registering the animations
                    • Time for action – Scripting the character
                    • Time for action – Opening the pod bay door, Hal
                    • Time for action – Collision-enable the character
                    • Time for action – Re-prefab the prefab
                    • Time for action – Apocalypse now?
                    • Time for action – Go boom
                    • Time for action – The point of impact
                    • Time for action – Hook up the explosion
                    • Summary
                    • Chapter 10: Game #3: The Break-Up Part 2
                      • Time for action – Amass some glass
                      • Time for action – Creating a Particle System
                      • Time for action – Making it edgier!
                      • Time for action – Containing the explosion
                      • Time for action – Let's get lazy
                      • Very variable?
                      • Terminal velocity is a myth—bombs fall faster
                      • Time for action – Tagging the objects
                      • Time for action – Writing the collision detection code
                      • Time for action – Animation interrupts
                      • Time for action – Adding facial explosions
                      • Time for action – Making some noise
                      • Time for action – Adding sounds to the FallingObjectScript
                      • What's the catch?
                      • Time for action – Mixing it up a bit
                      • Summary
                      • Chapter 11: Game #4: Shoot the Moon
                        • Time for action – Duplicating your game project
                        • Time for action – Spacing this sucker up a bit
                        • Time for action – Enter the hero
                        • Time for action – It's a hit!
                        • Time for action – Bring on the bad guys
                        • Time for action – Do some housekeeping
                        • Time for action – Fixing the fall
                        • Time for action – Tweak the hero
                        • Time for action – Give up the func
                        • Time for action – Itchy trigger finger
                        • Time for action – Futurize the bullet
                        • Time for action – Building Halo
                        • Time for action – Fire!
                        • Time for action – Code do-si-do
                        • Time for action – The maaagic of aaaarguments
                        • Time for action – Adding the most important part of any space shooter
                          • Last year's model
                        • Summary
                        • More hospitality
                        • Chapter 12: Action!
                          • Open heart surgery
                          • Time for action – Haul in the hallway
                          • Time for action – Meet me at camera two
                          • Time for action – Adjusting the Main Camera
                          • Time for action – Deck the halls
                          • Time for action – Turn on the lights
                          • Time for action – Setting up the camera rig
                          • Time for action – Animating the bouncer
                          • Time for action – I like to move it, move it
                          • Time for action – Animating the runner
                          • Time for action – How to "handle" Nurse Slipperfoot
                          • Time for action – You spin me right round
                          • Time for action – Deploying your game
                          • Time to grow
                          • Beyond the book
                          • Appendix: References
                            • Online resources
                            • Offline resources
                            • Free development tools
                              • Graphics
                              • Sound
                            • Content sites
                            • Game portals

                            Ryan Henson Creighton

                            Ryan is the founder of Untold Entertainment Inc., a boutique game development studio in the heart of downtown Toronto. Ryan got his start at a Canadian television broadcaster creating small, simple games for kids and preschoolers. By the time he was through, he had built over fifty games for a wide range of clients including McDonalds, Hasbro, Lego, Proctor and Gamble, Nickelodeon, and the Canadian National Institute for the Blind. These games ran the gamut from simple slider puzzles, memory games, and contest entry mechanics to tile-based graphic adventure games and massively multiplayer virtual worlds. Ryan often leveraged his theatre background to perform on-camera in promotional spots for Microsoft and Nintendo. He spent a number of years moonlighting as a video game journalist under the cartoonish moniker "MrSock".

                            Ryan founded Untold Entertainment Inc. in 2007 and has continued to develop great kids' content with broadcasters and independent television producers to help extend their on-air brands online. He packs the company's popular blog with tutorials, designer diaries, and insights into the world of independent game development, employing his signature biting wit and ludicrous photo captions.

                            Through Untold Entertainment, Ryan is developing a number of original properties, which include: Interrupting Cow Trivia, an online multiplayer trivia game; Spellirium, a word puzzle/adventure game hybrid; UGAGS, the Untold Graphic Adventure Game System; and Kahoots, a fun crime-themed puzzle game modeled entirely in clay.

                            Ryan lives and bikes around downtown Toronto with his wife Cheryl, and his two tiny daughters Cassandra and Isabel.

                            Sorry, we don't have any reviews for this title yet.

                            Code Downloads

                            Download the code and support files for this book.


                            Submit Errata

                            Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


                            Errata

                            - 7 submitted: last submission 29 Jan 2014

                            Errata Type:Code related Page Number:139

                             

                            // half of the button width var halfButtonW:float = utton/2;

                            This should be:

                            // half of the button width var halfButtonW:float = button/2;

                            Errata type:Code related Page Number:299

                            col.gameObject.transform.position.y = 50; col.gameObject.transform.position.y = -16; col.gameObject.transform.position.x = Random.Range(0,60);

                            This should be

                             

                            col.gameObject.transform.position.y = 50; col.gameObject.transform.position.z = -16; col.gameObject.transform.position.x = Random.Range(0,60);

                            Errata type:Code related Page Number:326 and 327

                            it says "speed * time.deltatime"

                            This should be

                             

                            "50" instead of "speed"

                            Errata type:Code related Page Number:318

                            Line 7 says "0.02"

                            This should be

                             

                            "2" instead of "0.02"

                            Errata type:Code related Page Number:319

                             

                            Line 9 says "set all rotation to 0 (x,y,z)"

                            This should be

                             

                            x=180, y=0, z=0

                            Errata type:Technical Page Number:302

                             

                            Time for action – Making some noise says "Let's rig up our Bomb and Stein Prefabs so that they can emit sounds"

                            This should be

                             

                            Let's rig up our Bomb, Stein, and character Prefabs so that they can emit sounds

                             

                            Errata type:Technical Page Number:303

                             

                            It says "With the Bomb and Stein Prefabs so enabled, we can add a few lines to the FallingObjectScript to make them play sounds when they hit the ground."

                            This should be

                             

                            With the Bomb, Stein, and character Prefabs so enabled, we can add a few lines to the FallingObjectScript to make them play sounds when they hit the ground

                             

                            Errata: Code related | Page no: 107

                            It is: transform.position.x = Input.mousePosition.x – Screen.width/2)/  (Screen.width/2);

                            It should be: transform.position.x = (Input.mousePosition.x – Screen.width/2)/  (Screen.width/2);

                             

                            Sample chapters

                            You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                            Frequently bought together

                            Unity 3.x Game Development by Example Beginner's Guide +    JBoss AS 5 Development =
                            50% Off
                            the second eBook
                            Price for both: $39.00

                            Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                            What you will learn from this book

                            • Find out how people are using the amazing new Unity game engine
                            • Develop and customize four fun game projects, including a frantic race through hospital hallways with a still-beating human heart and a catch game with a jilted lover that morphs into a space shooter!
                            • Create both 2D and 3D games using free software and supplied artwork
                            • Add motion, gravity, collisions, and animation to your game objects using Unity's built-in systems
                            • Learn how to use code to control your game objects
                            • Create particle systems like shattering glass, sparks, and explosions
                            • Add sound effects to make your games more exciting
                            • Create static and animated backdrops using multiple cameras
                            • Build crucial elements you'll use again and again, like timers, status bars, title screens, win/lose conditions, and buttons to link game screens together
                            • Deploy your games to the Web to share them with friends, family, and adoring fans
                            • Discover the difference between game skins and mechanics, to earn more money from your games

                             

                            In Detail

                            Beginner game developers are wonderfully optimistic, passionate, and ambitious. But that ambition is often dangerous! Too often, budding indie developers and hobbyists bite off more than they can chew. Some of the most popular games in recent memory – Doodle Jump, Paper Toss, and Canabalt, to name a few – have been fun, simple games that have delighted players and delivered big profits to their creators. This is the perfect climate for new game developers to succeed by creating simple games with Unity.

                            This book starts you off on the right foot, emphasizing small, simple game ideas and playable projects that you can actually finish. The complexity of the games increases gradually as we progress through the chapters. The chosen examples help you learn a wide variety of game development techniques. With this understanding of Unity and bite-sized bits of programming, you can make your own mark in the game industry by finishing fun, simple games.

                            Unity 3.x Game Development by Example shows you how to build crucial game elements that you can reuse and re-skin in many different games, using the phenomenal (and free!) Unity 3D game engine. It initiates you into indie game culture by teaching you how to make your own small, simple games using Unity3D and some gentle, easy-to-understand code. It will help you turn a rudimentary keep-up game into a madcap race through hospital hallways to rush a still-beating heart to the transplant ward, program a complete 2D game using Unity's User Interface controls, put a dramatic love story spin on a simple catch game, and turn that around into a classic space shooter with spectacular explosions and "pew" sounds! By the time you're finished, you'll have learned to develop a number of important pieces to create your own games that focus in on that small, singular piece of joy that makes games fun.

                            Approach

                            The book takes a clear, step-by-step approach to building small, simple game projects. It focuses on short, attainable goals so that the reader can finish something, instead of trying to create a complex RPG or open-world game that never sees the light of day. This book encourages readers hungry for knowledge. It does not go into gory detail about how every little knob and dial functions – that's what the software manual is for! Rather, this book is the fastest path from zero to finished game using the Unity game engine.

                            Who this book is for

                            If you've ever wanted to develop games, but have never felt "smart" enough to deal with complex programming, this book is for you. It's also a great kick-start for developers coming from other tools like Flash, Unreal Engine, and Game Maker Pro.

                            Code Download and Errata
                            Packt Anytime, Anywhere
                            Register Books
                            Print Upgrades
                            eBook Downloads
                            Video Support
                            Contact Us
                            Awards Voting Nominations Previous Winners
                            Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                            Resources
                            Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software