Merge pull request #107119 from DarioSamo/explicit-fp16
Optimize Mobile renderer by using FP16 explicitly.
This commit is contained in:
@ -5580,7 +5580,7 @@ uint64_t RenderingDeviceDriverD3D12::api_trait_get(ApiTrait p_trait) {
|
||||
|
||||
bool RenderingDeviceDriverD3D12::has_feature(Features p_feature) {
|
||||
switch (p_feature) {
|
||||
case SUPPORTS_FSR_HALF_FLOAT:
|
||||
case SUPPORTS_HALF_FLOAT:
|
||||
return shader_capabilities.native_16bit_ops && storage_buffer_capabilities.storage_buffer_16_bit_access_is_supported;
|
||||
case SUPPORTS_FRAGMENT_SHADER_WITH_ONLY_SIDE_EFFECTS:
|
||||
return true;
|
||||
|
||||
@ -2725,7 +2725,7 @@ uint64_t RenderingDeviceDriverMetal::api_trait_get(ApiTrait p_trait) {
|
||||
|
||||
bool RenderingDeviceDriverMetal::has_feature(Features p_feature) {
|
||||
switch (p_feature) {
|
||||
case SUPPORTS_FSR_HALF_FLOAT:
|
||||
case SUPPORTS_HALF_FLOAT:
|
||||
return true;
|
||||
case SUPPORTS_FRAGMENT_SHADER_WITH_ONLY_SIDE_EFFECTS:
|
||||
return true;
|
||||
|
||||
@ -5888,7 +5888,7 @@ uint64_t RenderingDeviceDriverVulkan::api_trait_get(ApiTrait p_trait) {
|
||||
|
||||
bool RenderingDeviceDriverVulkan::has_feature(Features p_feature) {
|
||||
switch (p_feature) {
|
||||
case SUPPORTS_FSR_HALF_FLOAT:
|
||||
case SUPPORTS_HALF_FLOAT:
|
||||
return shader_capabilities.shader_float16_is_supported && physical_device_features.shaderInt16 && storage_buffer_capabilities.storage_buffer_16_bit_access_is_supported;
|
||||
case SUPPORTS_FRAGMENT_SHADER_WITH_ONLY_SIDE_EFFECTS:
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user