Henri Verbeet
d6b432b068
wined3d: Get rid of client_memory from wineD3DSurface_DIB.
2011-11-08 09:50:23 +01:00
Henri Verbeet
896aaa67ca
wined3d: Get rid of holdbitmap from wineD3DSurface_DIB.
2011-11-08 09:50:18 +01:00
Henri Verbeet
604d154002
wined3d: Only report a broken pitch in wined3d_surface_map().
...
We'd like the correct pitch for internal calls to wined3d_surface_get_pitch().
2011-11-08 09:50:13 +01:00
Stefan Dösinger
7eefed1410
wined3d: YUY2 and UYVY are block based.
2011-11-07 14:32:16 +01:00
Stefan Dösinger
7fd752047d
d3d9/tests: Test partial block locks.
2011-11-07 14:27:24 +01:00
Andrew Talbot
e0cd19d88d
wined3d: Remove extraneous braces from switch statements.
2011-11-07 11:54:25 +01:00
Henri Verbeet
a64271c07e
wined3d: Make the surface parameter to blit_shader.set_shader() const.
2011-11-07 11:32:47 +01:00
Henri Verbeet
12268879a2
wined3d: Make the surface parameter to upload_palette() const.
2011-11-07 11:32:42 +01:00
Henri Verbeet
35515e4669
wined3d: Remove surface_draw_overlay from wined3d_surface_ops.
2011-11-07 11:32:34 +01:00
Henri Verbeet
48b6050ca3
wined3d: Remove surface_preload from wined3d_surface_ops.
2011-11-07 11:32:28 +01:00
Andrew Talbot
a89584415b
wined3d: Remove unneeded address-of operators from array names.
2011-11-04 14:44:56 +01:00
Matteo Bruni
cc221b285b
wined3d: Recognize Northern Islands cards with AMD binary drivers.
2011-11-04 10:45:54 +01:00
Matteo Bruni
7b0ba5153f
wined3d: Test more thoroughly for post-pixelshader blending support, try on more texture formats.
2011-11-04 10:45:49 +01:00
Matteo Bruni
307579156f
wined3d: Add filtering flag to more texture formats.
2011-11-04 10:45:42 +01:00
Henri Verbeet
55d8063e67
wined3d: Make the shader parameter to shader_arb_generate_pshader() const.
2011-11-04 10:44:54 +01:00
Henri Verbeet
e3a105a626
wined3d: Make the shader parameter to shader_arb_generate_vshader() const.
2011-11-04 10:44:49 +01:00
Henri Verbeet
3a9001fbb6
wined3d: Make the shader parameter to init_output_registers() const.
2011-11-04 10:44:42 +01:00
Henri Verbeet
e718306255
wined3d: Make some parameters to shader_generate_arb_declarations() const.
2011-11-04 10:44:37 +01:00
Henri Verbeet
3f11631e75
wined3d: Merge surface_getdc() and gdi_surface_getdc().
2011-11-04 10:44:32 +01:00
Henri Verbeet
739dbab46e
wined3d: Add fallbacks for d3d9 and d3d10 cards in select_card_amd_mesa().
2011-11-04 10:44:19 +01:00
Henri Verbeet
3bfecd58d2
wined3d: Avoid a drawable -> texture transfer through sysmem in arbfp_blit_surface() with backbuffer ORM.
2011-11-04 10:44:14 +01:00
Claudio Fontana
485571539f
wined3d: Rename nVidia GTX560 to GTX560TI, add GTX560 with correct device id.
2011-11-03 17:42:58 +01:00
Stefan Dösinger
9b0adb406d
wined3d: Locking partial blocks is not allowed in DEFAULT pool resources.
2011-11-03 13:52:15 +01:00
Henri Verbeet
335a6ca78e
wined3d: Use wined3d_surface_blt() in swapchain_gl_present().
2011-11-03 13:00:50 +01:00
Henri Verbeet
0b3185665f
wined3d: Use wined3d_surface_blt() in wined3d_swapchain_get_front_buffer_data().
2011-11-03 13:00:45 +01:00
Henri Verbeet
c30ea3767c
wined3d: Use wined3d_surface_blt() in surface_upload_from_surface().
2011-11-03 13:00:40 +01:00
Henri Verbeet
78bd84cc12
wined3d: Make the shader parameter to shader_arb_load_constantsF() const.
2011-11-02 12:27:59 +01:00
Henri Verbeet
117af3a2b1
wined3d: Make the buffer parameter to buffer_sanitize_flags() const.
2011-11-02 12:27:55 +01:00
Henri Verbeet
27132a30f5
wined3d: Construct the non-rhw projection matrix directly in transform_projection().
2011-11-02 12:27:50 +01:00
Henri Verbeet
6e7f33a7f0
wined3d: Construct the rhw projection matrix directly in transform_projection().
2011-11-02 12:27:40 +01:00
Henri Verbeet
1c91b08220
wined3d: Construct the projection matrix directly in set_blit_dimension().
...
This saves a needless matrix multiplication and is actually more obvious than
the glOrtho() call.
2011-11-02 12:27:34 +01:00
Henri Verbeet
da64996159
wined3d: Make the buffer parameter to buffer_is_fully_dirty() const.
2011-10-31 23:53:04 +01:00
Henri Verbeet
b9b2288796
wined3d: Make the buffer parameter to buffer_is_dirty() const.
2011-10-31 23:53:02 +01:00
Henri Verbeet
b49e08aa8d
wined3d: Get rid of the local_constant typedef.
2011-10-31 23:52:59 +01:00
Henri Verbeet
fcf96b634a
wined3d: Create the DIB section for DDSCAPS_OWNDC surfaces on initialization.
2011-10-31 23:52:51 +01:00
Henri Verbeet
7de4df9fd9
wined3d: Get rid of the wined3d_surface_bltfast() export.
2011-10-31 23:52:47 +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
bf5ab0a199
wined3d: Make the device parameter to surface_blt_to_drawable() const.
2011-10-27 19:34:19 +02:00
Henri Verbeet
dbfe83baff
wined3d: Rename nCfgs to cfg_count.
2011-10-27 19:34:15 +02:00
Henri Verbeet
61550ff1de
wined3d: Use the correct pitch in surface_upload_data().
...
This fixes a regression introduced by commit
2da4f87a7e
.
2011-10-27 19:34:00 +02:00
Henri Verbeet
22d2d26ffc
wined3d: Make the device parameter to surface_blt_fbo() const.
2011-10-27 12:25:29 +02:00
Henri Verbeet
54dc38718b
wined3d: Make the device parameter to wined3d_surface_depth_blt_fbo() const.
2011-10-27 12:25:24 +02:00
Henri Verbeet
6a981239db
wined3d: Get rid of the unused palette9 wined3d_surface field.
2011-10-27 12:25:19 +02:00
Henri Verbeet
2f74d5052a
wined3d: Recognize Sumo/Llano in select_card_amd_mesa().
2011-10-27 12:25:00 +02:00
Matteo Bruni
095a9a6893
wined3d: Refuse to create a shader unsupported by the backend.
2011-10-26 12:41:35 +02:00
Matteo Bruni
5f2c6b3c82
wined3d: Enable SM4 support in the GLSL shader backend when possible.
2011-10-26 12:41:34 +02:00
Matteo Bruni
7254f5e661
wined3d: Return only the shader major version.
2011-10-26 12:41:34 +02:00
Henri Verbeet
7aac0159a9
wined3d: Move the ARB shader program constant handling to the backend where it belongs.
2011-10-26 12:41:33 +02:00
Henri Verbeet
89d0d3ffd8
wined3d: Get rid of the device parameter to context_setup_target().
2011-10-26 12:41:33 +02:00
Henri Verbeet
a42774f042
wined3d: Only check for sRGB attachability when needed in surface_load_texture().
2011-10-26 12:41:33 +02:00
Henri Verbeet
bc3c72f2cc
wined3d: Mark a format as sRGB attachable if the internal format is the same for RGB and sRGB.
2011-10-26 12:41:32 +02:00
Henri Verbeet
bab2a40f87
wined3d: Make the device parameter to context_apply_clear_state() const.
2011-10-25 16:57:24 +02:00
Henri Verbeet
9b42c657e4
wined3d: Make the device parameter to context_apply_blit_state() const.
2011-10-25 16:57:24 +02:00
Henri Verbeet
2da4f87a7e
wined3d: Upload directly from the source surface in wined3d_surface_blt(), if possible.
...
This avoids either loading sysmem surfaces into video memory (wasting GPU
memory) and then doing a blit on the GPU, or downloading GPU surfaces to
sysmem, doing a blit on the CPU, and likely uploading it again. This mostly
matters for ddraw and d3d8 applications, d3d9 already has to go through
wined3d_device_update_surface() to transfer data from sysmem surfaces to GPU
surfaces.
2011-10-25 16:57:23 +02:00
Henri Verbeet
284ba950ef
wined3d: Make the device parameter to SetupForBlit() const.
2011-10-24 11:16:47 +02:00
Henri Verbeet
96187a54a9
wined3d: Make the context parameter to bind_dummy_textures() const.
2011-10-24 11:16:44 +02:00
Henri Verbeet
e6101816a2
wined3d: Get rid of surface_gdi_cleanup().
...
It's effectively the same as surface_cleanup(). The GL objects that
surface_cleanup() destroys are never created for "GDI" surfaces.
2011-10-24 11:16:40 +02:00
Henri Verbeet
6e8273177a
wined3d: Reject multisampled readbacks in wined3d_surface_get_render_target_data().
2011-10-24 11:16:33 +02:00
Henri Verbeet
4229d865d2
wined3d: Only try to load surfaces from the drawable if the drawable is current in surface_load_sysmem().
2011-10-24 11:16:27 +02:00
Henri Verbeet
f28ba9007e
wined3d: Make the device parameter to context_choose_pixel_format() const.
2011-10-21 12:09:46 +02:00
Henri Verbeet
a2c754dde8
wined3d: Make the device parameter to wined3d_device_get_surface_from_dc() const.
2011-10-21 12:09:43 +02:00
Henri Verbeet
5f6dd5384c
wined3d: Move the cursor in wined3d_device_set_cursor_position().
2011-10-21 12:09:34 +02:00
Henri Verbeet
da32d34439
wined3d: Make the device parameter to wined3d_device_get_gamma_ramp() const.
2011-10-20 11:03:28 +02:00
Henri Verbeet
23ee1a451b
wined3d: Make the device parameter to wined3d_device_set_gamma_ramp() const.
2011-10-20 11:03:22 +02:00
Henri Verbeet
82f067f5cd
wined3d: Allow loading multisampled surfaces into sysmem.
2011-10-20 11:02:57 +02:00
Henri Verbeet
73723911aa
wined3d: Make the device parameter to wined3d_device_get_creation_parameters() const.
2011-10-19 12:24:43 +02:00
Henri Verbeet
d607586d62
wined3d: Make the present_parameters parameter to wined3d_device_reset() const.
2011-10-19 12:24:36 +02:00
Henri Verbeet
3042860478
wined3d: Detach any attached overlays on surface cleanup.
...
Spotted by Dan Kegel / Valgrind.
2011-10-19 12:23:47 +02:00
Henri Verbeet
6cc9a89c8a
wined3d: Make the device parameter to is_display_mode_supported() const.
2011-10-18 15:10:33 +02:00
Henri Verbeet
71640e00f9
wined3d: Make the device parameter to invalidate_active_texture() const.
2011-10-18 15:10:27 +02:00
Henri Verbeet
68e1484bec
wined3d: Mark default pool surfaces lost when they're unloaded.
2011-10-18 15:10:13 +02:00
Henri Verbeet
ca43c49968
wined3d: Keep surfaces in sysmem if they're both already there in wined3d_surface_blt().
...
The idea is to avoid bouncing surfaces between the CPU and GPU when doing both
locks and blits on a surface. This is mostly an issue for ddraw applications.
2011-10-18 15:10:06 +02:00
Marcus Meissner
f90d402610
wined3d: Fixed sizeof (Coverity).
2011-10-17 17:45:03 +02:00
Henri Verbeet
fcd1de2b09
wined3d: Make the device parameter to wined3d_device_get_depth_stencil() const.
2011-10-17 17:45:02 +02:00
Henri Verbeet
ebbd5ecf7c
wined3d: Make the device parameter to wined3d_device_get_render_target() const.
2011-10-17 17:45:02 +02:00
Henri Verbeet
25b1130b44
wined3d: Also restore the pixel format in context_restore_gl_context().
2011-10-17 17:45:02 +02:00
Henri Verbeet
cdc9aadf5c
wined3d: Don't try to access the swapchain of a destroyed context in context_set_gl_context().
2011-10-17 17:45:02 +02:00
Henri Verbeet
dfea2ab6f4
wined3d: Don't bother updating the context's window in context_destroy_gl_resources().
...
context_update_window() accesses the swapchain, which may not exist if this is
a destroyed context, and we don't do anything that needs displaying here
anyway.
2011-10-17 17:45:02 +02:00
Andrew Talbot
819225d98b
wined3d: Mark some fall-throughs in switch statements.
2011-10-14 13:12:28 +02:00
Henri Verbeet
a9fcaed610
wined3d: Make the device parameter to wined3d_device_get_npatch_mode() const.
2011-10-14 13:12:27 +02:00
Henri Verbeet
39f898b26a
wined3d: Make the device parameter to wined3d_device_get_raster_status() const.
2011-10-14 13:12:27 +02:00
Henri Verbeet
7ffa768e71
wined3d: Cleanup context_create() error handling a bit.
2011-10-14 13:12:27 +02:00
Henri Verbeet
67b097cd6e
wined3d: Get rid of the mostly unused "pfd" variable in context_create().
2011-10-14 13:12:27 +02:00
Matteo Bruni
35f7610630
wined3d: Remove an obsolete comment.
2011-10-13 19:57:19 +02:00
Austin English
aacbc7e2b7
wined3d: Recognize "Brian Paul" as a mesa card vendor.
2011-10-13 19:57:19 +02:00
Henri Verbeet
652d80d9d8
wined3d: Make the device parameter to wined3d_device_get_software_vertex_processing() const.
2011-10-11 19:43:41 +02:00
Henri Verbeet
dd2378cbf2
wined3d: Make the device parameter to wined3d_device_validate_device() const.
2011-10-11 19:43:38 +02:00
Henri Verbeet
229662fc46
wined3d: Make the device parameter to wined3d_device_get_front_buffer_data() const.
2011-10-11 19:43:35 +02:00
Stefan Dösinger
496b438ede
wined3d: Remove d3d8/9 palette support.
2011-10-11 13:37:49 +02:00
Henri Verbeet
39a8ed3a00
wined3d: Make the device parameter to wined3d_device_get_primitive_type() const.
2011-10-10 13:40:38 +02:00
Henri Verbeet
739a9d9805
wined3d: Return WINED3DERR_NOTFOUND if the render target is NULL in wined3d_device_get_render_target().
...
This is similar to how wined3d_device_get_depth_stencil() works.
2011-10-10 13:39:39 +02:00
Henri Verbeet
adf9e6120d
wined3d: Make the device parameter to wined3d_device_present() const.
2011-10-03 14:38:56 -05:00
Matteo Bruni
2a146448f4
wined3d: When creating a new shader, check shader type and version.
2011-09-26 17:57:48 +02:00
Henri Verbeet
013991e6e4
wined3d: Make the device parameter to wined3d_device_get_display_mode() const.
2011-09-22 09:39:16 +02:00
Henri Verbeet
72d75b65b7
wined3d: Make the device parameter to wined3d_device_get_device_caps() const.
2011-09-22 09:39:14 +02:00
Rico Schüller
ef62e41fca
wined3d: Fix spelling.
2011-09-21 11:35:43 +02:00
Henri Verbeet
5177a5f686
wined3d: Make the device parameter to wined3d_device_get_back_buffer() const.
2011-09-20 16:21:38 +02:00
Henri Verbeet
11323b4416
wined3d: Make the device parameter to wined3d_device_get_texture() const.
2011-09-20 16:21:38 +02:00
Henri Verbeet
5609f062d2
wined3d: Dump the WINEDDBLTFX structure in wined3d_surface_blt().
2011-09-20 16:21:38 +02:00
Henri Verbeet
ba69e7802a
wined3d: Make the device parameter to wined3d_device_get_texture_stage_state() const.
2011-09-19 17:56:05 +02:00
Henri Verbeet
fda48415ac
wined3d: Make the declaration parameter to wined3d_device_process_vertices() const.
2011-09-19 17:56:05 +02:00
Henri Verbeet
0ad7e98d24
wined3d: Make the device parameter to process_vertices_strided() const.
2011-09-16 17:23:08 +02:00
Henri Verbeet
a61fe27fb8
wined3d: Make the device parameter to wined3d_device_get_ps_consts_f() const.
2011-09-16 17:23:08 +02:00
Henri Verbeet
b9fcf71c71
ddraw: Use real flips.
2011-09-16 17:23:08 +02:00
Stefan Dösinger
eb79a26493
wined3d: Only the ARBfp fragement pipeline reads emulated clip coords.
2011-09-15 15:41:41 +02:00
Stefan Dösinger
9bcd58f312
wined3d: Disable range fog with per-pixel fog.
2011-09-15 15:41:41 +02:00
Henri Verbeet
73a4deb0b8
wined3d: Make the device parameter to wined3d_device_get_ps_consts_i() const.
2011-09-15 15:41:40 +02:00
Henri Verbeet
fc488f4949
wined3d: Make the device parameter to wined3d_device_get_ps_consts_b() const.
2011-09-15 15:41:40 +02:00
Henri Verbeet
8009a4947b
wined3d: Flush after surface updates.
...
This is similar to 5d1d07abcf
. We need to flush
to ensure resource updates are visible in other contexts, since otherwise GL
doesn't make any ordering guarantees between contexts.
2011-09-15 15:41:40 +02:00
Henri Verbeet
65064a09ce
wined3d: Make the device parameter to wined3d_device_get_pixel_shader() const.
2011-09-14 09:59:20 +02:00
Henri Verbeet
8a12e951e6
wined3d: Make the device parameter to device_unit_free_for_vs() const.
2011-09-14 09:59:18 +02:00
Henri Verbeet
c67ca538bb
wined3d: Make the device parameter to wined3d_device_get_vs_consts_f() const.
2011-09-13 09:19:57 +02:00
Henri Verbeet
4ba464bd4c
wined3d: Rename markTextureStagesDirty() to device_invalidate_texture_stage().
2011-09-13 09:19:53 +02:00
Henri Verbeet
66637ea35c
wined3d: Don't print the context recreation FIXME for FBO ORM.
...
With FBOs we can just render offscreen to an appropriate depth/stencil buffer.
2011-09-13 09:19:46 +02:00
Stefan Dösinger
efba48ccfb
wined3d: Don't load/unload unsupported texture coordinate attribs.
2011-09-12 10:09:48 +02:00
Stefan Dösinger
ec0ac720bf
wined3d: Make sure that lit doesn't return NaN.
2011-09-12 10:09:34 +02:00
Henri Verbeet
d7fa599974
wined3d: Make the device parameter to wined3d_device_get_vs_consts_i() const.
2011-09-12 10:09:07 +02:00
Henri Verbeet
098d30946d
wined3d: Make the device parameter to wined3d_device_get_vs_consts_b() const.
2011-09-12 10:09:03 +02:00
Matteo Bruni
53bb382706
wined3d: Report more vertex texture formats.
2011-09-09 13:33:58 +02:00
Henri Verbeet
5385e1b3df
wined3d: Make the device parameter to wined3d_device_get_vertex_shader() const.
2011-09-09 13:33:39 +02:00
Henri Verbeet
31906458da
wined3d: Make the device parameter to wined3d_device_get_vertex_declaration() const.
2011-09-09 13:33:36 +02:00
Henri Verbeet
bbb77cba74
wined3d: Add support for flipping compressed surfaces to surface_cpu_blt().
2011-09-09 13:33:33 +02:00
Henri Verbeet
5c57b53a6c
wined3d: Use the CPU blitter for blitting to converted surfaces.
2011-09-09 13:33:25 +02:00
Henri Verbeet
e82e1c2ac5
wined3d: Disable sRGB decoding in draw_textured_quad().
...
We're always supposed to draw the RGB texture here. sRGB decoding may be
enabled if sRGB decoding was enabled to last time the surface was used as a
texture, or if it was never used as a texture at all.
2011-09-09 13:33:22 +02:00
Gerald Pfeifer
0affcc3a7d
wined3d: Remove dead code (and variable) from wined3d_surface_flip. wined3d_surface_flip.
2011-09-08 20:08:06 +02:00
Henri Verbeet
20e9b3f13f
wined3d: Make the device parameter to wined3d_device_get_scissor_rect() const.
2011-09-08 11:11:27 +02:00
Henri Verbeet
919d3ab9e4
wined3d: Make the device parameter to wined3d_device_get_sampler_state() const.
2011-09-08 11:11:24 +02:00
Henri Verbeet
19da825b12
wined3d: Use draw_binding for the surface_modify_location() call in surface_unmap() as well.
2011-09-08 11:11:10 +02:00
Henri Verbeet
33f087c95d
wined3d: Make the device parameter to wined3d_device_get_render_state() const.
2011-09-07 11:12:52 +02:00
Henri Verbeet
b55dcfd35a
wined3d: Make the device parameter to wined3d_device_get_viewport() const.
2011-09-07 11:12:48 +02:00
Henri Verbeet
79c438b2f2
wined3d: Implement wined3d_surface_flip() as a blit.
...
This allows us to actually take the "override" parameter into account. Plain
back -> front flips will be detected in wined3d_surface_flip() and will still
be handled by wined3d_swapchain_present().
2011-09-07 11:12:17 +02:00
Henri Verbeet
cf010c563c
wined3d: Make the device parameter to wined3d_device_get_base_vertex_index() const.
2011-09-06 10:48:43 +02:00
Henri Verbeet
cb82e57290
wined3d: Make the device parameter to wined3d_device_get_index_buffer() const.
2011-09-06 10:48:41 +02:00
Henri Verbeet
1b9bc1a950
wined3d: Try doing a present in wined3d_surface_blt() instead of IWineD3DSurfaceImpl_BltOverride().
2011-09-06 10:48:36 +02:00
Henri Verbeet
b86d69de16
wined3d: Don't override the swapchain present interval in IWineD3DSurfaceImpl_BltOverride().
2011-09-06 10:48:31 +02:00
Henri Verbeet
9ae5d06e77
wined3d: Make the device parameter to wined3d_device_get_material() const.
2011-09-05 10:57:03 +02:00
Henri Verbeet
23b4be9155
wined3d: Make the device parameter to wined3d_device_get_clip_status() const.
2011-09-05 10:57:00 +02:00
Henri Verbeet
3346fc747c
wined3d: Get rid of the rect checks for present in IWineD3DSurfaceImpl_BltOverride().
2011-09-05 10:56:54 +02:00
Henri Verbeet
74b418c9e0
wined3d: Don't print the GLSL info log by default on fglrx.
2011-09-05 10:56:46 +02:00
Ričardas Barkauskas
9425e1be83
wined3d: Add support for Nvidia GT 555M.
2011-09-02 18:28:25 +02:00
Henri Verbeet
d23938de1e
wined3d: Make the device parameter to wined3d_device_get_clip_plane() const.
2011-09-02 10:09:08 +02:00
Henri Verbeet
3659d5d729
wined3d: Make the device parameter to wined3d_device_get_light_enable() const.
2011-09-02 10:09:06 +02:00
Henri Verbeet
ca69a23d52
wined3d: Get rid of some redundant else statements in IWineD3DSurfaceImpl_BltOverride().
2011-09-02 10:09:01 +02:00
Henri Verbeet
179d6f8087
wined3d: Remove a redundant compare in IWineD3DSurfaceImpl_BltOverride().
...
If the source surface isn't on the destination swapchain it can't be a
backbuffer there either.
2011-09-02 10:08:57 +02:00
Henri Verbeet
cc10600b52
wined3d: Print a FIXME for any flags passed to wined3d_surface_flip().
2011-09-02 10:08:53 +02:00
Henri Verbeet
9d9baef789
wined3d: Make the device parameter to wined3d_device_get_light() const.
2011-09-01 18:06:37 +02:00
Henri Verbeet
82150458b4
wined3d: Make the device parameter to wined3d_device_get_transform() const.
2011-09-01 18:06:37 +02:00
Henri Verbeet
55ce85ad29
wined3d: Merge the wined3d_surface_flip() implementations.
2011-09-01 18:06:36 +02:00
Henri Verbeet
b587b85394
wined3d: Merge the wined3d_surface_set_mem() implementations.
2011-09-01 18:06:36 +02:00
Austin English
b2f7461a4d
wined3d: Remove an unused variable.
2011-09-01 18:06:36 +02:00
Henri Verbeet
124cdf913a
wined3d: Make the device parameter to wined3d_device_get_stream_source_freq() const.
2011-08-31 19:43:05 +02:00
Henri Verbeet
cfbecf9380
wined3d: Make the device parameter to wined3d_device_get_stream_source() const.
2011-08-31 19:43:05 +02:00
Henri Verbeet
c89a3ffe80
ddraw: Get rid of the surface implementation switching code.
2011-08-31 19:42:52 +02:00
Henri Verbeet
dd462052c6
wined3d: Use the resource size for copying between a surface's DIB and PBO.
2011-08-31 12:07:57 +02:00
Marcus Meissner
7023964865
wined3d: Remove a useless NULL check (Coverity).
2011-08-30 17:27:25 +02:00
Maxime Lombard
ef604e3826
wined3d: Add support for Nvidia GTX 460M.
2011-08-30 12:46:46 +02:00
Andrew Talbot
094dd38b00
wined3d: Remove unneeded address-of operators from function names.
2011-08-30 11:56:48 +02:00
Henri Verbeet
1870353c7a
wined3d: Replace "DirectDraw stuff" with per-adapter screen information.
2011-08-29 19:42:20 +02:00
Henri Verbeet
e7f61b8c61
wined3d: Make the device parameter to wined3d_device_get_available_texture_mem() const.
2011-08-29 19:42:14 +02:00
Henri Verbeet
e1f83fd205
wined3d: Make the device parameter to wined3d_device_get_wined3d() const.
2011-08-29 12:08:21 +02:00
Henri Verbeet
2ff7a356d2
wined3d: Make the device parameter to wined3d_device_get_swapchain() const.
2011-08-29 12:08:21 +02:00
Henri Verbeet
a3f23541c1
wined3d: Make the device parameter to wined3d_device_get_swapchain_count() const.
2011-08-29 12:08:21 +02:00
Henri Verbeet
d5c2ba6d62
wined3d: Make the target parameter to is_full_clear() const.
2011-08-29 12:08:20 +02:00
Henri Verbeet
78cbe0bc74
wined3d: Rename WineD3DAdapterChangeGLRam() to adapter_adjust_memory().
...
And make it work on an adapter instead of a device.
2011-08-29 12:08:20 +02:00
Matteo Bruni
c74c544cc6
wined3d: Store maximum vertex attributes count.
2011-08-29 12:08:19 +02:00
Matteo Bruni
afeecfd974
wined3d: Rename dummyTextureName variable.
2011-08-29 12:08:19 +02:00
Matteo Bruni
7c6bd2f287
wined3d: Use dummy textures for all the texture targets.
2011-08-29 12:08:19 +02:00
Matteo Bruni
0386b44bad
wined3d: Keep track of the current texture type for each texture unit.
2011-08-29 12:08:19 +02:00
Henri Verbeet
8a2b435dd3
wined3d: Enable multisampling by default.
2011-08-26 11:28:50 +02:00
Henri Verbeet
641f52ef96
wined3d: Add multisampling support.
2011-08-26 11:28:47 +02:00
Henri Verbeet
bd5f948682
wined3d: Get rid of the current multisampling support.
...
It doesn't really work, and trying to make multisampling work with onscreen
rendering is probably more trouble than it's worth, both for us and the
driver.
2011-08-26 11:28:25 +02:00
Henri Verbeet
eec2c634a6
wined3d: Introduce a separate function for attaching depth / stencil renderbuffers.
2011-08-26 11:28:01 +02:00
Henri Verbeet
be76133b7b
wined3d: Explicitly specify the resource location to context_attach_depth_stencil_fbo().
2011-08-26 11:27:57 +02:00
Henri Verbeet
9aaf0a30b7
wined3d: Also print an attachment's multisample type in context_check_fbo_status().
2011-08-26 11:27:53 +02:00
Henri Verbeet
3b478afd10
wined3d: Get rid of the location fixup in surface_blt_fbo().
2011-08-26 11:27:50 +02:00
Henri Verbeet
eac640532d
wined3d: Get rid of the location fixup for ORM_FBO in surface_modify_location().
2011-08-26 11:27:46 +02:00
Henri Verbeet
68a5305dfd
wined3d: Get rid of the location fixup for ORM_FBO in surface_load_location().
2011-08-26 11:27:43 +02:00
Henri Verbeet
98277e1fc6
wined3d: Simplify context_apply_fbo_state_blit().
2011-08-26 11:27:39 +02:00
Matteo Bruni
36a22dfa33
wined3d: Don't change active texture to 0.
2011-08-25 11:31:55 +02:00
Matteo Bruni
d485e04576
wined3d: Fetch currently active texture unit from the wined3d_context.
2011-08-25 11:31:55 +02:00
Matteo Bruni
f47f9f7c74
wined3d: Store currently active texture in the wined3d context.
2011-08-25 11:31:55 +02:00
Matteo Bruni
e53ae83d74
wined3d: Pass around the context instead of gl_info.
2011-08-25 11:31:55 +02:00
Matteo Bruni
be8ea9c36e
wined3d: Make context_acquire() unconditional in a bunch of places.
2011-08-25 11:31:55 +02:00
Henri Verbeet
4503f3d5af
wined3d: Pass a gl_info pointer to select_blit_implementation().
2011-08-25 11:31:54 +02:00
Henri Verbeet
9aa4f895f0
wined3d: Pass a gl_info pointer to select_shader_backend().
2011-08-25 11:31:54 +02:00
Henri Verbeet
86af42a46a
wined3d: Pass a gl_info pointer to select_fragment_implementation().
2011-08-25 11:31:54 +02:00
Henri Verbeet
f65a1ed272
wined3d: Bind the system framebuffer based on the actual location in context_apply_fbo_state().
...
We can do this now because SFLAG_INDRAWABLE is no longer ambiguous.
2011-08-25 11:31:54 +02:00
Henri Verbeet
47c5711fe2
wined3d: Use draw_binding in context_apply_blit_state().
2011-08-25 11:31:54 +02:00
Henri Verbeet
f0d8f2aa89
wined3d: Use draw_binding in swapchain_gl_present().
2011-08-25 11:31:53 +02:00
Henri Verbeet
6cdfb95c8e
wined3d: Use draw_binding in surface_unload().
2011-08-25 11:31:53 +02:00
Henri Verbeet
1d43f07239
wined3d: Use draw_binding in surface_realize_palette().
2011-08-25 11:31:53 +02:00
Henri Verbeet
683b52ed92
wined3d: Use draw_binding in surface_unmap().
2011-08-25 11:31:53 +02:00
Henri Verbeet
1ae498dc59
wined3d: Use draw_binding in IWineD3DSurfaceImpl_BltOverride().
2011-08-25 11:31:53 +02:00
Ričardas Barkauskas
e110c08cc8
wined3d: Avoid dereferencing null pointer in context_apply_clear_state when calling context_generate_rt_mask_from_surface.
2011-08-24 21:18:37 +02:00
Henri Verbeet
f80301e3e6
wined3d: Make the gl_info parameter to wined3d_guess_gl_vendor() const.
2011-08-24 11:58:15 +02:00
Henri Verbeet
a88611210f
wined3d: Make the ctx parameter to WineD3D_ReleaseFakeGLContext() const.
2011-08-24 11:58:15 +02:00
Henri Verbeet
22f5d0081f
wined3d: Make the device parameter to drawStridedSlow() const.
2011-08-24 11:58:15 +02:00
Henri Verbeet
4673330cf4
wined3d: Use draw_binding in wined3d_surface_blt().
2011-08-24 11:58:15 +02:00
Henri Verbeet
99da66429b
wined3d: Use draw_binding in device_clear_render_targets().
2011-08-24 11:58:15 +02:00
Henri Verbeet
317d76abb4
wined3d: Use draw_binding in arbfp_blit_surface().
2011-08-24 11:58:14 +02:00
Henri Verbeet
e57b20c215
wined3d: Keep track of a surface's "draw location".
2011-08-24 11:58:14 +02:00
Henri Verbeet
f73593c572
wined3d: Set the current location to SFLAG_INTEXTURE instead of SFLAG_INDRAWABLE in wined3d_surface_depth_blt().
...
These currently end up being the same thing, but that will change soon.
2011-08-24 11:58:14 +02:00
Henri Verbeet
620c81dc76
wined3d: Add a registry key to disable rendering swapchains onscreen.
...
We'll probably want to make this default to TRUE at some point, but at least
for the moment there still seem to be some performance advantages to rendering
onscreen in most cases.
2011-08-24 11:58:14 +02:00
Henri Verbeet
4b1ba0e02d
wined3d: Don't get rid of the user memory unless we're actually called with NULL in surface_set_mem().
...
In particular, some applications will call surface_set_mem() with the same
pointer to notify us the contents have changed.
2011-08-24 11:58:14 +02:00
Stefan Dösinger
2459d79b53
wined3d: Disable WINED3DFMT_S1_UINT_D15_UNORM and WINED3DFMT_S4X4_UINT_D24_UNORM.
2011-08-24 11:52:07 +02:00
Stefan Dösinger
5d1d07abcf
wined3d: Call glFlush after updating a buffer.
2011-08-24 11:52:06 +02:00
Henri Verbeet
7d46943067
wined3d: Make some parameters to get_glsl_program_entry() const.
2011-08-23 16:53:52 +02:00
Henri Verbeet
3b3470b151
wined3d: Make the shader parameter to shader_glsl_generate_vshader() const.
2011-08-23 16:53:52 +02:00
Henri Verbeet
f75675031f
wined3d: Make the shader parameter to shader_glsl_generate_pshader() const.
2011-08-23 16:53:52 +02:00
Henri Verbeet
9de5372036
wined3d: Introduce a function to update a swapchain's render_to_fbo field.
2011-08-23 16:53:51 +02:00
Henri Verbeet
7b19efd9d5
wined3d: Just call resource_unload() in updateSurfaceDesc().
...
Instead of trying to duplicate the functionality.
2011-08-23 16:53:51 +02:00
Henri Verbeet
b474225386
wined3d: Only delete the GL contexts after unloading resources in wined3d_device_reset().
...
The updateSurfaceDesc() calls potentially make GL calls.
2011-08-23 16:53:51 +02:00
Henri Verbeet
9df014b9de
wined3d: Rename WineD3D_ChoosePixelFormat() to context_choose_pixel_format().
2011-08-23 16:53:51 +02:00
Henri Verbeet
48911d7a1c
wined3d: Reject color blits on sysmem surfaces in ffp_blit_supported().
2011-08-23 16:53:51 +02:00
Henri Verbeet
f58e55ec6c
wined3d: Move arbfp based color blits from IWineD3DSurfaceImpl_BltOverride() to wined3d_surface_blt().
2011-08-23 16:53:51 +02:00
Henri Verbeet
c592d553f0
wined3d: Reject color blits on sysmem surfaces in arbfp_blit_supported().
2011-08-23 16:53:51 +02:00
Stefan Dösinger
0fc7cd5ad7
wined3d: Invalidate streamsrc, vdecl and indexbuffer after strided draws.
2011-08-22 19:49:39 +02:00
Michael Stefaniuc
42a6455ea5
wined3d: Sync a function prototype with its definition.
2011-08-22 19:49:39 +02:00
Chris Robinson
342d2b8979
wined3d: Don't use the old depth-stencil surface after decrementing its ref count.
2011-08-22 17:22:48 +02:00
Henri Verbeet
a04f0e9c78
wined3d: Move FBO based color blits from IWineD3DSurfaceImpl_BltOverride() to wined3d_surface_blt().
2011-08-22 16:14:37 +02:00
Henri Verbeet
d063ff55e7
wined3d: Move surface_color_fill() based color fills from IWineD3DSurfaceImpl_BltOverride() to wined3d_surface_blt().
2011-08-22 16:14:37 +02:00
Henri Verbeet
a887128ffd
wined3d: Reject color fills on sysmem surfaces in ffp_blit_supported().
2011-08-22 16:14:36 +02:00
Henri Verbeet
18434ddc57
wined3d: Directly call surface_cpu_blt() in cpu_blit_color_fill().
...
And avoid a potential infinite recursion if wined3d_surface_blt() ends up
calling cpu_blit_color_fill().
2011-08-22 16:14:36 +02:00
Henri Verbeet
26484c9200
wined3d: Allow color fills on FBO attachable surfaces in ffp_blit_supported().
2011-08-22 16:14:36 +02:00
Henri Verbeet
e1ab5f6e6b
wined3d: Don't allow blits with an invalid destination rectangle when a clipper is set either.
...
Clippers don't really work. Previously we mostly didn't run into this because
the rectangle was already rejected by ddraw_surface7_Blt(), although
ddraw_surface7_BltFast() might have been affected in a couple of cases. We
should of course implement clippers, but until that happens, completely
rejecting the blit is better than introducing memory corruption.
This fixes a regression introduced by commit
92e616f355
.
2011-08-22 16:14:36 +02:00
Henri Verbeet
f8ce77a598
wined3d: Draw buffers are per-framebuffer state.
2011-08-22 16:14:36 +02:00
Henri Verbeet
34b2956e23
wined3d: Merge FindContext() into context_acquire().
...
This actually fixes a bug. A context's current_rt field may get set to NULL if
that surface gets destroyed or unloaded. In general, the next time that
context is acquired, context_setup_target() will then set everything up again.
However, if a context_acquire() call with a NULL target ends up returning such
a context, context_setup_target() never sets the current_rt field because the
target FindContext() chooses never gets propagated to context_acquire(). This
patch ensures context_setup_target() is never called with a NULL target.
2011-08-22 16:14:36 +02:00
Henri Verbeet
56428c6386
wined3d: Reuse convert_a8r8g8b8_x8r8g8b8() for B8G8R8X8 -> B8G8R8A8 conversions.
2011-08-22 16:14:36 +02:00
Henri Verbeet
156d24c634
wined3d: Add compressed surface support to surface_cpu_blt().
2011-08-22 16:14:36 +02:00
William Pettersson
0e043819f4
wined3d: Add support for Nvidia GTX 550/560 Ti.
2011-08-05 16:43:24 +02:00
Henri Verbeet
812a314821
wined3d: Get rid of the fglrx point sprite hack.
...
Fglrx 9.3 is well over 2 years old at this point. I'd strongly encourage
anyone still affected by this to upgrade to the r300g driver.
2011-08-05 09:17:59 +02:00
Henri Verbeet
293bf961ed
wined3d: Pass a non-NULL rectangle to surface_color_fill() in wined3d_device_clear_rendertarget_view().
2011-08-05 09:17:51 +02:00
Henri Verbeet
7e8e7ecebb
wined3d: Always pass a non-NULL rectangle to surface_color_fill() in wined3d_device_color_fill().
2011-08-05 09:17:47 +02:00
Henri Verbeet
a84275075d
wined3d: Implement wined3d_surface_bltfast() on top of wined3d_surface_blt().
2011-08-05 09:17:39 +02:00
Henri Verbeet
662de19ad3
wined3d: Move some flags handling from surface_cpu_blt() to wined3d_surface_blt().
2011-08-04 09:04:49 +02:00
Henri Verbeet
7e3ecd683c
wined3d: Move rectangle validation from surface_cpu_blt() to wined3d_surface_blt().
...
This fixes some tests because these were getting skipped for the BltOverride() path.
2011-08-04 09:04:39 +02:00
Henri Verbeet
b166cb29f8
wined3d: Remove src_rect and dst_rect NULL checks from surface_cpu_blt().
2011-08-04 09:04:25 +02:00
Henri Verbeet
e74d1358ac
wined3d: Remove the unused blit_op parameter to arbfp_blit_surface().
2011-08-04 09:04:20 +02:00
Frédéric Delanoy
7e309601f3
dlls: Assorted spelling fixes.
2011-08-03 14:15:50 +02:00
Henri Verbeet
41cff1618c
wined3d: Merge wined3d_surface_blt(), surface_blt() and gdi_surface_blt().
2011-08-03 09:23:30 +02:00
Henri Verbeet
c12627562b
wined3d: Go to the fallbacks for cross-swapchain blits.
2011-08-03 09:23:20 +02:00
Henri Verbeet
111e8fe77c
wined3d: Add WINED3DFMT_P8_UINT support to wined3d_format_convert_from_float().
2011-08-03 09:23:16 +02:00
Henri Verbeet
cf1c641cbb
wined3d: Fix switching color keying on / off.
2011-08-03 09:23:12 +02:00
Henri Verbeet
e4efcea223
wined3d: Set the read buffer to GL_NONE in surface_load_ds_location().
...
On GL implementations that don't support GL_ARB_ES2_compatibility the
framebuffer's read buffer has to be valid, even if we're not reading from it.
2011-08-03 09:23:08 +02:00
Henri Verbeet
98650e841e
wined3d: Go to the fallbacks if D3D is not initialized in surface_blt().
...
Even though this is the "OpenGL" surface implementation, this can still happen
in e.g. ddraw if no swapchain is created yet. That's something we should fix,
but not today.
2011-08-02 11:40:20 +02:00
Henri Verbeet
7539cc8faa
wined3d: Go straight to the fallbacks for complex blits in surface_blt().
...
At the moment this is only marginally useful, since it just avoids silly
things like color keyed depth fills that are probably invalid anyway. However,
the idea is to gradually move normal color fill and blit handling out of
IWineD3DSurfaceImpl_BltOverride() and surface_cpu_blt(), and eventually make
those functions go away completely.
2011-08-02 11:40:16 +02:00
Henri Verbeet
4bdd4ef45b
wined3d: Check for locked surfaces in wined3d_surface_blt().
2011-08-02 11:40:11 +02:00
Henri Verbeet
50d883c37e
wined3d: IWineD3DSurfaceImpl_BltOverride() is always passed valid source and destination rectangles.
...
So no need to call surface_get_rect() anymore.
2011-08-02 11:40:07 +02:00