Автор: Alan Thorn Название: Pro Unity Game Development with C# Издательство: Apress Год: 2014 ISBN: 978-1430267461 Язык: English Формат: pdf Размер: 11,4 mb Страниц: 348
C# is the most popular programming language for experienced Unity developers, helping them get the most out of what Unity offers. If you're already using C# with Unity and you want to take the next step in becoming an experienced, professional-level game developer, this is the book you need.
Whether you are a student, an indie developer, or a season game dev professional, you'll find helpful C# examples of how to build intelligent enemies, create event systems and GUIs, develop save-game states, and lots more.
You'll understand and apply powerful programming concepts such as singleton classes, component based design, resolution independence, delegates, and event driven programming.
By the end of the book, you will have a complete first person shooter game up and running with Unity. Plus you'll be equipped with the know-how and techniques needed to deploy your own professional-grade C# games.
If you already know a bit of C# and you want to improve your Unity skills, this is just the right book for you.
About the Author About the Technical Reviewer Acknowledgments Introduction
Chapter 1: Designing and Preparing
Designing Game Overview Game in Depth Developing the Design: Looking Ahead Game Development Workflows Tip #1: Interface Layout Tip #2: Dual-Monitors Tip #3: Be Organized Tip #4: Show Project Wizard on Start-up Tip #5: Use FBX Meshes Tip #6: Disable Ambient Lighting Tip #7: Use Root GameObjects Tip #8: Incremental Backups Tip #9: Batch Renaming Tip #10: Showing Empty Objects in the Editor Tip #11: Use the Stats Panel Tip #12: Testing Resolution and Aspect Ratio Conclusion
Chapter 2: Getting Started
Step 1: Create Folders Step 2: Importing Textures and Meshes Step 3: FBX Meshes and Scale Factor Step 4: Configuring Meshes Step 5: Planning and Configuring Textures Step 6: Building Sprites Step 7: Importing Audio Step 8: Create Prefabs Step 9: Scene Building Step 10: Lighting and Lightmapping Step 11: Building a Navigation Mesh Conclusion
Chapter 3: Event Handling
Events and Responses Event Handling Planning Event Handling Planning a Dedicated Event-Handling System Getting Started with NotificationsManager Keeping Track of Notifications with .NET Dictionaries Generic Classes and C Registering As a Listener Posting Notifications SendMessage and BroadcastMessage Removing Listeners Removing Redundancies Completing NotificationsManager Wording with the NotificationsManager Conclusion
Chapter 4: Power-Ups and Singletons
Creating the Cash Power-Up Power-Ups and Billboards Billboards and Cached Transforms Billboards and Rotation Billboards and Bobbing Coroutines Power-Up Motion with Coroutines and deltaTime Exploring dettaTime Completing Power-Up Bobbing Power-Up Collision Handling Collision Events: Getting Started Collisions and Responses Introducing the GameManager GameManager and Singletons GameManager and Event Handling Completing the Cash Power-Up Making a Prefab from the Completed Power-Up Creating Other Prefabs Conclusion
Chapter 5: Player Controller
Character Controllers and the First Person Controller Multiplatform Development Beginning the Universal First Person Controller Platform Dependent Compilation Head Bobbing and Sine Waves First-Person Capsule Mesh Handling Cash Collection Life and Death: Getting Started Making Death: Scripting with Mecanim Implementing Health Health and Damage: Procedural Textures GUIs Conclusion
Chapter 6: Weapons
Weapons Overview Object Orientation: Classes and Instances Object Orientation: Inheritance Animations, Frames, and Prefabs Cameras: Layers and Rendering Cameras: Orthographic Size Weapon Implementation: Punching Physics and Damage Dealing Weapon Changing and Polymorphism Completing the Punch and Gun Weapons Conclusion
Chapter 7: Enemies
Meet the Bad Guys Starting the Enemy Drone Prefab Coding Enemy Damage Improving Damage Dealing: Feedback Enemies, Intelligence, and Philosophical Zombies Finite State Machines (FSMs) Changing Between States Preparing for State Implementation The Patrol State Refining the Patrol State The Chase and Attack States Adding More Enemy Types Summary
Chapter 8: Graphical User Interfaces
GUIs in Games Getting Started with GUIs Resolution Dependence and Independence Main Menu and Aspect Ratio Testing the Main Menu Adding Buttons to the Main Menu Handling Button Presses HUD: Ammo and Health Statuses Summary
Chapter 9: Handling Persistent Data
Persistent data: PlayerPrefs, Binary Data, and More Player Preferences Class File-Based Persistence Saving with XML Getting Started with XML: Serialization Loading from and Saving to an XML File Completing the GameManager Class Completing the PlayerController Class Completing the Enemy Class Testing Save and Load Functionality Summary
Chapter 10: Refinements and Improvements
Level Changing Event Handling Interfaces Delegates Write Shorter Code Ternary Operator Null-Coalesce Operator Automatic Properties C# Features or Quirlts? Private Does Not Mean Inaccessible goto is C# Teleportation Static is Omnipresent Braces Define Scope Summary