how do I start with low level gfx?
I will attempt not to write an essay here.
Lots of ways!
The way I learned was by building projects with Cinder, an open source graphics engine. Cinder is nice because the engine's already built for you and it's not a crazy-complex engine (it's actually really nicely built), so you can modify it and see changes easily. You can take your time learning.
In terms of other open source engines, bgfx is also really great, there's OpenFrameworks, and there's Unreal too.
If you want to really learn about graphics APIs, many recommend not building on top of an engine but rather trying to build up the graphics yourself. For example, the Vulkan Samples here are great: https://github.com/LunarG/VulkanSamples/tree/master/API-Samples . I highly recommend checking out this thread too, which has some great getting-started-with-Vulkan suggestions! https://twitter.com/sehurlburt/status/806950062408351744
And then of course, I can't go without mentioning shaders. Who doesn't love shaders? No one, shaders are the best. There's https://www.shadertoy.com and http://glslsandbox.com/ .
I've done a few presentations and workshops on this topic, check em out!
http://www.slideshare.net/StephanieHurlburt/graphics-programming-workshop
https://docs.google.com/presentation/d/1yJSQy4QtcQxcMjr9Wj6kjMd2R1BLNA1mUebDtnaXDL8/edit#slide=id.p
https://youtu.be/2-P1GzG8o54
https://docs.google.com/presentation/d/1d0StEQMEdz4JUEHXfTPbwKIGYex2p5Mko1Rj66e5M80/edit#slide=id.p
If your aim is to get a job, remember that projects are always great-- so think of what you might be able to do that isn't super broad (don't build a whole game if you're just aiming for a demo-- maybe a particle sim, shader, etc instead). That'll help you learn, too-- you'll be able to just focus on one topic at a time without getting bogged down in many things you don't understand yet.
Feel free to ask anything more specific if you have follow up questions or get stuck along the way. I wish you the best!
Lots of ways!
The way I learned was by building projects with Cinder, an open source graphics engine. Cinder is nice because the engine's already built for you and it's not a crazy-complex engine (it's actually really nicely built), so you can modify it and see changes easily. You can take your time learning.
In terms of other open source engines, bgfx is also really great, there's OpenFrameworks, and there's Unreal too.
If you want to really learn about graphics APIs, many recommend not building on top of an engine but rather trying to build up the graphics yourself. For example, the Vulkan Samples here are great: https://github.com/LunarG/VulkanSamples/tree/master/API-Samples . I highly recommend checking out this thread too, which has some great getting-started-with-Vulkan suggestions! https://twitter.com/sehurlburt/status/806950062408351744
And then of course, I can't go without mentioning shaders. Who doesn't love shaders? No one, shaders are the best. There's https://www.shadertoy.com and http://glslsandbox.com/ .
I've done a few presentations and workshops on this topic, check em out!
http://www.slideshare.net/StephanieHurlburt/graphics-programming-workshop
https://docs.google.com/presentation/d/1yJSQy4QtcQxcMjr9Wj6kjMd2R1BLNA1mUebDtnaXDL8/edit#slide=id.p
https://youtu.be/2-P1GzG8o54
https://docs.google.com/presentation/d/1d0StEQMEdz4JUEHXfTPbwKIGYex2p5Mko1Rj66e5M80/edit#slide=id.p
If your aim is to get a job, remember that projects are always great-- so think of what you might be able to do that isn't super broad (don't build a whole game if you're just aiming for a demo-- maybe a particle sim, shader, etc instead). That'll help you learn, too-- you'll be able to just focus on one topic at a time without getting bogged down in many things you don't understand yet.
Feel free to ask anything more specific if you have follow up questions or get stuck along the way. I wish you the best!
Liked by:
Benjamin Loisch
Patakreps
Сергей Роженко