Jump to content

PwassonEngine - My little 2D Game Engine with built-in physics


Recommended Posts

Hey guys,

Just wanted to show my little in-development game engine. I decided to create my own engine as Panda.js didn't got any updates for several months. The goal here is to have a lightweight but powerfull game engine with awesome performances, whatever the device is (ie. Android) while being able to use Canvas+ (so, no DOM is used as Canvas+ doesn't supports DOM).

What I've already done:

  • Game config via `config.js` file ;
  • Game scenes ;
  • Ultra-customizable Sprite class that allows to modify everything drawing related ;
  • Mouse events support (click, move, hover, down, release, out) and Drag & Drop support ;
  • Built-in physics engine (made on my own, so a bit hacky/buggy but I plan to fix these issues :p) ;
  • Only redraw what needs to by using a simple variable on every scene children: `needsUpdate`.

What I want to do:

  • Implement built-in networking to allow multiplayer games/apps ;
  • Implement UI elements like Text, Buttons, Scrollable panels, Inputs to allow devs to make real Canvas UI ;
  • Fix the overall bugs ;
  • Add some helper classes ;
  • Maybe implement SAT.js for collisions detection/solving ;
  • And finally, build the game I started this engine for :).

So this is an "ambitious" project that aims to allow doing things other engines wasn't able to offer me.

  1. Source code (Gitlab): https://gitlab.com/skyzohkey/PwassonEngine
  2. Demonstration: https://skyzohkey.gitlab.io/PwassonEngine

Feel free to contribute to the code, open issues if you find them, create issues for suggestions too. Or simply leave a message here.

Thanks for reading, I hope I'll be able to drive this project the right way. ;)

Link to comment
Share on other sites

Thanks for the interest you gave to my little project! :)

I'll hardtest the engine once I implemented and optimized all of what I want to do, but currently PwassonEngine can handle ~500 physics bodies + 500 sprites linked to those bodies, i guess. ;)

EDIT: Just done a test, and with 1500 sprites + 1500 bodies, the demo project runs at 1 FPS, ahah, i need to optimize/refactor some code to make things faster ;)

EDIT2: Ok, the engine currently crash and stop updating with 2500 sprites + 2500 bodies. x')

Another edit: You can now live try to hard test the demonstration, just click the "text-button" in top-right corner and enjoy ;)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...