Support us on Patreon to keep GamingOnLinux alive. This ensures we have no timed articles and no paywalls. Just good, fresh content! Alternatively, you can donate through PayPal, Flattr, Liberapay or Buy us a Coffee. You can also buy games using our partner links for GOG and Humble Store.

Two bits of Vulkan related news to share today. Recently the Vulkan specification was bumped again with new extension and today a new NVIDIA Vulkan Beta Driver went up.

For the Vulkan API specification update to 1.2.140 it adds in VK_EXT_private_data that enables "attaching arbitrary payloads to Vulkan objects" which was worked on by NVIDIA.

We don't normally mention minor specification bumps to the Vulkan API but in this case, it's a little extra special due to this next extension. The VK_EXT_custom_border_color extension "provides cross-vendor functionality to specify a custom border color for use when the sampler address mode VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER is used". So why is it interesting? This was worked on by quite a lot of different people including developers from Valve (such as Philip Rebohle and Joshua-Ashton who work on DXVK), plus AMD, Intel, NVIDIA and more.


Today as well, NVIDIA released the 440.66.12 Vulkan Beta Driver adding support for these Vulkan extensions:

Plus it also fixed a Linux-specific "visual glitch with Vulkan applications when falling out of flipping on certain desktops such as GNOME".

Reminder: you know it's a special Beta driver thanks to the additional two numbers on the end of the version string, with the newest stable version of the NVIDIA driver for Linux at 440.82 which released on April 7. This special Vulkan developer beta driver is where all the shiny new stuff goes in before making its way into the stable release for everyone.

Article taken from GamingOnLinux.com.
23 Likes, Who?
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG, Humble Store and Paradox Interactive. See more here.
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
11 comments
Page: 1/2»
  Go to:

Comandante Ñoñardo 4 May 2020 at 3:24 pm UTC
Is there an easy way to install it on Ubuntu?
mirv 4 May 2020 at 3:37 pm UTC
View PC info
  • Supporter
  • Top Supporter
I can think of a few good development uses for private data payloads. It would certainly make the "what class object is that vulkan object attached to" puzzle a little bit easier.
Yes I know it can be done, but this would just make it easier.

....and the others mentioned are nice as well for that matter.
jens 4 May 2020 at 5:55 pm UTC
View PC info
  • Supporter
May I ask what border-color actually is/means in 3D world?
The term sounds rather simple for my naive mind, but I guess there is a whole lot of magic considering it needs a separate extension...
mirv 4 May 2020 at 6:20 pm UTC
View PC info
  • Supporter
  • Top Supporter
jensMay I ask what border-color actually is/means in 3D world?
The term sounds rather simple for my naive mind, but I guess there is a whole lot of magic considering it needs a separate extension...

When mapping from a texture (let's presume 2D texture) to a triangle (2D or 3D, but let's presume in 3D co-ordinate space), what happens when you go beyond the bounds of the texture? This can happen easily enough, and indeed can be used to great effect. It can also affect texture filtering (if you average over 4 texels, or points of the texture, then what happens on the edges and corners needs defining).

Often it's defined as treating the texture data beyond the limits of the texture as black, or white, or just repeat what's on the border of the texture. This extension allows that border colour to be defined to something else.

That's the hand-wavy simplified version of the what, but why the dedicated extension? Not all hardware supports it for a start. Some may be hard coded to black or white. Some may need it specified in a different manner - hardware, or extras tacked onto shaders. And then there's consideration of different colour spaces (CMYK vs RGBA). Vulkan doesn't just cover desktop hardware for gaming after all.
jens 4 May 2020 at 6:37 pm UTC
View PC info
  • Supporter
mirv
jensMay I ask what border-color actually is/means in 3D world?
The term sounds rather simple for my naive mind, but I guess there is a whole lot of magic considering it needs a separate extension...

When mapping from a texture (let's presume 2D texture) to a triangle (2D or 3D, but let's presume in 3D co-ordinate space), what happens when you go beyond the bounds of the texture? This can happen easily enough, and indeed can be used to great effect. It can also affect texture filtering (if you average over 4 texels, or points of the texture, then what happens on the edges and corners needs defining).

Often it's defined as treating the texture data beyond the limits of the texture as black, or white, or just repeat what's on the border of the texture. This extension allows that border colour to be defined to something else.

That's the hand-wavy simplified version of the what, but why the dedicated extension? Not all hardware supports it for a start. Some may be hard coded to black or white. Some may need it specified in a different manner - hardware, or extras tacked onto shaders. And then there's consideration of different colour spaces (CMYK vs RGBA). Vulkan doesn't just cover desktop hardware for gaming after all.

Thanks a lot for the great explanation. So in my own words that extension is mostly for defining (make sure it is fast and looks everywhere the same) sort-of currently undefined behavior?
mirv 4 May 2020 at 6:50 pm UTC
View PC info
  • Supporter
  • Top Supporter
jensThanks a lot for the great explanation. So in my own words that extension is mostly for defining (make sure it is fast and looks everywhere the same) sort-of currently undefined behavior?

To be more precise, adding different possible defined behaviour. Vulkan is much more tight on definitions, so what to do always had to be defined, this just gives more options of what to do. In a fast and looks everywhere the same manner.
jens 4 May 2020 at 6:59 pm UTC
View PC info
  • Supporter
mirv
jensThanks a lot for the great explanation. So in my own words that extension is mostly for defining (make sure it is fast and looks everywhere the same) sort-of currently undefined behavior?

To be more precise, adding different possible defined behaviour. Vulkan is much more tight on definitions, so what to do always had to be defined, this just gives more options of what to do. In a fast and looks everywhere the same manner.

Got it, thanks again!
mrdeathjr 4 May 2020 at 7:19 pm UTC
d9vk still works in this driver version and dxvk possible use various of this new extensions in future releases



YoRHa-2B 4 May 2020 at 7:26 pm UTC
mirvbut why the dedicated extension? Not all hardware supports it for a start.
Desktop hardware supports it, all other graphics APIs support it, and it makes our lives significantly easier, since the only real alternative would be to patch shader code on the fly based on the bound samplers, making one of the most basic operations - texture sampling - unnecessarily complicated and adding a lot of extra overhead.

Not everyone is super happy to keep adding legacy features to the API, but they aren't really going away any time soon, especially since Microsoft keeps supporting pretty much everything they ever came up with in D3D12.

Edit: Might have read your comment wrong, but leaving this here for extra info anyway.


Last edited by YoRHa-2B on 4 May 2020 at 8:23 pm UTC
alejandro-bringas 4 May 2020 at 10:06 pm UTC
Comandante ÑoñardoIs there an easy way to install it on Ubuntu?

is easy, open a cli mode, CTRL + ALT + F2/F3, Uninstall the previous driver with purge, and now go to where your driver to install is, and run it with this flag --dkms
While you're here, please consider supporting GamingOnLinux on Patreon, Liberapay or Paypal. We have no adverts, no paywalls, no timed exclusive articles. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!

You need to Register and Login to comment, submit articles and more.


Or login with...

Livestreams & Videos
None currently, submit yours here!
Popular this week
View by Category
Contact
Latest Comments
Latest Forum Posts