That post seems to be missing.
load all comments
filister 18 points 3 years ago

Noob here, but can someone explain to me what's the advantage of DirectX vs Vulkan, apart from being around for longer? And why do more developers embrace Vulkan for better portability?

path: 0 6203873, hotness: undefined, score: 18, children: 15
velox_vulnus 8 points 3 years ago
path: 0 6203873 6204095, hotness: undefined, score: 8, children: 12
filister 1 point 3 years ago

Does this make it harder to implement?

path: 0 6203873 6204095 6204102, hotness: undefined, score: 1, children: 9
Ansis 8 points 3 years ago

Lower level means you have more control over the small details. However, that also means that you have to reimplement some things from scratch, while higher level frameworks do those things for you.

path: 0 6203873 6204095 6204102 6204813, hotness: undefined, score: 8, children: 6
heartsofwar 1 point 3 years ago
path: 0 6203873 6204095 6204102 6204813 6208263, hotness: undefined, score: 1, children: 5
teawrecks 4 points 3 years ago

I think you are confused about the difference between the opengl spec and an actual implementation of the spec, and who is responsible for shipping what.

  • Nvidia ships their own opengl implementation with their drivers, because that's what a driver is.
  • Microsoft doesn't ship "opengl binaries", they don't have any hardware. Maybe you mean they published their own fork of the ogl spec before giving up and making DX? That may be true.
  • Mantle predates DX12, both vulkan and dx12 took inspiration from it, not the other way around.
  • There are two interpretations being thrown around for "low level":
    • The more traditional meaning is "how far are you from natively talking to hardware?" which is not determined by the rendering API, but the specific implementation. Ex. Nvidia's dx9 driver is equally "low level" as their DX12 driver, in that the API calls you make are 1 step away from sending commands directly to GPU hardware. Meanwhile, using DX12 via DXVK would be 2 steps away from hardware, which is "higher level" than just using Nvidia's DX9 implementation directly. Again, "level" is not determined by the API.
    • the other interpretation is what I would call "granularity" or "terse-ness" of the API, i.e. how much control over the hardware does it expose. In this case, yes, dx12 and vulkan give finer control over the hardware vs dx9 and ogl.
  • your last statement...doesn't make sense, I don't understand it. Maybe you're trying to say that DX12/VK are made to be thinner, with less internal state tracking and less overhead per call, and therefore now all that state tracking is the app's responsibility? Yes, that is true. But I wouldn't say that code is "specific to a GPU".
path: 0 6203873 6204095 6204102 6204813 6208263 6209075, hotness: undefined, score: 4, children: 4

thanks for using Leebra!

go to feed...