For fans of, say, older laptops that have "mechanical" keyboards, or people who only have access to less-powerful hardware, I wonder whether Vulkan will re-enable support for the latest Blender.
(Though the VRAM might still be a problem. As will local rendering of expensive animations.)
> VRAM requirements
2 GB [1].
The OpenGL 3.x hardware itself is capable of OpenCL 1.x including CL/GL interop.
I don't know if compute shaders were the reason for the GL 4.3 requirement, but from own experience, having to support different GL versions in the same code base isn't exactly trivial without resulting in a granular #ifdef-mess.
The cleanest solution is to have different backends for different GL versions, but that means a lot of duplicate maintenance effort and code.
But tbh, any cheap laptop made in the last decade should be able to run GL 4.3.
The only exceptions I've seen so far are VMs and the Raspberry Pi.
I'd recommend Blended to not close the door on OpenGL and instead keeping it as a compatibility fallback.
Thank you for sharing this! It'll be good to prevent others from following down the same path (my team included).
How is life at Zed? Have y'all raised capital in line with Windsurf / Cursor? Are you bootstrapping instead?
It's phenomenal that y'all are working natively in Rust rather than building on kludgy web tech.
Perhaps that is the problem, for any new general GPU API to get industry traction, driver, and os + tool support -takes a lot of time, and it feels obsolete by the time it is put to practical use.
Yes, it takes way more code to start from scratch on vulkan, but that's a trade-off against being able to better optimize exactly to your use case, if you need to.
I understand there are situations where more performance is desirable and that vulkan fills that niche. However if you are building simpler games, are you really going to need it? If I am building say a puzzle game, do I really need maximum 3D graphics fidelity and performance? I would argue probably not.
I am using OpenGL in my projects for now and if I feel the need to learn Vulkan I will. Almost all the materials online for OpenGL 3.3 are still relevant and unlike web world (where things are depreciated every 6 months) the code still works fine. The C++ linter / analysis tools I am using with CLion throw up warnings but these are normally fairly easily to fix.
Additionally yes, traction has been pretty weak too. It's still a wrapper on iOS/Mac and slower than DX12 on Windows. When you want something easy and crossplatform use OpenGL, and if you're really going to max out perf, then you use DX12 and Metal(which tbh might be easier than Vulkan too), so Vulkan's in a kinda awkward place.
With Vulcan, with what I've seen, this would have been a major endeavor just to get to the point where you can get a canvas so you can put some pixels on the screen as you have to do a whole lot of state setup and bookkeeping. Not really something you can wrap as a relatively simple python API for someone to do quick experiments with.
I did some other completely random, definitely not recommended, stuff in Blender like this camera motion tracking thing which would rotate the viewport as the camera moved and have the camera video as the background (also using the python GL module) to reproduce this paper I found on the interwebs. I also found the Clippy sprite sheet but decided that was probably a bridge too far even though it wouldn't have been too hard.
So, yeah, if you want your program to be crazy extensible a simple API is probably the best. Might not matter too much these days as you can just get the robots to do the hard work.
[0] I heard they were going to rip it out but haven't checked if they ever did
- it inherited the 'vendor extension mess' of GL, e.g. the development process of Vulkan is to let GPU vendors write extensions which are eventually declared as 'core', this sort of 'design by committee^H^H^Hvendor' approach will ineviatably result in a hot mess of an API after a couple of years
- it tried to cover the whole range between low-end mobile and high-end desktop GPUs with the same API, pretty much all design warts of Vulkan exists because it had to cover mobile GPU architectures that were already outdated with Vulkan 1.0
At least Khronos is aware now about the issues, question is whether it will result in any actual improvements, and how long that will take:
Ouch, since OpenGL isn't exactly known for being performant to begin with.
This sounds a lot like Houdini has its core rendering code designed around the granular 'state-soup model' of OpenGL and is now trying to emulate that same behaviour on top of an API which expects that all state combinations are baked upfront into immutable objects (which in some situations - especially in DCC tools - may turn out to be impossible, because they may not be able to predict all required state combinations - or the number of required state combinations is simply to large too create upfront).
There's quite recent extensions for Vulkan (VK_KHR_dynamic_rendering, VK_EXT_ extended_dynamic_state and VK_shader_object) which try to break the extreme rigidity of the Vulkan 1.0 API and go back to a more OpenGL like dynamic state soup (which IMHO is going too far, because GL's granular state soup is also its biggest problem - the best compromise is somewhere in the middle, see D3D11 or Metal) - but it might help moving code from GL to Vulkan without having to discard and create pipeline objects all the time.
mdp2021•1d ago
> This year, Blender is transitioning to Vulkan, which marks one of the biggest performance boosts in its history: weʼre talking about a leap from a cold start time of a minute 52 to opening Blender in 6 seconds. // Vulkan ... simply put, itʼs the industry standard API. [...] Blenderʼs current API is OpenGL, which has some major flaws. OpenGL ... really struggles using multi-core CPUs. // OpenGL ... automatically sets up most low-level features like memory management, synchronization, and hardware interactions. ... But high-level APIs come with a huge trade-off: theyʼre slow. // Writing code that performs better in Vulkan is a difficult task ... OpenGL is like infinitely easier than Vulkan. Vulkan ... is a low-level API. [...] Vulkan can perform up to 18 times better on certain tasks. [...] For tasks that heavily rely on the UI, we will see a much more performant system. [...] Essentially, interactions between the user and the program will be much faster, but the underlying automatic system will not see a direct speed increase from Vulkan. ... While I would love for my final render to be faster, I would much prefer to have a performant viewport thatʼs more stable and faster, which is what weʼll have with Vulkan. But this is not the only thing it brings to the table. Many corporate sponsors have granted money to Blender primarily for a Vulkan integration. AMD is donating $120,000 per year to help fund Blenderʼs transition to Vulkan.
RestartKernel•1d ago
bilbo0s•1d ago
greenknight•1d ago
jay_kyburz•1d ago
bilbo0s•1d ago
Time in Vulkan or OGL would barely register against IO and memory when loading such scenes.
jcelerier•1d ago
bilbo0s•1d ago
It’s all gonna come down to how fast is your IO and how fast is your memory. 6 secs to load all that data, be it via vulkan style threaded submissions or OGL style threading via shared context and syncing, is not likely to happen on most laptops. Even workstations may struggle to read in and generate the necessary data. Most of the reading and generation stage is usually happening entirely outside of the gpu. All of the reading. And most of the generation. Both are going into main memory first.
Again, generation will be way faster than read in assets, but most of the assets would be getting read in. That’s IO before you even make a single vulkan or OGL call. No way around it.
wlesieutre•1d ago
Test: Start Blender, open scene, final viewport 3000 objects, 550 materials, 200 images
thatjoeoverthr•1d ago
tczMUFlmoNk•1d ago
0x_rs•1d ago
https://www.vulkan.org/user/pages/09.events/vulkanised-2025/...
edoceo•1d ago