Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

Home > >

8. September 2015


Over the past couple months I have been working on a series of posts covering MonoGame with the intention of compiling them into an e-book when finished.  There have been a few preview builds of the book available to Patreon supporters (thanks by the way!).  Now however I consider the series to be complete so I am making the book available to all.  I will eventually be creating a more complete and formal homepage for the title but this one should work in the meantime.


Truth of the matter is, I had intended to cover a great deal more on the subject, but the level of traffic simply doesn’t justify the further expenditure of time.  That said, I leave the book at a state I think it should prove useful for anyone getting started in XNA or MonoGame game development, it is as comprehensive as any beginner XNA book currently available.  The book is composed of seven chapters:


Chapter One

An Introduction and Brief History

Book Cover

Chapter Two

Getting Started with MonoGame on Windows

Chapter Three

Getting Started with MonoGame on MacOS

Chapter Four

Creating an Application

Chapter Five

2D Graphics

Chapter Six

Audio Programming

Chapter Seven

3D Graphics 




Of course, the tutorials based here on GameFromScratch are still going to be available in addition to this PDF.  There is also a complete video tutorial series to go along with each chapter in the book available here.


With today’s release of the book, I also have published a github repository containing all of the source code used in the book.  This is a single Visual Studio solution containing each example as a separate project.  For some reason I don’t quite understand, all of the chapters are mismatched by one.  So for example the code in Chapter 8 on Github actually corresponds with Chapter 7 in the book.  Oops.


Alright, enough blathering, here is the book in PDF format.  I can make it available in other e-reader formats if requested.

EDIT: Here is an untested epub version of the book.

EDIT2: Now it has been posted on Smashwords as well, which should ultimately make it available from a number of sources.


If you enjoyed this free e-book and would like to see more similar free books, or would like access to books in development, please consider supporting GameFromScratch on Patreon.





, ,

blog comments powered by Disqus

Month List

Popular Comments

Apple announce iOS 8 SDK. Includes Metal, an OpenGL replacement and the Swift programming language
Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

Home > >

2. June 2014

EDIT:  For a better understand of Apple’s Metal API and what it means for OpenGL, click here. 

So finally we are getting some developer related announcements out of the Apple Developer Conference.  For game developers, todays announcement is a dozy.  iOS 8 SDK includes 4,000 new API calls but most importantly includes Metal, a new lower level graphics API similar to AMD’s Mantle.  The idea is to get closer to the metal ( thus the name ) and remove the overhead of OpenGL:


Gaming on iOS takes a huge leap forward in iOS 8 with Metal, a new graphics technology that maximizes performance on the A7 chip. With its dramatic 10 times improvement in draw call speed, Metal enables leading game providers for the first time to bring console-class 3D games to mobile devices. For casual games, iOS 8 now features SceneKit, making it easy to create fun 3D games, along with major enhancements to SpriteKit, including field forces, per-pixel physics and inverse kinematics.


10 times performance improvement over OpenGL?  That sounds like marketing BS to me or describes an edge case.  If OpenGL was that bloated it would have died off year ago.  The important take away is it’s A7 only, so newest iPad and iPhones are the only ones that support it.  Unity, Crytek and Unreal are all expected to support it so it should be pretty transparent to most developers.


The other major announcement was Swift:


Swift is a powerful new programming language for iOS and OS X® that makes it easier than ever for developers to create incredible apps. Designed for Cocoa® and Cocoa Touch®, Swift combines the performance and efficiency of compiled languages with the simplicity and interactivity of popular scripting languages. By design, Swift helps developers write safer and more reliable code by eliminating entire categories of common programming errors, and coexists with Objective-C® code, so developers can easily integrate Swift into their existing apps. Xcode® Playgrounds make writing Swift code incredibly interactive by instantly displaying the output of Swift code.


The iOS beta software is available now for registered Apple developers.  XCode 6 is required to support the Swift programming language.  You can learn more about Swift here.  I LOVE new programming languages, so I will certainly be taking a closer look.  Some Apple toted features of swift are:


Swift has many other features to make your code more expressive:

  • Closures unified with function pointers
  • Tuples and multiple return values
  • Generics
  • Fast and concise iteration over a range or collection
  • Structs that support methods, extensions, protocols.


… interesting.  I hate ObjC, so an alternative is certainly appreciated. 

, ,

blog comments powered by Disqus

Month List

Popular Comments