Getting started with Unity 5.x 2D game development build a tower defense game and earn delectable C# treats by baking cupcakes and fighting fearsome sweet-toothed pandas
Build a tower defense game and earn delectable C# treats by baking cupcakes and fighting fearsome sweet-toothed pandas About This Book Build a complete and exciting 2D Tower Defense game from scratch. Understand and learn to perform each phase of the game development pipeline Homework and exercises...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham, [England] :
Packt
2017.
|
Edición: | 1st edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009630143006719 |
Tabla de Contenidos:
- Cover
- Copyright
- Credits
- About the Author
- Acknowledgment
- About the Reviewer
- www.PacktPub.com
- Customer Feedback
- Table of Contents
- Preface
- Chapter 1: A Flat World in Unity
- Learning game development
- Tower defense games
- Designing our game
- Getting ready
- Remembering the past to build the future
- Organizing the project
- A 2D world
- Sprites
- Sprite Renderer
- Importing new friends
- The Sprite Editor
- Manual mode
- Automatic mode
- Polygonal mode
- Sprite Editor for UI-9-slice scaling
- Preparing the assets
- Scenes as levels
- Setting proportions
- There is more about the Unity interface
- Homework
- Summary
- Chapter 2: Baking Cupcake Towers
- 2D objects
- Parenting game objects
- Difference between world coordinates and local coordinates
- Ordering the different layers with Z-Buffering
- Unfolding the map
- Layers and tags
- Prefabs
- The game view
- Math background
- Scripting in Unity
- Creating new scripts
- Basics about scripts
- Variables
- Attributes
- Functions
- Comments
- Execution order
- Making sprinkles
- The projectile class
- Scripting the projectile mother class
- Tons of sprinkles through Prefabs
- Baking cupcakes towers
- What a cupcake tower does
- Scripting the cupcake tower
- Shooting to the pandas
- Upgrading the cupcake tower, making it even tastier
- A pre-baked cupcake tower through Prefabs
- More about coding in Unity
- Static variables
- Inheritance
- Random numbers in Unity
- Homework
- Summary
- Chapter 3: Communicating with the Player - the User Interface
- Getting ready
- Designing the user interface
- Programming the user interface
- User interface system
- Canvas
- Screen space - Overlay
- Screen space - Camera
- World space
- Draw order of UI elements
- Visual components
- The Image component.
- The Text component
- Basic transformations
- The Rect Tool
- The Rect Transform
- Layout components
- Fitters
- Layout groups
- The layout element component
- Interaction components
- The selectable base class
- Interactable option
- Transition options
- Navigation options
- Button
- Toggle and Toggle Group
- Slider
- Scrollbar
- Dropdown
- Input Field
- Scroll Rect
- More about UI rendering
- The canvas renderer
- More visual components
- UI effect components
- UI and lights
- The canvas components
- Canvas group
- Event system
- Scripting user interfaces
- Designing the interface for our game
- Preparing the scene for the UI
- Creating a health bar
- Creating and placing the health bar
- Scripting the health bar
- Implementing the sugar meter
- Creating and place
- Scripting the sugar meter
- More about UI scripting - handlers
- What about all the rest?
- Homework
- Summary
- Chapter 4: No Longer Alone - Sweet-Toothed Pandas Strike
- Getting ready
- Animations
- A historical overview
- Animations in video games
- Workflow for animations
- Animations clips and the Animator component
- Creating Animation clips with a controller
- The Animator component
- Creating the other animation clips
- The Animator
- The Animator window
- The Animator state machine
- The Animator states
- Special states
- The animator parameters
- The animator transitions
- Transition settings
- Transition graph
- Transition conditions
- Testing transitions
- The panda's Animation State Machine
- Testing the panda's Animation State Machine
- Scripting Animations
- State machine behaviours
- The destroy behaviour
- The panda script
- More about Animations
- Avatars
- Sub-state machines
- The hierarchical location menu
- Layers in the Animator
- Blending trees
- Animator Override Controller.
- Culling Mode in the Animator component
- Root motion
- Inverse Kinematic
- Animator component information box
- Legacy animation
- Get animated!!
- Homework
- Summary
- Chapter 5: The Secret Ingredient Is a Dash of Physics
- Getting ready
- Physics in video games
- Physics - basics
- World coordinates and local coordinates
- Velocity
- Mass
- Centre of mass
- Kinematics
- Dynamics
- Force and torque
- Collisions
- Rigid body
- Friction - linear and angular drag
- The Unity Physics engine
- Understanding Physics in Unity
- Physics settings in Unity
- Physics components
- Rigidbodies
- How a Rigidbody 2D works
- Body types
- Rigidbody properties
- Dealing with rigidbodies
- Colliders
- Dealing with colliders
- Joints
- Main properties of Joints
- The other rigidbody
- Breaking joints
- Specific joints
- Distance Joint 2D
- Fixed Joint 2D
- Friction Joint 2D
- Hinge Joint 2D
- Relative Joint 2D
- Slider Joint 2D
- Spring Joint 2D
- Target Joint 2D
- Wheel Joint 2D
- Effectors
- Constant Force 2D
- Area Effector 2D
- Buoyancy Effector 2D
- Point Effector 2D
- Platform Effector 2D
- Surface Effector 2D
- Physics Material 2D
- Dealing with physics in Unity
- Other things about Physics
- The Simulate setting on rigidbodies
- Physics Raycaster 2D component
- The other Physics settings
- Gizmos for colliders
- Physics for our game
- Set up Pandas as a rigidbodies
- Set up projectiles as rigidbodies
- Detect sprinkles
- Homework
- Summary
- Chapter 6: Through a Sea of Sprinkles - Navigation in Artificial Intelligence
- Getting ready
- Introduction to artificial intelligence
- The importance of artificial intelligence in video games
- Navigation
- Aspects of navigation
- Pathfinding and its techniques
- Waypoints for enemies
- Getting the waypoint coordinates.
- Implementing waypoints - the first/static way
- Implementing waypoints in the Game Manager
- Moving along the designed path - static
- Implementing waypoints - the second/dynamic way
- Implementing waypoints as separate entities
- Moving along the designed path - dynamic
- More about artificial intelligence in games
- Other techniques for navigation at the pathfinding level
- Navigation at the level of steering behaviours
- Navigation at the level of pathfinding/decision making - belief-driven pathfinding
- Beyond navigation
- Homework
- Summary
- Chapter 7: Trading Cupcakes and the Ultimate Battle for the Cake - Gameplay Programming
- Getting ready
- What does gameplay programming mean?
- Planning what is left to implement for our game
- Trading cupcake towers
- The trading parent class
- Modifying the CupcakeTowerScript
- Buying cupcake towers
- Selling cupcake towers
- Upgrading cupcakes towers
- Adding the trading options to the user interface
- Placing the towers
- Sketching the idea of how it works
- Allowed areas
- Scripting the placement script
- Selecting the towers
- The Game Manager
- Game over conditions
- Game over feedback
- The GameOver function
- Keeping track of the game's progress
- Panda invasion - spawning Pandas
- What is a coroutine?
- Sketching the idea of how it works
- Setting up the spawning system
- Managing waves
- The single wave
- The main menu
- Designing the main menu
- Creating the main menu in another scene
- Loading scenes through scripts
- Techniques we learnt in this chapter
- Homework
- Summary
- Chapter 8: What Is beyond the Cake?
- Enhancing and improving your game
- Improving cupcake towers
- Shooting policies
- Special sprinkles
- Aging and pricing model
- Improving the user interface
- Improving levels
- Multilevel
- Large maps
- Many paths.
- Many Pandas
- Multiphase bosses
- A better spawning system
- Switching difficulty at runtime
- Training and extending your Unity skills to become a better game developer
- Making things easier for other team members
- Exposing events
- Sprinkles pooling
- Saving your data
- Debugging
- Remote Logs
- Cleaning the release version
- More about communication between scripts
- Documenting the code
- Protecting your game
- Building for more than one platform
- Input/output devices
- Virtual reality in Unity
- Balancing the game
- Extending the Unity editor
- Multiplayer and networking
- Practice makes perfect
- Improving the atmosphere of the game
- Visuals
- Color schemes
- Homework
- Lighting
- Lights in Unity
- Homework
- Environment
- Homework
- Special effects
- Particle systems
- Post processing
- Other visual effects
- Audio
- Music
- Sound effects
- Eliciting emotions
- Homework
- Audio in Unity
- External audio systems
- Teamwork
- It is not just about you, it is about working in a team
- Sharing a common vision
- Managing expectations
- Collaboration and communication are key
- Ways to communicate
- Version control
- Make a GDD and stick to it
- Keeping it tidy with project management tools
- Slack
- HacknPlan
- Drive
- Dropbox
- Trello
- Redbooth
- GitHub
- BitBucket
- Calendar
- Hootsuite
- Polishing your game
- Processing the power
- Checking the build size
- Texture optimitation
- Stats and profiling
- Other optimization tips
- Playtesting
- Why are you even playtesting?
- Exercise
- Whom do you need to playtest?
- The solo test run
- Making it a social occasion
- Putting it within boundaries
- Reaching out to family and friends
- Those who are strangers
- Those who you want to play your game
- When
- Where
- What
- A little goes a long way
- How.
- Methods of playtesting.