Difference between revisions of "MonoGame Tutorials"

From TRCCompSci - AQA Computer Science
Jump to: navigation, search
(External Tutorials)
(Game UI)
 
(116 intermediate revisions by the same user not shown)
Line 1: Line 1:
==External 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.
===Beginner===
+
[https://blog.xamarin.com/build-your-first-game-with-monogame-getting-started/ Monkey Tap first game tutorial]
+
=Basic Skills=
 +
[[Creating A Project]]
  
[https://www.youtube.com/playlist?list=PLcQUM4MNvSeTXMdx9peqnNi7RVzQ3jpRC Youtube MonoGame PlayList]
+
[[Using SpriteFont]]
 +
 
 +
[[Drawing Textures]]
 +
 
 +
[[Drawing Shapes]]
  
[https://darkgenesis.zenithmoon.com/getting-started-with-monogame-using-visual-studio/ MonoGame in Visual Studio Tutorial]
+
[[Keyboard Input]]
  
[https://docs.microsoft.com/en-us/windows/uwp/get-started/get-started-tutorial-game-mg2d Microsoft 2d MonoGame tutorial]
+
[[Mouse or touch control Input]]
  
[http://techsnackbar.com/monogame-tutorial-building-2d-game-using-csharp/ Creating a 2d bricks game]
+
[[Audio Playback]]
  
[https://www.pluralsight.com/courses/monogame MonoGame on Pluralsight (Sign up for a free trial)]
+
[[Video Playback]]
  
[https://www.phstudios.com/monogame-basics-series/ monogame-basics-series]
+
[[Screen Settings]]
  
[https://www.youtube.com/playlist?list=PLV27bZtgVIJqoeHrQq6Mt_S1-Fvq_zzGZ Youtube Tutorial Series]
+
[[Audio Settings]]
  
[https://www.youtube.com/playlist?list=PL667AC2BF84D85779 XNA YouTube tutorials from same source as above]
+
[[Animation]]
  
===Moderate===
+
[[Game states]]
[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]
+
[[Using Timers]]
  
[https://www.phstudios.com/monogame-advanced-series/ monogame-advanced-series]
+
=Player Class Example=
 +
[[Creating A Player]]
  
==Different type of Game==
+
[[Creating An Instance of Your Player]]
===Tower Defence===
 
[[http://xnatd.blogspot.com/2009/02/ok-so-first-part-of-our-tower-defence.html Tutorial 1 : Drawing the level.]][[http://xnatd.blogspot.com/2009/03/tutorial-2-levels.html Tutorial 2 : Create a Sprite base class.]][[http://xnatd.blogspot.com/2010/09/tutorial-3-enemy-class.html Tutorial 3 : Creating the Enemy class.]][[http://xnatd.blogspot.com/2010/09/tutorial-4-waypoints.html Tutorial 4 : Adding way-points and enemy movement.]][[http://xnatd.blogspot.com/2010/09/tutorial-5-towers.html Tutorial 5 : Making a base Tower class.]][[http://xnatd.blogspot.com/2010/09/tutorial-6-tower-management.html Tutorial 6 : Tower placement and management.]][[http://xnatd.blogspot.com/2010/10/tutorial-7-firepower.html Tutorial 7 : Extending the tower class and adding projectiles.]][[http://xnatd.blogspot.com/2010/10/tutorial-8-waves-featuring-tower.html Tutorial 8 : Adding a wave of enemies.]][[http://xnatd.blogspot.com/2010/10/tutorial-9-multiple-waves.html Tutorial 9 : Adding multiple waves]][[http://xnatd.blogspot.com/2010/12/tutorial-10-creating-basic-gui.html Tutorial 10 : Creating the GUI (Part 1)]][[http://xnatd.blogspot.com/2010/12/tutorial-11-creating-gui-part-2.html Tutorial 11 : Creating the GUI (Part 2)]][[http://xnatd.blogspot.com/2011/01/tutorial-12-adding-new-tower-type.html Tutorial 12 : Adding a New Tower Type]][[http://xnatd.blogspot.com/2011/01/tutorial-13-adding-slow-tower.html Tutorial 13 : Adding the Slow Tower]][[http://xnatd.blogspot.com/2011/01/tutorial-14-polishing-game.html Tutorial 14 : Polishing the Game]][[http://xnatd.blogspot.com/2011/02/tutorial-145-drag-and-drop-towers.html Tutorial 14.5 : Drag and Drop Towers]]
 
Pathfinding Tutorials :
 
[[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===
+
[[Adding and Processing Player Input]]
  
[https://www.youtube.com/playlist?list=PLE500D63CA505443B XNA Platformer Made Easy (YouTube)]
+
=Collision Detection=
 +
[[Rectangle Bounds Collision]]
  
===RPG===
+
[[Basic Per Pixel Collision]]
[https://www.youtube.com/playlist?list=PLHJE4y54mpC5hrlDv8yFHPfrSNhqFoA0h MonoGame RPG Made Easy (YouTube)]
 
  
====Tutorial Series====
+
=Using Tiled Maps=
[https://roguesharp.wordpress.com/2014/05/18/tutorial-1-roguelike-map-generation-using-roguesharp-and-monogame/ Tutorial 1 – Map Generation]
+
===Squared.Tiled===
 +
[[setup and map example]]
  
[https://roguesharp.wordpress.com/2014/05/24/tutorial-2-roguelike-field-of-view-calculation-using-roguesharp-and-monogame/ Tutorial 2 – Field-of-View Calculation]
+
===TiledSharp===
 +
[[using a tmx map in monogame]]
  
[https://roguesharp.wordpress.com/2014/05/30/tutorial-3-roguelike-map-exploration-using-roguesharp-and-monogame/ Tutorial 3 – Exploring the Map]
+
===TiledCS===
 +
[[Using TiledCS]]
  
[https://roguesharp.wordpress.com/2014/06/09/tutorial-4-roguelike-pathfinding-using-roguesharp-and-monogame/ Tutorial 4 – Pathfinding]
+
===TiledNet===
 +
[[Using TiledNet]]
  
[https://roguesharp.wordpress.com/2014/07/13/tutorial-5-creating-a-2d-camera-with-pan-and-zoom-in-monogame/ Tutorial 5 – 2D Camera Setup]
+
===TiledLib===
 +
[[Using TiledLib]]
  
[https://roguesharp.wordpress.com/2014/08/30/tutorial-6-roguelike-combat-using-roguesharp-and-monogame/ Tutorial 6 – Combat]
+
=Player Bounds=
 +
[[Player Bounds]]
  
==TRC Tutorials==
+
=Game UI=
===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 Player]]
+
[[GeonBit example]]
  
[[Creating An Instance of Your Player]]
+
[[Ruminate Example]]
  
[[Adding and Processing Player Input]]
+
[[Myra Example]]
  
[[Mouse or touch control Input]]
+
[[Steropes Example]]
  
[[Animate the Player]]
+
[[SimpleText UI Example]]
  
[[Using SpriteFont]]
+
=Special Effects=
 +
[[Screen Brightness]]
  
[[Game states]]
+
[[Screen Shake]]
  
===Collision Detection===
+
[[Parallax Scrolling]]
[[Rectangle Bounds Collision]]
 
  
[[Basic Per Pixel Collision]]
+
[[Explosions]]
  
[[Per Pixel Collision |Advanced Per Pixel Collision]]
+
[[Field of View / No Mask]]
===Squared.Tiled Maps===
 
[[setup and map example]]
 
  
===TiledSharp Maps===
+
[[Field of View / Mask]]
[[using a tmx map in monogame]]
 
  
===Related Skills===
+
=Networked / Multiplayer=
[[Generating and using XNB files]]
+
===LiteNetLib===
  
=Game Resources=
+
[[Setup LiteNetLib]]
==Tiled==
 
===Tiled Website and Download===
 
  
[http://www.mapeditor.org/ Tiled Map Editor]
+
[[Example LiteNetLib]]
  
===Tutorials for using Tiled===
+
[[RPG LiteNetLib]]
  
[http://doc.mapeditor.org/ Offical Tiled Tutorials]
+
===Lidgren.Network===
  
[https://gamedevelopment.tutsplus.com/tutorials/introduction-to-tiled-map-editor-a-platform-agnostic-tool-for-level-maps--gamedev-2838 Tiled Basics]
+
[[Lidgren.Network]]
  
[https://www.youtube.com/playlist?list=PLpWTFopWU5f3xgvztkivtEcYmocD-Xigt Tiled Youtube Playlist Series]
+
=Save Game / Check Points=
 +
[[Creating a game save]]
  
[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]
+
=Related Skills=
 +
[[Generating and using XNB files]]
  
==Game Art==
+
=Full Tutorials=
===Home Page===
+
[[Bricks]]
[http://opengameart.org/ Open Game Art]
 
  
==MonoGame.Extended==
+
[[Dino]]
===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]
+
[[Monkey Tap]]
  
===Install Method 2===
+
[[Simple Tower]]
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
+
[[Simple RPG]]
#MonoGame.Extended.Tiled
 
#MonoGame.Extended.Graphics
 
  
These may also require some setup, read the '''readme.txt''' files when the new packages are installed.
+
[[Simple Platform]]
  
===MonoGame.Extended Resources===
+
[[Simple Racer]]
  
[http://community.monogame.net/c/extended MonoGame.Extended Forum]
+
[[Simple Beat Em Up]]
  
[http://craftworkgames.github.io/MonoGame.Extended/ MonoGame.Extended Wiki]
+
=External Resources=
 +
[[External Resources]]

Latest revision as of 09:06, 31 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

Audio 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 example

Ruminate Example

Myra Example

Steropes 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