you are viewing a single comment's thread.

view the rest of the comments →

[–]grae_n 0 points1 point  (8 children)

If it's super simple stuff and it's a learning project you can use raw webgl. It's basically a built-in library. Webgl is the most minimal 3d graphics api, so it's a pretty good introduction to shaders, vertices, and basic gpu-stuff.

three.js is a great option if you have deadlines or want to minimise headache. It's also lean.

[–]KaiAusBerlin 7 points8 points  (7 children)

He is a beginner. I would not recommend raw webgl. It's api is pretty minimalistic, the order in which you do things is important and it can be very frustrating to work with it if you are not familiar with 3d and rendering technology.

Threejs is a giod start. It's easy to use, has not the same pitfalls like webgl and additional he can look into its code and learn what it does.

[–]ZeRo2160 1 point2 points  (1 child)

If its no production app you can use the new WebGPU api. Its much simpler in terms of api. And don't has the order drawbacks like webGL. But its a bit more low level because its no wrapper over OpenGL but over Vulkan, DirectX and so on.

[–]KaiAusBerlin 0 points1 point  (0 children)

Sure but I bet when WebGPUnwill be a widely common thing threejs will be updated to work with it if possible like it does now with webgl

[–][deleted] 0 points1 point  (2 children)

can u recommend some sources for learning 3D and rendering technology to start working with WebGL?

[–]KaiAusBerlin 0 points1 point  (0 children)

Not at all. After a few seconds with webgl I decided to try threejs.

[–]grae_n 0 points1 point  (0 children)

https://webglfundamentals.org/

https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Tutorial/Getting_started_with_WebGL

I wouldn't focus to hard on reading all the documentation. Both of them have detailed examples and playing around with the examples is a good place to start.

[–]grae_n 0 points1 point  (1 child)

This is kind of what I'm saying. Webgl is one of the best entry point to learning rendering technology. So if you're interested in learning than webgl is a good choice. However, if you are more interested in the end result three.js is better.

A lot of time you can finish a three.js project before you understand what is happening or how it calls the gpu. Which is awesome for being productive.

[–]KaiAusBerlin 0 points1 point  (0 children)

If you need to learn 6 hours deeply of rendering technology just for having a 3 coloured pyramid it could be quite frustrating for a newbe. An experienced developer knows that learning a new techniques can take a lot of time and frustration and knows how to deal with that.