Commit Graph

112 Commits

Author SHA1 Message Date
Henri Verbeet 5d470a6e7f wined3d: Pass GL_SYNC_FLUSH_COMMANDS_BIT to glClientWaitSync() if WINED3DGETDATA_FLUSH was specified.
Otherwise the application may keep spinning on wined3d_query_get_data() in
case the query wasn't submitted to the GPU yet when wined3d_query_get_data()
was called. This issue was exposed by commit
70889d6866. Note that this won't fix the issue
if the query was created in a different GL context.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-04 11:11:21 +01:00
Józef Kucia 6fbb93a3a1 wined3d: Use glGetQueryObjectui64v() for occlusion queries when available.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-22 16:34:44 +01:00
Józef Kucia c0fb3fb9e1 wined3d: Increase data size for occlusion queries to 8 bytes.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-22 16:34:36 +01:00
Henri Verbeet 7cda73e818 wined3d: Issue queries through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 20:17:52 +09:00
Henri Verbeet 18d60012e8 wined3d: Use the context's gl_info in wined3d_timestamp_query_ops_issue().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 20:17:50 +09:00
Henri Verbeet 92e9f4401d wined3d: Unify the query issue() implementations.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:13 +09:00
Henri Verbeet 70889d6866 wined3d: Unify the query get_data() implementations.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:12 +09:00
Henri Verbeet b1861cb86c wined3d: Introduce a separate function for creating timestamp disjoint queries.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-22 11:51:30 +09:00
Henri Verbeet 654e960e34 wined3d: Use a single allocation for timestamp queries.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-22 11:51:28 +09:00
Henri Verbeet 51c7df4f37 wined3d: Use a single allocation for occlusion queries.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-22 11:51:27 +09:00
Henri Verbeet fac012f2e1 wined3d: Use a single allocation for event queries.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-22 11:51:25 +09:00
Henri Verbeet be2908ed07 wined3d: Get rid of redundant ARB_timer_query checks.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-22 11:51:23 +09:00
Henri Verbeet a02c7ce751 wined3d: Get rid of redundant ARB_occlusion_query checks.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:07 +09:00
Henri Verbeet d18ff87af9 wined3d: Fail event query creation when event queries are not supported.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:07 +09:00
Henri Verbeet 0a5e205c06 wined3d: Get rid of redundant NULL checks for event query "extendedData".
If creation succeeded this is non-NULL.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:07 +09:00
Henri Verbeet 97eb359588 wined3d: Send query destruction through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:10:05 +09:00
Henri Verbeet d6e2f650d5 wined3d: Store the context's current rendertarget as a texture and sub-resource index.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 11:54:13 +09:00
Andrey Gusev 3c8635c8d7 wined3d: TRACE fixes. 2015-10-01 00:00:46 +09:00
Matteo Bruni 4b35cf730f wined3d: Fix the TIMESTAMP_DISJOINT query.
Spotted by Patrick Rudolph.
2015-05-05 18:51:10 +09:00
Matteo Bruni 9defaa53a1 wined3d: Use the core version of the asynchronous queries functions. 2015-02-02 22:39:05 +09:00
Henri Verbeet a3daed9604 d3d10core: Implement d3d10_device_GetPredication(). 2014-09-19 10:49:24 +02:00
Matteo Bruni b42fe709d6 wined3d: Validate and handle query size parameter. 2014-06-16 13:56:35 +02:00
Matteo Bruni a1784d9ed9 wined3d: Add support for timestamp queries. 2014-04-17 13:53:00 +02:00
Michael Stefaniuc 50a9fb579c wined3d: Remove ERR() on HeapAlloc failure for small sizes known at compile time. 2013-02-06 09:04:41 +01:00
Henri Verbeet 78984cf46c wined3d: Get rid of ENTER_GL / LEAVE_GL. 2012-12-11 12:03:39 +01:00
Henri Verbeet 54976a033b wined3d: Use a slightly shorter timeout in wined3d_event_query_finish(). 2012-08-20 11:01:15 +02:00
Francois Gouget 19ba80e7c2 wined3d: We must include Wine's port.h before using NAN. 2012-06-01 17:41:52 +02:00
Henri Verbeet ae2e5d65ff wined3d: Get rid of the WINED3DQUERYTYPE typedef. 2012-01-18 12:37:38 +01:00
Henri Verbeet f8e7b1e80c wined3d: Make the device parameter to wined3d_event_query_issue() const. 2011-10-31 16:46:20 +01:00
Henri Verbeet 76b5b8a67b wined3d: Make the device parameter to wined3d_event_query_finish() const. 2011-10-31 16:46:20 +01:00
Henri Verbeet eebad6a17a wined3d: Make the device parameter to wined3d_event_query_test() const. 2011-10-27 19:34:23 +02:00
Henri Verbeet 6ffd066834 wined3d: Make the query parameter to wined3d_event_query_finish() const. 2011-07-19 14:06:05 +02:00
Henri Verbeet 2e636aae29 wined3d: Make the query parameter to wined3d_event_query_test() const. 2011-07-19 14:06:03 +02:00
Henri Verbeet b1664a2c85 wined3d: Get rid of some IWineD3D* references. 2011-07-04 13:44:41 +02:00
Henri Verbeet 0e0e5c3e38 wined3d: Get rid of the IWineD3DDevice typedefs. 2011-05-17 10:06:23 +02:00
Henri Verbeet 00a5f38595 wined3d: Remove object creation methods from the IWineD3DDevice interface. 2011-05-11 14:56:48 +02:00
Francois Gouget 6c8c68f7b6 wined3d: Make wined3d_event_query_test() and resource_get_type() static. 2011-05-03 14:38:06 +02:00
Henri Verbeet be378c6529 wined3d: Decrement the refcount in wined3d_query_decref(). 2011-04-14 17:13:57 +02:00
Henri Verbeet 14c3387fc2 wined3d: Get rid of the IWineD3DQuery typedefs. 2011-02-04 15:25:32 +01:00
Henri Verbeet a5fe3610ad wined3d: Remove COM from the query implementation. 2011-02-04 15:25:32 +01:00
Henri Verbeet 831a29d250 wined3d: Use an internal call table for query operations. 2011-02-04 15:25:31 +01:00
Henri Verbeet 03f7a2d88e wined3d: Get rid of the remaining "Flags". 2010-11-23 13:15:36 +01:00
Henri Verbeet b68d257710 wined3d: Get rid of redundant comparisons against NULL / 0. 2010-09-14 09:43:33 -05:00
Henri Verbeet 7c675b522a wined3d: Queries don't need parents. 2010-09-01 12:40:08 +02:00
Henri Verbeet e8ac9bbd7f wined3d: Get rid of GLINFO_LOCATION. 2010-05-25 13:29:00 +02:00
Henri Verbeet 49e076eabd wined3d: Separate context acquisition and state application. 2010-05-04 13:14:59 +02:00
Henri Verbeet 6b34b8e6d1 wined3d: Simply pass an IWineD3DSurfaceImpl pointer to context_acquire(). 2010-04-22 11:28:17 +02:00
Henri Verbeet 1c403e44b5 wined3d: Store the current render target as an IWineD3DSurfaceImpl pointer in the context. 2010-04-22 11:28:12 +02:00
Henri Verbeet 2533860114 wined3d: Initialization functions don't allocate. 2010-03-30 14:49:31 +02:00
Stefan Dösinger 1181762f99 wined3d: Implement manual buffer fencing. 2010-03-23 12:31:15 +01:00