GithubHelp home page GithubHelp logo

benlammers / ts-engine Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 162 KB

Simple 2D Game Engine running in the browser on HTML Canvas. Currently only supporting rectangle based games

Home Page: https://ts-engine.vercel.app/

TypeScript 49.91% CSS 2.26% HTML 1.42% JavaScript 4.12% Svelte 42.28%
game game-engine typescript canvas2d html-canvas

ts-engine's Introduction

TS Engine

Table of Contents

Purpose

The purpose of this repository was to have fun building a simple game engine on the browser and to try out creation of a monorepo containing an NPM package and a Svelte application.

Description

During my studies I took a game development course where we looked at a simple game engine developed using Java and Java AWT. I was intrigued by this and being a web developer decided to translate the Java engine for the web. I used Typescript and browser APIs and this is the result. TS Engine is a very simple engine supporting only text and rectangular shapes. It is by no means robust or complete but has been enjoyable to create.

This repository contains the NPM package TS Engine containing the simple game engine as well as a Svelte app that showcases a game made using the engine.

Tech Stack

Possible Improvements

Given that this is a game engine there is an infinite amount of features that could be added. One that is quite obvious is if there is room to scroll on the Y axis then the controls of Snake shift the screen while you play. I am also sure there are performance issues to be resolved as well as the capability to have a consistent framerate. The most relavent features that could be added in my perspective at this time would be the ability to render more than just rectangles to the game, circular shapes or sprites would be a great addition.

ts-engine's People

Contributors

benlammers avatar

Stargazers

Lessing avatar Quoc Luc Nguyen avatar

Watchers

 avatar

ts-engine's Issues

Cannot run multiple games on the same site

When trying to host a game of Pong and Snake on the same site. The only game that will work is whichever was initiated first. Initial thought is that it has something to do with the singleton set up of GameControllers. Need to explore further

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.