Designed for beginners with no knowledge or experience in game development or programming, this book teaches the essentials of the Unity game engine,the C# programming language, and the art of object-oriented programming. New concepts are not only explained, but thoroughly demonstrated.
Starting with an introduction to Unity, you'll learn about scenes, GameObjects, prefabs, components, and how to use the various windows to interact with the engine. You'll then dive into the fundamentals of programming by reviewing syntax rules, formatting, methods, variables, objects and types, classes, and inheritance, all while getting your hands dirty writing and testing code yourself. Later, the book explains how to expose script data in the Inspector and the basics of Unity’s serialization system.
This carefully crafted work guides you through the planning and development of bare bones, simple game projects designed to exercise programming concepts while keeping less relevant interruptions out of the way, allowing you to focus on the implementation of game mechanics first and foremost. Through these example projects, the book teaches input handling, rigidbodies, colliders, cameras, prefab instantiation, scene loading, user interface design and coding, and more.
By the end, you'll have built a solid foundation in programming that will pave your way forward in understanding core C# syntax and fundamentals of object-oriented programming—not just what to type but why it's typed and what it’s really doing. Game Programming with Unity and C# will send you on your way to becoming comfortable with the Unity game engine and its documentation and how to independently seek further information on yet-untouched concepts and challenges.
- Understand the fundamentals of object-oriented computer programming, including topics specifically relevant for games.
- Leverage beginner-to-intermediate-level skills of the C# programming language and its syntax.
- Review all major component types of the Unity game engine: colliders and rigidbodies, lights, cameras, scripts, etc.
- Use essential knowledge of the Unity game engine and its features to balance gameplay mechanics for making interesting experiences.