diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index a3924c09699..961bda64d29 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -2671,6 +2671,13 @@ void CDECL wined3d_device_set_hull_shader(struct wined3d_device *device, struct wined3d_shader_decref(prev); } +struct wined3d_shader * CDECL wined3d_device_get_hull_shader(const struct wined3d_device *device) +{ + TRACE("device %p.\n", device); + + return device->state.shader[WINED3D_SHADER_TYPE_HULL]; +} + void CDECL wined3d_device_set_domain_shader(struct wined3d_device *device, struct wined3d_shader *shader) { struct wined3d_shader *prev; diff --git a/dlls/wined3d/wined3d.spec b/dlls/wined3d/wined3d.spec index 33310666b5a..e5edcb4c1c6 100644 --- a/dlls/wined3d/wined3d.spec +++ b/dlls/wined3d/wined3d.spec @@ -64,6 +64,7 @@ @ cdecl wined3d_device_get_gs_cb(ptr long) @ cdecl wined3d_device_get_gs_resource_view(ptr long) @ cdecl wined3d_device_get_gs_sampler(ptr long) +@ cdecl wined3d_device_get_hull_shader(ptr) @ cdecl wined3d_device_get_index_buffer(ptr ptr ptr) @ cdecl wined3d_device_get_light(ptr long ptr) @ cdecl wined3d_device_get_light_enable(ptr long ptr) diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h index c2729fb47e0..673308764d8 100644 --- a/include/wine/wined3d.h +++ b/include/wine/wined3d.h @@ -2203,6 +2203,7 @@ struct wined3d_buffer * __cdecl wined3d_device_get_gs_cb(const struct wined3d_de struct wined3d_shader_resource_view * __cdecl wined3d_device_get_gs_resource_view(const struct wined3d_device *device, UINT idx); struct wined3d_sampler * __cdecl wined3d_device_get_gs_sampler(const struct wined3d_device *device, UINT idx); +struct wined3d_shader * __cdecl wined3d_device_get_hull_shader(const struct wined3d_device *device); struct wined3d_buffer * __cdecl wined3d_device_get_index_buffer(const struct wined3d_device *device, enum wined3d_format_id *format, unsigned int *offset); HRESULT __cdecl wined3d_device_get_light(const struct wined3d_device *device,