A Simple Game Engine From Scratch : Sharing My Programming Videos That I Did Awhile Back

25    01 Feb 2016 04:39 by u/duannguyen

Overview

Awhile back I did a video series that went over programming a simple game engine from scratch. I picked it back up about a week ago, but I can't guarantee updates since I'm a pretty busy person (2 jobs, very little free time). I thought if any of you were interested you can have a look. This was an experiment by me and recording myself programming was so weird.. in the end I found it easier to take it slow as possible.


To facilitate the engine, I used a fairly new drawing library from Microsoft: Win2D which is an immediate mode drawing library. You can use any drawing library you want and adapt accordingly.

In the video series, I go over

  • Downloading the library with NuGet and importing it. Drawing simple geometric shapes onto the canvas.

  • Creating a Content Pipeline and loading Images into it.

  • Making basic scene items (objects), putting them inside a scene (aka Scene graph) and building a manager that manages all the scenes inside your game: A StoryBoard.

  • Creating the Game Loop which has a specific Updates Per Second and Frame Per Second.

  • Creating an Input Manager such that the mouse (or anything you like) can push its events on to it, which the manager pushes its current input down the StoryBoard model.


Video In The Series

A Top Down View of The Simple Game Engine

Turn your volume up...my voice is low until EP #6... got a new mic :D

EP #1 : Environment Setup & Drawing Primitives
EP #2 : Loading and Drawing Images
EP #3 : Coding The GenericItem
EP #4 : Coding The GenericScene & SceneManager
EP #5 : GameLoop and Keeping Time
EP #6 : Input Manager and Game Engine Overview
EP #7 : Capturing Mouse Events
EP #8 : Optimize Mouse Events And The Generic Button

Convenient Playlist of All Videos: EP #1 - EP #8 more to come (I hope).


The Simple Game Engine is done -- but I haven't recorded all the tutorial episodes, as you can see by the Minesweeper clone at the end of EP #5.

A sample screen shot of the game I was working on before real life worked pull me in : Real Time Strategy Demo/Tower Defense Demo -- yes you can zoom in and move the mini map around just like Starcraft.


I hope this helps some of you.


Some social media links:

  1. My Stack Overflow Profile

  2. My YouTube Channel


Edit: Added EP #7 : Capturing Mouse Events
Edit: Added EP #8 : Optimize Mouse Events And The Generic Button.

2 comments

0

02.21.2016: Added EP #7: Capturing Mouse Events.

0

04.01.2016: Added EP #8: Optimize Mouse Events And The Generic Button.