My Account Log in

1 option

Game development with MonoGame : build a 2D game using your own reusable and performant game engine / Louis Salin, Rami Morrar.

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Salin, Louis, author.
Morrar, Rami, author.
Language:
English
Subjects (All):
Video games--Design.
Video games.
Video games--Programming.
Physical Description:
1 online resource (208 pages)
Place of Publication:
Berkeley, CA : Apress, [2022]
Summary:
Create a polished game that includes many levels and fights using MonoGame. This book will show you how to add AI agents and 2D physics into your game, while improving the performance of the game engine. By the end of Game Development with MonoGame, you will have created a game worthy of being published. Over the course of this book, you will be exposed to advanced game development concepts such as scripting and AI as you improve the performance of the game engine with better memory management. You will learn how to create a level editor that you will use to build game levels. You will also pick up tips and tricks for adding polish to your game project by adding a camera system, layers, menus, and improving the game's graphics using pixel shaders and better particle effects. Upon completing this book, you will have a clear understanding of the steps required to build a game from start to finish and what it takes to create a 2D game that could ultimately be published. What You Will Learn Write a performant 2D game engine Script the behavior of game objects Build and use a level editor for your game Add a UI to your game Who Is This Book For Intermediate to advanced C# developers with knowledge of MonoGame. Basic knowledge of how to install and use the 2D capabilities of MonoGame is required, along with knowledge on how to use the content pipeline tool.
Contents:
Intro
Table of Contents
About the Authors
About the Technical Reviewer
Acknowledgments
Introduction
Chapter 1: Game Performance
Measuring Game Performance
Inspecting the Game Performance
The GameTime Class
Controlling the Game's FPS Settings
Using Object Pools
Conclusion
Chapter 2: The Content Pipeline Tool
The Content Pipeline Tool
The Content Importer
The Content Processor
The Content Writer
The Content Reader
Extending the Content Pipeline Tool
Creating a Pipeline Extension
Adding Logic to Your Extension
Loading and Saving Assets
Adding Animations to the Content Pipeline
Creating the XML Template
Creating the TurnLeft Animation Asset
Internationalizing Game Text
Chapter 3: Cameras and Layers
Cameras
How Cameras Work
Adding a Camera to Your Game
Making the Camera Travel Up with the Player
Chapter 4: Level Editor
MonoGame.Forms
How the Editor Works
Creating the GameEditor Project
Installing MonoGame.Forms
Creating the MonoGame Control
Asset Management
Using a Better Set of Tiles and Game Objects
The MonoGameControl Class
Building Your Editor
Setting the Stage
Adding a Camera
Using an Atlas for Your Ground Tiles
Adding, Moving, and Removing Objects from Levels
Drawing Items on the Screen
Adding Game Events
Chapter 5: Scripting
What Is Scripting?
Sprite Animation and Sound
What Is a Shader?
Pausing the Game
Circle Struct
Displaying Health
Setting Up For Debugging
Chapter 6: Enemy AI and Algorithms
Essential Mathematics for Game Movement Logic
Sine
Circular Motions Using Sine and Cosine
Using The Distance Formula To Enable Behavior
Other Non-Linear Motion
Interactions with the Player
Bosses and Patterns.
Conclusion
Chapter 7: Game State and Gamepad Input
Gamepad Detection
Game States
Chapter 8: Packaging The Game with Bells and Whistles
Loading in Music and Sound Effects
Making a Particle Emitter
Lists and What They Do
Actual Physics and the Amount of Particles Swaying
Packaging The Game
Chapter 9: Tying It All Together
Websites For Collaboration and Assets
Itch.io
GamedevMarket.net
OpenGameArt
MonoGame.Net
In Conclusion
Index.
Notes:
Description based on print version record.
Includes index.
ISBN:
9781484277713
1484277716
OCLC:
1283844881

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Library Catalog Using Articles+ Library Account