Hacker News new | ask | show | jobs
by nprz 3244 days ago
I've been interested in learning WebGL but have been hesitant to take the time to learn it because it didn't seem like a skill companies would hire for. Do you think it will become a marketable skill in the future?
1 comments

WebGL is very similar to OpenGL ES. In general, having basic knowledge of OpenGL and the rendering pipeline is always a good thing. But that alone won't provide a lot of value to a company.

Start out with some tutorials and learn the basics, but keep in mind, that there are frameworks like three.js [1], which abstract away all the nitty-gritty details, like setting up a render context, initialize texture buffers or load 3d models from known formats. By using a framework you will save a lot of time and you can concentrate on the fun stuff.

But even three.js can be kind of low-level, because depending on what you want to achieve, you still need more 'boilerplate'. If you want to write a game, you need stuff like a ui framework within the render context, a physics engine, particle generators, pathfinding etc etc. If you need this, maybe take a look at Unity [2] or Unreal Engine [3], which provide said extensions and alot more. Those engines provide ways to build applications for different targets like direct3d, opengl or webgl, so you basically can cover browsers, pc's and mobile platforms with the same codebase which is truly awesome. But be prepared for a step learning curve (but it's fun!).

When you start working on stuff like this, you realize, that those frameworks and game engines are just tools. In the end, you need to combine those tools with some kind of domain knowledge, like art, game design, architecture, interface design or something similar to increase chances finding a job in such a sector.

It's alot to ask for, but you need to start somewhere. And if it doesn't work out, you maybe find a new cool hobby and gain programming and design experience on the way.

[1] https://threejs.org/ [2] https://unity3d.com [3] https://www.unrealengine.com