Jump to content

Game Engine, using Pixi.js, Typescript, gulp & webpack


Recommended Posts

Hi guys,

I am relatively new to game development, but I have to say I love it.

I want to start the development of a game of my own and I decided to try creating my own engine, mainly for the purpose of being part of the whole process. I think this will be the most appropriate way to completely understand everything that is going on behind the curtains. I picked Pixi.js as renderer and typescript as programming language. I will use webpack for bundling external modules and frameworks, and gulp for task runner.

I've done a lot of reading on the subject recently, but I could not find a tutorial, that is updated with the latest versions of the above, so I started my own.

With great help of different articles I found here, and all over google, I came up with the below:


I am thinking of expanding this one up to a standalone game engine using pixi(I know, absurdly ambitious :D. but I will definitely try). At this point I am planning the creation of scene/scale handling, collision detection, asset loaders. Any opinion/advice/guideline will be greatly appreciated.


Big thanks go to @Ezelia for the above, as it is still relevant, and to @overthink for https://github.com/overthink/pixitest. Helped me a lot for my choice.


Link to comment
Share on other sites

That's a noble cause, good luck with it!

I recommend to read ALL threads in this subforum. There were people making their engines spamming every small question in different topic.

About my setup:

1.  my own fork of pixi that is up-to-date with pixi-v5 "next" branch.

2. lerna + scripts for ts modules thanks to @cursedcoder from pixijs slack: it actually uses namespaces concatenation at the same time as import/export. I hate to import small files.

3. Integration between this and servers written on Kotlin. 


Link to comment
Share on other sites

I did something similar in the past when I was first learning what it meant to make games on the web. 


There are a lot of old patterns there, and some code I'm not proud of. But it was a good start towards a 2D game engine based on Pixi for me. I don't have any tutorials, because I learn better from reading/writing code rather than words but hopefully you find this helpful (remember this was 4-5 years ago before webpack, gulp, etc).

Link to comment
Share on other sites

Thank you both, guys!

I will definitely look into these. I already face one of my first problems. Not sure if this is the right place to ask, but do you know of a way to share an instance of a class already defined in another class?

To be more specific, I am trying to implement a loader manager that is just another instance of the PIXI.loaders.Loader, with a couple extensions. For example, i want every loaded asset to log its name. I was able to do it in the Game.ts file, but I am wondering how to load the same instance of this manager in another class. Can anyone help with that?

Best regards,


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...