The const char* version of name is node [[deprecated]].
This change is only cosmetic, no implementation is changed. This is
a first step toward eliminating non literal tags.
Mozilla sometimes clears the generic buffer binding when another buffer
is destroyed, if that other buffer is bound on an indexed buffer
binding.
The fix makes sure the generic buffer binding is unbound from the
context when being destroyed.
BUGS=[376125497]
we were not binding the proper descriptor set. on gl this is only
an assert, on vulkan it would be a problem if we supported subpasses,
on metal there is no assert.
- Some tests require textures larger than 2048. Change the minimum
to 4096 for now, and file proper bugs for tests.
- The introduction of uint8_t to DescriptorSetLayoutBinding
caused unintended padding with using this struct as a hash key.
We comment out the relevent code for now.
Set the support for isProtectedTexturesSupported
depending if the context supports protected content.
Fix checking if the protected feature is supported
on the host after retrieving the results from querying
the Physical Device.
Replace "void* const" with "void*" as const here serves no purpose because of following reasons:
1. void* const in function parameter has a limited and local effect on the code.
2. clang tidy would complain and report error if const is added to the function declaration.
3. const is dropped later in the call stack making the code incosistent.
To match the GL platform add a new function to describe
an external image.
Also make `ExternalImageVulkanAndroid` and
`getExternalImageMetadata` protected, so only the
backend has access to it.
Move the files out of that directory for consistency. (Should have
never created the directory in the first place).
Also did some small clean-ups of removing old comments and no
longer needed includes.
* Materials can now specify a shadow strength factor
Materials have a new property: shadowStrength that can be used to
attenuate all shadows received by this material. e.g.:
```
void material(inout MaterialInputs material) {
prepareMaterial(material);
material. shadowStrength = 0.1;
}
```
FIXES=[391663042]
Co-authored-by: Powei Feng <powei@google.com>
---------
Co-authored-by: Powei Feng <powei@google.com>
This introduces two new methods to `ToneMapper`: `isOneDimensional()` and
`isLDR()`. `ColorGrading` references these values along with other parameters
passed to the builder to determine if we can get away with only generating a
one-dimensional LUT. Meanwhile, `PostProcessManager` takes care of setting the
new spec constants and uniforms for `colorGrading.mat` and
`colorGradingAsSubpass.mat`.