diff --git a/patches/wined3d-bindless-texture/0001-wined3d-Use-bindless-textures-for-GLSL-shaders.patch b/patches/wined3d-bindless-texture/0001-wined3d-Use-bindless-textures-for-GLSL-shaders.patch index 40289a01..0038c5b2 100644 --- a/patches/wined3d-bindless-texture/0001-wined3d-Use-bindless-textures-for-GLSL-shaders.patch +++ b/patches/wined3d-bindless-texture/0001-wined3d-Use-bindless-textures-for-GLSL-shaders.patch @@ -1,4 +1,4 @@ -From e7fcc9144f7244b87d44062263791350290f39b8 Mon Sep 17 00:00:00 2001 +From 978c4aaa20278ef16009351e1f65ec543df4aefa Mon Sep 17 00:00:00 2001 From: Andrew Wesie Date: Tue, 2 Oct 2018 23:28:01 -0500 Subject: [PATCH] wined3d: Use bindless textures for GLSL shaders. @@ -85,10 +85,10 @@ index a8c5160a5b3..3cf56c321d1 100644 &shader->reg_maps.shader_version, &base, &count); diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c -index ca3f9394342..d31dc4d9ff9 100644 +index 496d1038f55..d6e91c47229 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c -@@ -578,6 +578,59 @@ void wined3d_device_destroy_default_samplers(struct wined3d_device *device) +@@ -579,6 +579,59 @@ void wined3d_device_destroy_default_samplers(struct wined3d_device *device) device->null_sampler = NULL; } @@ -148,7 +148,7 @@ index ca3f9394342..d31dc4d9ff9 100644 static bool wined3d_null_image_vk_init(struct wined3d_image_vk *image, struct wined3d_context_vk *context_vk, VkCommandBuffer vk_command_buffer, VkImageType type, unsigned int layer_count, unsigned int sample_count) { -@@ -1288,6 +1341,7 @@ void wined3d_device_gl_create_primary_opengl_context_cs(void *object) +@@ -1289,6 +1342,7 @@ void wined3d_device_gl_create_primary_opengl_context_cs(void *object) wined3d_device_gl_create_dummy_textures(device_gl, context_gl); wined3d_device_create_default_samplers(device, context); @@ -328,10 +328,10 @@ index 3d60af16359..2d3614f67d5 100644 }; diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c -index 32923349c6b..d422d6027cd 100644 +index 78b1f52221c..8a0d9031d67 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c -@@ -1258,7 +1258,7 @@ void wined3d_gl_texture_swizzle_from_color_fixup(GLint swizzle[4], struct color_ +@@ -1259,7 +1259,7 @@ void wined3d_gl_texture_swizzle_from_color_fixup(GLint swizzle[4], struct color_ } /* Context activation is done by the caller. */ @@ -340,7 +340,7 @@ index 32923349c6b..d422d6027cd 100644 struct wined3d_context_gl *context_gl, BOOL srgb) { const struct wined3d_format *format = texture_gl->t.resource.format; -@@ -1282,10 +1282,7 @@ void wined3d_texture_gl_bind(struct wined3d_texture_gl *texture_gl, +@@ -1283,10 +1283,7 @@ void wined3d_texture_gl_bind(struct wined3d_texture_gl *texture_gl, target = texture_gl->target; if (gl_tex->name) @@ -352,7 +352,7 @@ index 32923349c6b..d422d6027cd 100644 gl_info->gl_ops.gl.p_glGenTextures(1, &gl_tex->name); checkGLcall("glGenTextures"); -@@ -1294,7 +1291,7 @@ void wined3d_texture_gl_bind(struct wined3d_texture_gl *texture_gl, +@@ -1295,7 +1292,7 @@ void wined3d_texture_gl_bind(struct wined3d_texture_gl *texture_gl, if (!gl_tex->name) { ERR("Failed to generate a texture name.\n"); @@ -361,7 +361,7 @@ index 32923349c6b..d422d6027cd 100644 } /* Initialise the state of the texture object to the OpenGL defaults, not -@@ -1378,6 +1375,15 @@ void wined3d_texture_gl_bind(struct wined3d_texture_gl *texture_gl, +@@ -1379,6 +1376,15 @@ void wined3d_texture_gl_bind(struct wined3d_texture_gl *texture_gl, gl_info->gl_ops.gl.p_glTexParameteriv(target, GL_TEXTURE_SWIZZLE_RGBA, swizzle); checkGLcall("set format swizzle"); } @@ -378,10 +378,10 @@ index 32923349c6b..d422d6027cd 100644 /* Context activation is done by the caller. */ diff --git a/dlls/wined3d/view.c b/dlls/wined3d/view.c -index a95ff13410f..eedcf94377d 100644 +index d318318d2b3..5f4c7684a7e 100644 --- a/dlls/wined3d/view.c +++ b/dlls/wined3d/view.c -@@ -1259,6 +1259,36 @@ void wined3d_shader_resource_view_gl_bind(struct wined3d_shader_resource_view_gl +@@ -1260,6 +1260,36 @@ void wined3d_shader_resource_view_gl_bind(struct wined3d_shader_resource_view_gl wined3d_sampler_gl_bind(sampler_gl, unit, texture_gl, context_gl); } @@ -431,18 +431,18 @@ index 75c4cd732ab..ccc1ce2f0ff 100644 ARB_BUFFER_STORAGE, ARB_CLEAR_BUFFER_OBJECT, diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h -index 07a9c7978a3..70c5b9f4e1e 100644 +index d5e4081d37f..af016db240a 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h -@@ -114,6 +114,7 @@ struct wined3d_fragment_pipe_ops; +@@ -113,6 +113,7 @@ static inline const char *wined3d_get_line(const char **ptr, const char *end) + struct wined3d_fragment_pipe_ops; struct wined3d_adapter; struct wined3d_context; - struct wined3d_context_vk; +struct wined3d_context_gl; struct wined3d_gl_info; struct wined3d_state; struct wined3d_swapchain_gl; -@@ -1610,6 +1611,8 @@ struct wined3d_shader_backend_ops +@@ -1609,6 +1610,8 @@ struct wined3d_shader_backend_ops void (*shader_get_caps)(const struct wined3d_adapter *adapter, struct shader_caps *caps); BOOL (*shader_color_fixup_supported)(struct color_fixup_desc fixup); BOOL (*shader_has_ffp_proj_control)(void *shader_priv); @@ -451,7 +451,7 @@ index 07a9c7978a3..70c5b9f4e1e 100644 uint64_t (*shader_compile)(struct wined3d_context *context, const struct wined3d_shader_desc *shader_desc, enum wined3d_shader_type shader_type); }; -@@ -3525,6 +3528,21 @@ struct wined3d_dummy_textures +@@ -3524,6 +3527,21 @@ struct wined3d_dummy_textures GLuint tex_2d_ms_array; }; @@ -473,7 +473,7 @@ index 07a9c7978a3..70c5b9f4e1e 100644 #define WINED3D_UNMAPPED_STAGE ~0u /* Multithreaded flag. Removed from the public header to signal that -@@ -3600,6 +3618,9 @@ struct wined3d_device +@@ -3599,6 +3617,9 @@ struct wined3d_device struct wined3d_sampler *default_sampler; struct wined3d_sampler *null_sampler; @@ -483,7 +483,7 @@ index 07a9c7978a3..70c5b9f4e1e 100644 /* Command stream */ struct wined3d_cs *cs; -@@ -4178,6 +4199,8 @@ void wined3d_texture_download_from_texture(struct wined3d_texture *dst_texture, +@@ -4177,6 +4198,8 @@ void wined3d_texture_download_from_texture(struct wined3d_texture *dst_texture, void wined3d_texture_get_bo_address(const struct wined3d_texture *texture, unsigned int sub_resource_idx, struct wined3d_bo_address *data, uint32_t location) DECLSPEC_HIDDEN; GLenum wined3d_texture_get_gl_buffer(const struct wined3d_texture *texture) DECLSPEC_HIDDEN; @@ -492,7 +492,7 @@ index 07a9c7978a3..70c5b9f4e1e 100644 void wined3d_texture_invalidate_location(struct wined3d_texture *texture, unsigned int sub_resource_idx, uint32_t location) DECLSPEC_HIDDEN; void wined3d_texture_load(struct wined3d_texture *texture, -@@ -4890,6 +4913,8 @@ HRESULT wined3d_shader_resource_view_gl_init(struct wined3d_shader_resource_view +@@ -4889,6 +4912,8 @@ HRESULT wined3d_shader_resource_view_gl_init(struct wined3d_shader_resource_view void *parent, const struct wined3d_parent_ops *parent_ops) DECLSPEC_HIDDEN; void wined3d_shader_resource_view_gl_update(struct wined3d_shader_resource_view_gl *srv_gl, struct wined3d_context_gl *context_gl) DECLSPEC_HIDDEN; diff --git a/staging/upstream-commit b/staging/upstream-commit index 1216141b..5fc79663 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -94d61d1b280d0ef15474c0cf44f534d5d44eba1f +2238658e2f87506c9ccb67de0376f3e3920550db