PlayCanvas? or start with <canvas> first

So I’m in a bit of a dilemma.

I have knowledge of javascript, not a great amount but its there.
I want to develop HTML5 games.

I would prefer to learn it from scratch i.e. playing around with the element.
But as there is only 24 hours a day, and even less hours spent learning new things (with all of life going on as well). Say I don’t want to spend ages to finally know how to develop HTML5 games but still understand javascript and ‘what-goes-on-behind-the-scenes’ deeply, which would be the better approach and why?

  1. learn first
  2. just jump into an engine like PlayCanvas or Phaser

Any help much appreciated,

Good question. Maybe it’s like asking whether you should learn Latin before learning a modern language like French.

Normally, I would say some foundational knowledge is good, but be careful not to place more value on it than it deserves. As it happens, it’s not necessarily an ‘either or’ situation. If you make a PlayCanvas game, you can still happily use the canvas 2D API for certain purposes. For example, this project programmatically creates a canvas element and draws text to it and then uses the canvas as a texture. And PlayCanvas recommends you use HTML and CSS to build your user interfaces, so again, you get to learn these important fundamental skills while you’re using PlayCanvas.

1 Like

Music to my ears!

I thought this was a possibility but was hesitant to continue learning PlayCanvas without such reassurance, but now there is no doubt.
Thank you Will!

Hello, lot of ppl here learn while trying to make a game, as myself, so don’t worry, ppl here know that and help a lot pointing u to the right tutorial or giving u tips, and stay strong coz it’s an hard work lol


It is good to combine learning of PlayCanvas with something like JavaScript course on CodeAcademy.
As it will teach you JS fundamentals carefully, and you could apply alongside those concepts in PlayCanvas to learn certain things around.
It wont overload you with thing like by looking at existing projects and their code, and will keep you growing pretty well, so at some point you will be able to look at existing projects code, and read em without big problem.

1 Like

Thanks for the recommendation Max.

I did some javascript at University, not a great amount but my friend who is very experienced with javascript thought it was a fare amount. I think I already understood the content from the link you gave.

I was more looking to learn how the engine handle things behind the scene, and my guess is that it may be using elements and tags I’ve not come across like for rendering (though Will’s reply reassured me I could still learn that).

Though, as ayrin pointed out, I would really appreciate if one day I come across one of these elements I don’t understand and you could show me a tutorial/guide you know that’s really good in your opinion.

And thanks everyone for helping!