mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Move check for sky cubemap array back into the SkyRD initializer so it is set before being used.
Previously it was moved out of this function becuase we relied on RenderingServer::get_video_adapter_name which wasn't available yet. However, that was unnecessary since it is just a wrapper around RenderingDevice::get_device_name() which is available.
This commit is contained in:
parent
adb2ec043e
commit
fc951855ed
3 changed files with 7 additions and 17 deletions
|
@ -727,6 +727,12 @@ SkyRD::SkyRD() {
|
|||
roughness_layers = GLOBAL_GET("rendering/reflections/sky_reflections/roughness_layers");
|
||||
sky_ggx_samples_quality = GLOBAL_GET("rendering/reflections/sky_reflections/ggx_samples");
|
||||
sky_use_cubemap_array = GLOBAL_GET("rendering/reflections/sky_reflections/texture_array_reflections");
|
||||
#if defined(MACOS_ENABLED) && defined(__x86_64__)
|
||||
if (OS::get_singleton()->get_current_rendering_driver_name() == "vulkan" && RenderingDevice::get_singleton()->get_device_name().contains("Intel")) {
|
||||
// Disable texture array reflections on macOS on Intel GPUs due to driver bugs.
|
||||
sky_use_cubemap_array = false;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void SkyRD::init() {
|
||||
|
@ -952,15 +958,6 @@ void SkyRD::set_texture_format(RD::DataFormat p_texture_format) {
|
|||
texture_format = p_texture_format;
|
||||
}
|
||||
|
||||
#if defined(MACOS_ENABLED) && defined(__x86_64__)
|
||||
void SkyRD::check_cubemap_array() {
|
||||
if (OS::get_singleton()->get_current_rendering_driver_name() == "vulkan" && RenderingServer::get_singleton()->get_video_adapter_name().contains("Intel")) {
|
||||
// Disable texture array reflections on macOS on Intel GPUs due to driver bugs.
|
||||
sky_use_cubemap_array = false;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
SkyRD::~SkyRD() {
|
||||
// cleanup anything created in init...
|
||||
RendererRD::MaterialStorage *material_storage = RendererRD::MaterialStorage::get_singleton();
|
||||
|
|
|
@ -281,9 +281,7 @@ public:
|
|||
|
||||
uint32_t sky_ggx_samples_quality;
|
||||
bool sky_use_cubemap_array;
|
||||
#if defined(MACOS_ENABLED) && defined(__x86_64__)
|
||||
void check_cubemap_array();
|
||||
#endif
|
||||
|
||||
Sky *dirty_sky_list = nullptr;
|
||||
mutable RID_Owner<Sky, true> sky_owner;
|
||||
int roughness_layers;
|
||||
|
|
|
@ -159,11 +159,6 @@ void RendererCompositorRD::initialize() {
|
|||
|
||||
blit.sampler = RD::get_singleton()->sampler_create(RD::SamplerState());
|
||||
}
|
||||
#if defined(MACOS_ENABLED) && defined(__x86_64__)
|
||||
if (scene) {
|
||||
scene->get_sky()->check_cubemap_array();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
uint64_t RendererCompositorRD::frame = 1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue