Difference between revisions of "MonoGame Tutorials"

From TRCCompSci - AQA Computer Science
Jump to: navigation, search
(Basic Skills)
(Basic Skills)
 
(69 intermediate revisions by the same user not shown)
Line 1: Line 1:
=TRC Tutorials=
+
MonoGame is a game creation framework which uses C#, so for help on C# you can use the topics on  '''[[Section A AL#Fundamentals of programming |THIS]]''' page.
==Skills==
+
===Basic Skills===
+
=Basic Skills=
You should start by creating a new project, remember to give it a suitable name and test it runs before you start.
+
[[Creating A Project]]
[[Create A Project]]
 
 
 
[[Drawing Shapes]]
 
  
 
[[Using SpriteFont]]
 
[[Using SpriteFont]]
Line 11: Line 8:
 
[[Drawing Textures]]
 
[[Drawing Textures]]
  
[[Video Playback]]
+
[[Drawing Shapes]]
 +
 
 +
[[Keyboard Input]]
  
[[Creating A Player]]
+
[[Mouse or touch control Input]]
  
[[Creating An Instance of Your Player]]
+
[[Audio Playback]]
  
[[Adding and Processing Player Input]]
+
[[Video Playback]]
  
[[Mouse or touch control Input]]
+
[[Screen Settings]]
  
 
[[Animation]]
 
[[Animation]]
Line 25: Line 24:
 
[[Game states]]
 
[[Game states]]
  
===Collision Detection===
+
[[Using Timers]]
[[Rectangle Bounds Collision]]
 
  
[[Basic Per Pixel Collision]]
+
=Player Class Example=
 +
[[Creating A Player]]
  
[[Per Pixel Collision |Advanced Per Pixel Collision]]
+
[[Creating An Instance of Your Player]]
  
===Game UI===
+
[[Adding and Processing Player Input]]
[[GeonBit example]]
 
  
[[GeonBit Class Example]]
+
=Collision Detection=
 +
[[Rectangle Bounds Collision]]
  
[[My Full Example of GeonBit & Classes]]
+
[[Basic Per Pixel Collision]]
  
[[Ruminate Example]]
+
=Using Tiled Maps=
 
+
===Squared.Tiled===
===Save Game / Check Points===
 
[[Creating a game save]]
 
 
 
===Drawing Tiled Maps: Squared.Tiled===
 
 
[[setup and map example]]
 
[[setup and map example]]
  
[[drawing a layer]]
+
===TiledSharp===
 
 
[[Get tile texture from map]]
 
 
 
===Drawing Tiled Maps: TiledSharp===
 
 
[[using a tmx map in monogame]]
 
[[using a tmx map in monogame]]
  
===Related Skills===
+
===TiledCS===
[[Generating and using XNB files]]
+
[[Using TiledCS]]
  
==Full Tutorials==
+
===TiledNet===
[[Bricks]]
+
[[Using TiledNet]]
  
[[Dino]]
+
===TiledLib===
 +
[[Using TiledLib]]
  
[[Monkey Tap]]
+
=Player Bounds=
 +
[[Player Bounds]]
  
[[Simple Tower]]
+
=Game UI=
 +
===GeonBit===
 +
[[GeonBit example]]
  
[[Simple RPG]]
+
===Ruminate===
  
[[Simple Platform]]
+
[[Ruminate Example]]
  
[[Simple Racer]]
+
===Myra===
 +
[[Myra Example]]
  
[[Simple Beat Em Up]]
+
===Steropes===
  
[[Simple Fighter]]
+
[[Steropes Example]]
  
==External Tutorials==
+
===SimpleText UI Example===
===Beginner===
 
[https://www.youtube.com/playlist?list=PLcQUM4MNvSeTXMdx9peqnNi7RVzQ3jpRC Youtube MonoGame PlayList]
 
  
[https://www.pluralsight.com/courses/monogame MonoGame on Pluralsight (Sign up for a free trial)]
+
[[SimpleText UI Example]]
  
[https://www.phstudios.com/monogame-basics-series/ monogame-basics-series]
+
=Special Effects=
 +
[[Screen Brightness]]
  
[https://www.youtube.com/playlist?list=PLV27bZtgVIJqoeHrQq6Mt_S1-Fvq_zzGZ Youtube Tutorial Series]
+
[[Screen Shake]]
  
[https://www.youtube.com/playlist?list=PL667AC2BF84D85779 XNA YouTube tutorials from same source as above]
+
[[Parallax Scrolling]]
  
===Moderate===
+
[[Explosions]]
[http://gameprogrammingadventures.org/a-summoners-tale-series/ Adventure game tutorial series]
 
  
[https://www.cs.cornell.edu/courses/cs3152/2014sp/materials/programming.php Degree level MonoGame]
+
[[Field of View / No Mask]]
  
[https://www.phstudios.com/monogame-advanced-series/ monogame-advanced-series]
+
[[Field of View / Mask]]
  
===Tower Defence===
+
=Networked / Multiplayer=
[http://xnatd.blogspot.com/2009/02/ok-so-first-part-of-our-tower-defence.html Tutorial 1 : Drawing the level.]
+
===LiteNetLib===
  
[http://xnatd.blogspot.com/2009/03/tutorial-2-levels.html Tutorial 2 : Create a Sprite base class.]
+
[[Setup LiteNetLib]]
  
[http://xnatd.blogspot.com/2010/09/tutorial-3-enemy-class.html Tutorial 3 : Creating the Enemy class.]
+
[[Example LiteNetLib]]
  
[http://xnatd.blogspot.com/2010/09/tutorial-4-waypoints.html Tutorial 4 : Adding way-points and enemy movement.]
+
[[RPG LiteNetLib]]
  
[http://xnatd.blogspot.com/2010/09/tutorial-5-towers.html Tutorial 5 : Making a base Tower class.]
+
===Lidgren.Network===
  
[http://xnatd.blogspot.com/2010/09/tutorial-6-tower-management.html Tutorial 6 : Tower placement and management.]
+
[[Lidgren.Network]]
  
[http://xnatd.blogspot.com/2010/10/tutorial-7-firepower.html Tutorial 7 : Extending the tower class and adding projectiles.]
+
=Save Game / Check Points=
 +
[[Creating a game save]]
  
[http://xnatd.blogspot.com/2010/10/tutorial-8-waves-featuring-tower.html Tutorial 8 : Adding a wave of enemies.]
+
=Related Skills=
 +
[[Generating and using XNB files]]
  
[http://xnatd.blogspot.com/2010/10/tutorial-9-multiple-waves.html Tutorial 9 : Adding multiple waves]
+
=Full Tutorials=
 +
[[Bricks]]
  
[http://xnatd.blogspot.com/2010/12/tutorial-10-creating-basic-gui.html Tutorial 10 : Creating the GUI (Part 1)]
+
[[Dino]]
  
[http://xnatd.blogspot.com/2010/12/tutorial-11-creating-gui-part-2.html Tutorial 11 : Creating the GUI (Part 2)]
+
[[Monkey Tap]]
  
[http://xnatd.blogspot.com/2011/01/tutorial-12-adding-new-tower-type.html Tutorial 12 : Adding a New Tower Type]
+
[[Simple Tower]]
  
[http://xnatd.blogspot.com/2011/01/tutorial-13-adding-slow-tower.html Tutorial 13 : Adding the Slow Tower]
+
[[Simple RPG]]
  
[http://xnatd.blogspot.com/2011/01/tutorial-14-polishing-game.html Tutorial 14 : Polishing the Game]
+
[[Simple Platform]]
  
[http://xnatd.blogspot.com/2011/02/tutorial-145-drag-and-drop-towers.html Tutorial 14.5 : Drag and Drop Towers]
+
[[Simple Racer]]
  
====Pathfinding Tutorials : ====
+
[[Simple Beat Em Up]]
 
 
[http://xnatd.blogspot.com/2011/06/pathfinding-tutorial-part-1.html A* Pathfinding Tutorial : Part 1]
 
 
 
[http://xnatd.blogspot.com/2011/08/pathfinding-tutorial-part-2.html A* Pathfinding Tutorial : Part 2]
 
 
 
[http://xnatd.blogspot.com/2011/12/pathfinding-tutorial-part-3.html A* Pathfinding Tutorial : Part 3]
 
 
 
===Platformer===
 
[http://xnafan.net/2013/04/simple-platformer-game-in-xna-tutorial-part-one/ simple platformer game in xna tutorial]
 
 
 
[https://www.youtube.com/playlist?list=PLE500D63CA505443B XNA Platformer Made Easy (YouTube)]
 
 
 
===RPG===
 
[https://www.youtube.com/playlist?list=PLHJE4y54mpC5hrlDv8yFHPfrSNhqFoA0h MonoGame RPG Made Easy (YouTube)]
 
 
 
====Tutorial Series====
 
[https://roguesharp.wordpress.com/2014/05/18/tutorial-1-roguelike-map-generation-using-roguesharp-and-monogame/ Tutorial 1 – Map Generation]
 
 
 
[https://roguesharp.wordpress.com/2014/05/24/tutorial-2-roguelike-field-of-view-calculation-using-roguesharp-and-monogame/ Tutorial 2 – Field-of-View Calculation]
 
 
 
[https://roguesharp.wordpress.com/2014/05/30/tutorial-3-roguelike-map-exploration-using-roguesharp-and-monogame/ Tutorial 3 – Exploring the Map]
 
 
 
[https://roguesharp.wordpress.com/2014/06/09/tutorial-4-roguelike-pathfinding-using-roguesharp-and-monogame/ Tutorial 4 – Pathfinding]
 
 
 
[https://roguesharp.wordpress.com/2014/07/13/tutorial-5-creating-a-2d-camera-with-pan-and-zoom-in-monogame/ Tutorial 5 – 2D Camera Setup]
 
 
 
[https://roguesharp.wordpress.com/2014/08/30/tutorial-6-roguelike-combat-using-roguesharp-and-monogame/ Tutorial 6 – Combat]
 
 
 
==Tiled==
 
===Tiled Website and Download===
 
 
 
[http://www.mapeditor.org/ Tiled Map Editor]
 
 
 
===Tutorials for using Tiled===
 
 
 
[http://doc.mapeditor.org/ Offical Tiled Tutorials]
 
 
 
[https://gamedevelopment.tutsplus.com/tutorials/introduction-to-tiled-map-editor-a-platform-agnostic-tool-for-level-maps--gamedev-2838 Tiled Basics]
 
 
 
[https://www.youtube.com/playlist?list=PLpWTFopWU5f3xgvztkivtEcYmocD-Xigt Tiled Youtube Playlist Series]
 
 
 
[http://www.gamefromscratch.com/post/2014/04/15/A-quick-look-at-Tiled-An-open-source-2D-level-editor.aspx Written Version of Above Tutorials]
 
 
 
=Game Resources=
 
==Game Art==
 
===Home Page===
 
[http://opengameart.org/ Open Game Art]
 
 
 
==MonoGame.Extended==
 
===Install Method 1===
 
MonoGame.Extended GitHub, you must have MonoGame installed first, get it from here:
 
 
 
[https://github.com/craftworkgames/MonoGame.Extended Add functions to MonoGame - including Tiled maps]
 
 
 
===Install Method 2===
 
Alternatively, open your game project and click the project tab and select "Manage NuGet Packages". Within the NuGet package manager search for MonoGame.Extended, you will need to install this plus also:
 
 
 
#MonoGame.Extended.Content.Pipeline
 
#MonoGame.Extended.Tiled
 
#MonoGame.Extended.Graphics
 
 
 
These may also require some setup, read the '''readme.txt''' files when the new packages are installed.
 
 
 
===MonoGame.Extended Resources===
 
 
 
[http://community.monogame.net/c/extended MonoGame.Extended Forum]
 
  
[http://craftworkgames.github.io/MonoGame.Extended/ MonoGame.Extended Wiki]
+
=External Resources=
 +
[[External Resources]]

Latest revision as of 11:44, 26 May 2024

MonoGame is a game creation framework which uses C#, so for help on C# you can use the topics on THIS page.

Basic Skills

Creating A Project

Using SpriteFont

Drawing Textures

Drawing Shapes

Keyboard Input

Mouse or touch control Input

Audio Playback

Video Playback

Screen Settings

Animation

Game states

Using Timers

Player Class Example

Creating A Player

Creating An Instance of Your Player

Adding and Processing Player Input

Collision Detection

Rectangle Bounds Collision

Basic Per Pixel Collision

Using Tiled Maps

Squared.Tiled

setup and map example

TiledSharp

using a tmx map in monogame

TiledCS

Using TiledCS

TiledNet

Using TiledNet

TiledLib

Using TiledLib

Player Bounds

Player Bounds

Game UI

GeonBit

GeonBit example

Ruminate

Ruminate Example

Myra

Myra Example

Steropes

Steropes Example

SimpleText UI Example

SimpleText UI Example

Special Effects

Screen Brightness

Screen Shake

Parallax Scrolling

Explosions

Field of View / No Mask

Field of View / Mask

Networked / Multiplayer

LiteNetLib

Setup LiteNetLib

Example LiteNetLib

RPG LiteNetLib

Lidgren.Network

Lidgren.Network

Save Game / Check Points

Creating a game save

Related Skills

Generating and using XNB files

Full Tutorials

Bricks

Dino

Monkey Tap

Simple Tower

Simple RPG

Simple Platform

Simple Racer

Simple Beat Em Up

External Resources

External Resources