Questions tagged [vulkan]

For questions about the Vulkan graphics/compute API.

The Vulkan is a low-level, cross-platform graphics and compute API developed by the Khronos Group.

101 questions
65
votes
10 answers

Should new graphics programmers be learning Vulkan instead of OpenGL?

From the wiki: "the Vulkan API was initially referred to as the 'next generation OpenGL initiative' by Khrono", and that it is "a grounds-up redesign effort to unify OpenGL and OpenGL ES into one common API that will not be backwards compatible with…
galois
  • 885
  • 1
  • 6
  • 8
23
votes
3 answers

Why is thread safety such a huge deal for Graphics APIs?

Both Vulkan and DirectX12 are claimed to be usable in a thread-safe manner. People seem to be excited about that. Why is this considered such a huge feature? The "real" processing gets thrown over the memory bridge on a separate processing unit…
ratchet freak
  • 5,830
  • 15
  • 27
11
votes
1 answer

What are Metal and Vulkan?

I keep coming across the terms 'Metal' and 'Vulkan' on this site. Guessing this to be some CG software, I'm interested to know what these are exactly and what the intended and most common usage is. A quick search shows me a video about why metal in…
MisterGeeky
  • 211
  • 2
  • 5
10
votes
1 answer

What prevents older GPUs from supporting Vulkan?

More out of curiosity than for any practical purpose, I'm wondering what is lacking from older GPUs that causes them to be unable to support Vulkan. I know that some argue that some hardware, such as nVidia's Fermi series of GPUs, could support…
Dolda2000
  • 211
  • 2
  • 5
8
votes
2 answers

Vulkan: Uniform Buffers versus Push Constants for static data

I'm sort of struggling to understand the conceptual difference between uniform buffers and push constants. From what I can gather by reading the spec, the main differences are: Uniform buffers can be much larger than push constants. UBOs use…
haasn
  • 145
  • 1
  • 6
8
votes
2 answers

What's the main difference of pipeline process between Vulkan and DX12?

DX12 introduces a new feature of pipeline named 'Bundle'. It seems that can optimize the command list, and send it to final pipeline. Vulkan invent some different pipeline: The graphic pipeline and the compute pipeline. The graphic pipeline seems…
naive231
  • 189
  • 1
  • 3
7
votes
1 answer

Is vkCmdPushDescriptorSetKHR efficient?

I am new to Vulkan. Compared to DX12, the resource binding procedure seems a little bit complicated. In terms of per draw call uniform buffers, I currently have two approaches in mind, and they both seem to work (haven't tested/benchmarked yet). Can…
ACskyline
  • 105
  • 6
7
votes
2 answers

Vulkan: how does host coherence work?

I have a memory that is persistently mapped. It is both HOST_VISIBLE and HOST_COHERENT but not DEVICE_LOCAL. (My physical device offers no memory that is exclusively HOST_VISIBLE without also being HOST_COHERENT.) This memory contains vertex…
d3m4nz3
  • 213
  • 2
  • 7
7
votes
1 answer

Why can't I utilize multiple CPU cores with OpenGL like Vulkan?

Can I pass the data to the GPU through multiple cores with OpenGL?
Ankit singh kushwah
  • 791
  • 1
  • 5
  • 19
6
votes
1 answer

How do I create a Win32 window with a Vulkan context?

I am aware of libraries that already do this (like GLFW), but I would actually prefer do all of the window and context creation by myself.
Removed User
  • 251
  • 4
  • 11
6
votes
1 answer

Instanced Stereo Rendering vs. Multiple Command Buffers

Source In this webpage from Nvidia, the author(s) seems to imply that you could create a command buffer for each eye on separate threads. However, I don't see the benefit to this over instanced stereo rendering since you must also handle…
aces
  • 1,343
  • 1
  • 11
  • 17
5
votes
2 answers

Can i compile my shaders to SPIR-V without using glslangValidator?

I'm making a cross-platform application, and i need my shaders to be compiled to SPIR-V for both Opengl and Vulkan. It seems that the only way to do so is to call a separate program, called "glslangValidator.exe/.deb/.dmg". This sort of makes it…
Removed User
  • 251
  • 4
  • 11
4
votes
0 answers

Are there any reasons to use power of two textures with modern mobile platforms?

Are there any reasons to use power of two textures (like 128x128 sized) if one targets modern mobile platforms (with OpenGL ES 3.0, Metal and/or Vulkan)? With iOS the PVRTC only supports power of two textures that have equal width and height, but…
4
votes
1 answer

How much does driver quality affect Vulkan and DX12 compared to OpenGL and DX11?

Considering the fact that Vulkan and DX12 delegate most of the memory management / work scheduling tasks to the application itself, how much do drivers affect performance? To put my question into context, people on the internet talk a lot about…
mbl
  • 291
  • 1
  • 8
4
votes
1 answer

Is a single shader and 1x1 pixel white sampler more efficient than frequent switching between shaders with and without samplers?

I have some existing OpenGL code that I am porting to Vulkan. The question is somewhat relevant to both OpenGL and Vulkan. I am rendering some primitives using textures, some single channel, others RGBA, as well as flat colored primitives with…
1
2 3 4 5 6 7