You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
raw_buffer_t, raw_uniform_t, raw_shared_t have a + byteOffset capability
References to these handles can be passed by function, with atomic operation capabilities
The real number is never known, they are actually virtual
Easier to debug because they are bound to descriptor binding, including the indexed model
You can check the presence of this binding (element), but again you can't know its number
You can't save them (those handles) to memory. You can only operate on them inside the shader.
Why did I still decide not to add the idea from shader model 6.6 in its entirety?
Backward compatibility with the current bindings model.
Avoiding some misunderstandings and conflicts in terms of typing.
And what will change?
Essentially the implementation of the pointer and reference model.
The ability to check for presence or empty binding.
Different data types for different purposes.
Ability to atomic operations on argument in functions.
Virtual device buffer address? Aka. shader model 6.6 miscellaneous.
Not applicable everywhere. For example shared is more of a purely hardware thing, and it doesn't have a good binding.
Safety. Stands between the physical device buffer address and the binding to the descriptor. And the same limit checks, validation, and debugging are available (though in bytes, in hex code). Even an availability check is available.
The text was updated successfully, but these errors were encountered:
Trivia:
raw_buffer_t
,raw_uniform_t
,raw_shared_t
,raw_texture_t
,raw_image_t
, etc.raw_buffer_t
,raw_uniform_t
,raw_shared_t
are similar touint64_t
, but with some rules, limitations and exceptions.Example:
Let me explain what this is all about:
raw_buffer_t
,raw_uniform_t
,raw_shared_t
have a+ byteOffset
capabilityWhy did I still decide not to add the idea from shader model 6.6 in its entirety?
And what will change?
Virtual device buffer address? Aka. shader model 6.6 miscellaneous.
Not applicable everywhere. For example
shared
is more of a purely hardware thing, and it doesn't have a good binding.Safety. Stands between the physical device buffer address and the binding to the descriptor. And the same limit checks, validation, and debugging are available (though in bytes, in hex code). Even an availability check is available.
The text was updated successfully, but these errors were encountered: