mirror of
https://github.com/godotengine/godot.git
synced 2025-12-08 06:09:55 +00:00
Forbid passing multiview sampler to the custom function in shaders
This commit is contained in:
parent
6cde3fac32
commit
94831c7209
16 changed files with 50 additions and 21 deletions
|
|
@ -198,7 +198,11 @@ void RasterizerGLES3::finalize() {
|
|||
memdelete(config);
|
||||
}
|
||||
|
||||
RasterizerGLES3 *RasterizerGLES3::singleton = nullptr;
|
||||
|
||||
RasterizerGLES3::RasterizerGLES3() {
|
||||
singleton = this;
|
||||
|
||||
#ifdef GLAD_ENABLED
|
||||
if (!gladLoaderLoadGL()) {
|
||||
ERR_PRINT("Error initializing GLAD");
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@ protected:
|
|||
GLES3::CopyEffects *copy_effects = nullptr;
|
||||
RasterizerCanvasGLES3 *canvas = nullptr;
|
||||
RasterizerSceneGLES3 *scene = nullptr;
|
||||
static RasterizerGLES3 *singleton;
|
||||
|
||||
void _blit_render_target_to_screen(RID p_render_target, DisplayServer::WindowID p_screen, const Rect2 &p_screen_rect, uint32_t p_layer, bool p_first = true);
|
||||
|
||||
|
|
@ -107,6 +108,7 @@ public:
|
|||
_ALWAYS_INLINE_ double get_frame_delta_time() const { return delta; }
|
||||
_ALWAYS_INLINE_ double get_total_time() const { return time_total; }
|
||||
|
||||
static RasterizerGLES3 *get_singleton() { return singleton; }
|
||||
RasterizerGLES3();
|
||||
~RasterizerGLES3();
|
||||
};
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@
|
|||
#include "texture_storage.h"
|
||||
|
||||
#include "drivers/gles3/rasterizer_canvas_gles3.h"
|
||||
#include "drivers/gles3/rasterizer_gles3.h"
|
||||
|
||||
using namespace GLES3;
|
||||
|
||||
|
|
@ -1721,7 +1722,7 @@ MaterialStorage::MaterialStorage() {
|
|||
actions.default_filter = ShaderLanguage::FILTER_LINEAR_MIPMAP;
|
||||
actions.default_repeat = ShaderLanguage::REPEAT_ENABLE;
|
||||
|
||||
actions.check_multiview_samplers = true;
|
||||
actions.check_multiview_samplers = RasterizerGLES3::get_singleton()->is_xr_enabled();
|
||||
actions.global_buffer_array_variable = "global_shader_uniforms";
|
||||
|
||||
shaders.compiler_scene.initialize(actions);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue