This textbook was authored for the CIS 580 - Fundamentals of Game Programming course at Kansas State University. This front matter is specific to that course. If you are not enrolled in the course, please disregard this section.
MonoGame and Visual Studio
For this course, we will be using a number of software packages including:
- Microsoft Visual Studio 2022
- The MonoGame Framework
These have been installed in the classroom lab, as well as all Computer Science labs. It is strongly suggested that you install the same versions on your own development machines if you plan on working from home. Alternatively, you can remote desktop into a lab computer and use the installed software there.
Remote Desktop Access
To use a remote desktop, you must first install a remote desktop client on your computer. Microsoft supplies a client for most platforms, which you can find links to and information about here.
The remote desktop server is behind a network firewall, so when accessing it from off-campus, you must be using the K-State Virtual Private Network (VPN). It has its own client that also must be installed. You can learn about K-State’s VPN and download the client on K-State’s VPN Page
For remote desktop servers, you can use those maintained by The Department of Computer Science.
Installing on Your Machine
If you would prefer to install the software on your own development machine, you can obtain no-cost copies of Microsoft Visual Studio Professional Edition through Microsoft’s Azure Portal and signing in with your K-State eid and password.
After signing in, click the “Software” option in the left menu, and browse the available software for what you need.
The Visual Studio Community Edition is also available as a free download here. While not as full-featured as the Professional edition you can download through Azure Portal, it will be sufficient for the needs of this class.
MonoGame can then be installed as a plugin to Visual Studio 2022, following the Setting up your development environment for Windows. While it is possible to develop on Linux or macOS, all course materials will be presented for Windows, and it is recommended you use that development environment.
While not strictly required for the course, these additional software packages may come in very handy:
- BFXR A free online sound effect generator perfect for creating 8-bit sound effects.
- Piskel A free online pixel art program specifically for drawing animated sprites.
- Graphics Gale A downloadable freeware animation editor.
- Inkscape an open-source vector graphics editor you can install (and is installed in the labs).
- Tiled Map Editor an open-source tool for creating tile maps you can install (and is installed in the labs).
A broader list of useful tools can be found here