This is my first 2D game engine writen in C# and MonoGame
C# PowerShell
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
VaultTech
LICENSE
README.md

README.md

Vault-Engine

This is my first 2D game engine written in C# and MonoGame

Features:-

Artificial Intelligence:-

  • I have developed a pathfinding algorithm A* with support for clearance based pathfinding and I have optimized it by using a binary tree (min heap).
  • I have developed a way point system in which an AI would follow.
  • I have developed an AI with line of sight.

Physics:-

  • I have developed a simple rectangle and circle based collision system.
  • I have developed a simple physics system that can give an object Speed, Acceleration, Velocity, Gravity, Drag and deceleration.

Audio:-

  • Playing simple MP3 and WAV file formats in-game.

Graphics:-

  • I have developed a tile based rendering system that can read the world or map information from an XML file and draw it on the screen. I have optimized this system by only rendering what the camera can see and by placing all of tiles on one big texture to save on draw calls.
  • I have developed a simple particle system on the CPU side.
  • I have developed a simple ambient, point, directional light system using HLSL 5.0.
  • I have developed a simple 2D animation system where you can read the animation information from an XML file.
  • I have developed a simple font rendering system that supports kerning.

User Interface:-

  • I have developed a fully functioning in game UI system from scratch that can be scaled without distortion or degradation of the UI quality.
  • The UI system includes Button, Textbox, Checkbox, Radio box, Menus, windows, Menu bar, Panels with scroll bars, Message box and Labels.

Networking:-

  • I have developed a simple network system using the server/client architecture using both TCP and UDP.
  • I have developed a simple registration and login system using PHP and or C# and SQL.
  • I have encrypted all of the packets from the server and client side using the SHA256 hash algorithms.
  • Connecting, downloading and uploading files to and from an FTP server.

File System:-

  • Writing and reading XML files.
  • Compressing and decompressing archive file formats.
  • Packaging all the game assets into an archive file format and reading them when needed without the need of decompressing the archive file.