Ken Thomases
4c4552c5a1
wined3d: Restore the pixel format of the window whose pixel format was actually changed.
2014-02-22 08:41:55 -06:00
Ken Thomases
b8569d2f30
wined3d: Make context_update_window() just mark the GL context as needing to be set rather than setting it.
2014-02-22 08:41:51 -06:00
Ken Thomases
baa85a097a
wined3d: Use a separate flag to track if the GL context needs to be made current.
...
The new needs_set flag can be cleared after it's been heeded whereas restore_ctx
must not be cleared until the context has been released back to level 0.
2014-02-22 08:41:47 -06:00
Ken Thomases
2d1e67ee68
wined3d: Remove redundant call to context_set_pixel_format() from context_update_window().
...
It calls context_set_gl_context() just after and that starts with a call to
context_set_pixel_format(). Also, context_update_window() didn't do the
right thing (fall back to swapchain backup DC) if context_set_pixel_format()
fails.
2014-02-22 08:41:42 -06:00
Ken Thomases
088dd7289c
wined3d: Call context_enter() before context_update_window() so it records the proper restore state.
2014-02-22 08:41:38 -06:00
Ken Thomases
59226e36b7
wined3d: Don't clear the GL context if it's not the one being destroyed by context_destroy_gl_resources().
...
The previous code clears the GL context if the context being destroyed is
not valid, even though the current one is some arbitrary, unrelated context.
2014-02-06 17:08:09 +01:00
Stefan Dösinger
b81e560531
wined3d: Migrate surfaces to the new location flags.
2014-01-17 18:10:10 +01:00
Henri Verbeet
f6b5dc246a
wined3d: Get rid of the WINED3DSRGB enum.
2013-11-22 11:37:29 +01:00
Henri Verbeet
7427b72250
wined3d: Get rid of surface_internal_preload().
2013-11-22 11:37:24 +01:00
Henri Verbeet
e0beab8b81
wined3d: Merge texture2d_preload() and texture3d_preload() into wined3d_texture_load().
2013-11-22 11:37:20 +01:00
Stefan Dösinger
047ce3af6e
wined3d: Remove partial surface update support.
...
This has only ever worked for render targets, and only through the
glDrawPixels codepath, which was removed long ago.
2013-11-20 16:54:39 +01:00
Henri Verbeet
7e8897b7b8
wined3d: Get rid of the redundant texture_name and texture_name_srgb fields in struct wined3d_surface.
2013-11-20 11:28:22 +01:00
Henri Verbeet
f4aab54ca1
wined3d: Mark the context valid if making it current on the "backup" window worked.
2013-11-04 11:05:46 +01:00
Henri Verbeet
3ad8989614
wined3d: Introduce a function for safely releasing a DC.
2013-11-04 11:05:43 +01:00
Henri Verbeet
c228ffbaf0
wined3d: Unify shader binding points.
2013-10-10 10:44:53 +02:00
Henri Verbeet
8644b62726
wined3d: Move lowest_disabled_stage to the context.
2013-10-07 14:44:35 +02:00
Stefan Dösinger
59e0b841c7
wined3d: Move device_preload_textures into context.c.
2013-09-16 13:06:01 +02:00
Stefan Dösinger
112617f00b
wined3d: Move tex_unit_map and friends into the context.
2013-09-16 13:05:58 +02:00
Stefan Dösinger
f29c24f2de
wined3d: Pass the context to surface_internal_preload.
2013-09-16 13:05:55 +02:00
Stefan Dösinger
fe44be5fde
wined3d: Pass the context to the internal texture_preload function.
2013-09-16 13:05:52 +02:00
Stefan Dösinger
b8eb171b6b
wined3d: Explicitly pass the state information to buffer_internal_preload.
2013-09-12 17:48:20 +02:00
Stefan Dösinger
d8c43aabf7
wined3d: Move the decoded stream info into the context.
2013-09-12 17:48:14 +02:00
Henri Verbeet
b62915dabb
wined3d: Replace surface_modify_location(surface, location, FALSE) calls with surface_invalidate_location().
2013-09-10 11:09:51 +02:00
Stefan Dösinger
cd203b38a6
wined3d: Pass the context to the main buffer preload function.
2013-09-09 22:10:01 +02:00
Stefan Dösinger
87f931dc64
wined3d: Only invalidate STATE_INDEXBUFFER for the current context in buffer_get_sysmem().
2013-09-09 22:10:00 +02:00
Stefan Dösinger
1cf192172e
wined3d: Only invalidate STATE_INDEXBUFFER for the current context in buffer_create_buffer_object().
2013-09-09 22:10:00 +02:00
Henri Verbeet
b5e0c5d052
wined3d: Get rid of some leftover comments referring to the GL lock.
2013-09-02 18:02:26 +02:00
Henri Verbeet
53f747de1b
wined3d: Move the WINED3D_MAX_FBO_ENTRIES constant to context.c.
2013-08-30 11:18:46 +02:00
Henri Verbeet
b85c2a74bb
wined3d: Replace the "stateBlock" wined3d_device field with a wined3d_state structure.
2013-08-27 11:50:53 +02:00
Henri Verbeet
74faebd68d
wined3d: Store the current GLSL program per-context.
2013-08-23 10:41:28 +02:00
Henri Verbeet
62859daf0b
wined3d: Avoid looking up shaders for shader stages that didn't change.
2013-08-21 12:13:56 +02:00
Stefan Dösinger
a4f009d847
wined3d: Keep GL_UNPACK_CLIENT_STORAGE_APPLE off by default.
...
This is cleaner than the other way around and avoids side effects in
code that wasn't written with client storage in mind. Contrary to the
original intention, it also means fewer client storage toggle calls.
2013-08-19 18:07:45 +02:00
Henri Verbeet
37d1e8b79c
wined3d: Try to avoid redundant constant updates.
...
This gives a minor performance improvement. For example, in 3DMark03 Game Test
1 this gives about a 4% improvement, in the Counter Strike: Source stress test
it's about 1%. (NVIDIA GF9600M, Intel T9550, 1024x768).
2013-08-16 11:55:24 +02:00
Henri Verbeet
a3f59cf618
wined3d: Allow textures as swapchain surfaces.
2013-06-03 11:30:43 +02:00
Henri Verbeet
b35045ba25
wined3d: Don't create FBOs in context_bind_fbo().
...
We can just do this in context_create_fbo_entry() now.
2013-05-27 19:28:52 +02:00
Henri Verbeet
7ca6839c94
wined3d: Also clear context->current_fbo in context_apply_blit_state().
...
The draw buffer handling code depends on this being current. This fixes a bug
exposed by commit 075fa6547c
.
2013-05-27 19:28:47 +02:00
Stefan Dösinger
6fce4d4547
wined3d: Pass the state and private data to shader_select.
2013-05-14 18:37:08 +02:00
Stefan Dösinger
47f385adf0
wined3d: Add a separate function for disabling shaders.
2013-05-14 18:37:04 +02:00
Stefan Dösinger
036a62a245
wined3d: Explicitly pass the state to shader_load_constants.
2013-05-14 18:36:59 +02:00
Matteo Bruni
58dc0346d6
wined3d: Remove some, now unnecessary, glReadBuffer(GL_NONE) calls.
...
This reverts parts of e4efcea223
and
8e12b2e61e
.
2013-04-26 16:28:22 +02:00
Matteo Bruni
bda63dd4a9
wined3d: Set GL_NONE for glReadBuffer / glDrawBuffer on FBO initialization.
2013-04-26 16:28:19 +02:00
Stefan Dösinger
ac99d53991
wined3d: Move valid_rt_mask to wined3d_d3d_info.
2013-04-25 20:25:10 +02:00
Stefan Dösinger
16e862ba9d
wined3d: Add a new structure for d3d limits and other info.
2013-04-25 20:25:07 +02:00
Henri Verbeet
c756496326
wined3d: Rename the device "strided_streams" field to "stream_info".
...
The "strided" in there is mostly historic, it hasn't really been accurate for
a while now.
2013-04-22 15:26:11 +02:00
Henri Verbeet
ee6d17cd54
wined3d: Add support for GL_ARB_debug_output.
2013-04-19 10:43:40 +02:00
Henri Verbeet
5115f55eeb
wined3d: Use WGL_ARB_create_context when available.
2013-04-19 10:43:37 +02:00
Matteo Bruni
075fa6547c
wined3d: Avoid redundant glDrawBuffer() calls.
2013-04-10 15:46:26 +02:00
Matteo Bruni
46fa0448d9
wined3d: Remove useless glClearxxx calls.
2013-04-10 15:46:14 +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
Stefan Dösinger
1a3f741643
wined3d: Remove draw_primitive_strided.
2013-01-25 11:30:33 +01:00