It's different when you're on a team, right? On a team, you likely know your role and what you should be doing. On your own, my advice is to find the tasks that are itchiest to you and do those yourself. For the other stuff, outsource them or otherwise find a way to get them done that's not so draining on your time.
If you really want to make your own graphics, you can and should. There's never been so many online tutorials for learning art, nor so many free or open source applications. You can use Krita or The GIMP for 2D images, or Blender for 3D modeling. If you don't want to make your own graphics, there are many places to get free assets. My favorite is Kenny. Here you can find hundreds of sprites, both pixel art and high def, 3D assets, user interface graphics, and more. See also OpenGameArt for lots of free assets you can use right now.
Similarly, if you really want to make your own sound effects or music, you can and should. Web Games benefit from the Audio Element, as well as the Web Audio API, ready to make your game sound great. If you don't want to make your own sound effects or music, there are so many places to get royalty free music like itch, freesound.org, or freepd.com. So focus on your itchiest tasks, the ones you're really excited to tackle. For the other stuff, consider asset packs or similar solutions to fill in the gaps that you don't want to make by hand.
Next, pick a game engine. The biggest game engines of the day like Unity and Godot do have web exports. These web exports can sometimes generate huge files like hundreds of megabytes for some reason, but these engines can be perfectly fine choices for making web games. For the sake of this talk, let's focus on web-centric platforms. Let's say that means an engine is web-first and either already built on web technology or considers the web its primary build target. With those parameters in mind, there are many great options, but for 2D games, it's hard to argue against Phaser. It's lean, it's mean, it's been around for ages, it does all you want, and it's used by some of the biggest names in the games industry. Also, it's actively maintained by Richard Davey, who's a super cool dude and a great dev. For 3D games, I'd take a long look at PlayCanvas, also supported by super cool devs. Personally, I like to write my games by hand in pure, vanilla JavaScript. No libraries, no plugins, just good times with me and my code editor. Yes, I know, that's weird. I also like to use the 2DCanvas API because it's nice and clean, and I love how it lets me make sharp, crispy pixel games, like those found in my new game Pixelwasher. If you're wiser than me, you might consider making a pure DOM-based game. You'll almost certainly have to touch the DOM a little just to set up whatever else you're doing, but leaning into the DOM can be a smart way to make your game quickly and effectively.
Comments