Commit Graph

5808 Commits

Author SHA1 Message Date
Henri Verbeet 64aae8cf02 wined3d: wined3d_device_set_viewport() never fails. 2012-09-10 11:40:14 +02:00
Jiang Yike a308bde74a wined3d: Add AMD Radeon HD 7700 series and HD 7800 series graphics cards. 2012-09-07 12:23:31 +02:00
Henri Verbeet c8f4ca315e wined3d: Just return the buffer from wined3d_device_get_index_buffer(). 2012-09-06 15:45:32 +02:00
Henri Verbeet a3e28f6ce5 wined3d: wined3d_device_set_index_buffer() never fails. 2012-09-06 15:45:32 +02:00
Henri Verbeet 8fd7d3a2b3 wined3d: Just return the swapchain from wined3d_device_get_swapchain(). 2012-09-05 11:48:04 +02:00
Henri Verbeet ac5c420c91 wined3d: Add type information to shader registers. 2012-09-05 11:47:59 +02:00
Henri Verbeet 42582ada00 wined3d: Read complete shader instructions at a time. 2012-09-05 11:47:55 +02:00
Henri Verbeet 66ec8a5cfb wined3d: Get rid of wined3d_device_get_wined3d(). 2012-09-04 15:05:22 +02:00
Jonas Wielicki a64b7918c8 wined3d: Fix crash in wined3d_device_reset with gdi backend for directdraw. 2012-08-29 20:13:42 +02:00
Matteo Bruni d37f8ea866 wined3d: Use BOOL instead of char in shader_load_constants(). 2012-08-21 11:45:55 +02:00
Matteo Bruni 7cc4f47afe wined3d: Force ARB shader programs reselection on bool/int constant changes.
The ARB shader backend hardcodes some constant-dependent state in the shader
itself (e.g. branch taken/not taken). So, we have to make sure to update the
selected ARB shader when the application modifies non-float constants.
2012-08-21 11:45:47 +02:00
Matteo Bruni f89f30e0c0 wined3d: Fix blending test expected results. 2012-08-21 11:45:43 +02:00
Henri Verbeet e35f773b0b wined3d: Also issue any queries for index buffers in drawPrimitive(). 2012-08-20 11:01:21 +02:00
Henri Verbeet 54976a033b wined3d: Use a slightly shorter timeout in wined3d_event_query_finish(). 2012-08-20 11:01:15 +02:00
Alexandre Julliard 3bd185c3df wined3d: Remove references to the (no longer used) X11 lock. 2012-08-16 16:52:16 +02:00
Francois Gouget b2a7111a3d wined3d: Change some internal function and structure names to the more standard 'converter' spelling. 2012-08-16 13:47:29 +02:00
Matteo Bruni a488e57449 wined3d: Improve post-pixelshader blending test. 2012-08-15 12:17:48 +02:00
Matteo Bruni 902049c054 wined3d: Fix pixel format masks. 2012-08-15 12:17:46 +02:00
Matteo Bruni 0a37a86f35 wined3d: Dump postblend color. 2012-08-15 12:15:47 +02:00
Matteo Bruni 152a09ce75 wined3d: Use GL_FRAMEBUFFER_SRGB when possible. 2012-08-15 12:15:42 +02:00
Nikolay Bogoychev 9716c1b50c wined3d: Recognize GeForce GT 630M. 2012-08-14 17:42:06 +02:00
Michael Stefaniuc 4ddfcc2cf1 wined3d: Avoid TRUE-FALSE conditional expressions. 2012-07-26 12:11:29 +02:00
Henri Verbeet 894d161891 wined3d: Call core GL functions through gl_info.gl_ops as well. 2012-07-25 20:10:08 +02:00
Henri Verbeet af1ba676c8 wined3d: Pass a gl_info structure to fragment_pipeline.enable_extension(). 2012-07-25 20:01:31 +02:00
Henri Verbeet 4b90d79473 wined3d: Get rid of the GL extension function pointer typedefs. 2012-07-25 20:01:16 +02:00
Alexandre Julliard 63396e00b9 wined3d: Retrieve OpenGL extension functions directly through the TEB table. 2012-07-25 19:59:13 +02:00
Henri Verbeet c7e3bb5a93 wined3d: Use struct opengl_funcs for storing GL extension pointers. 2012-07-24 13:36:29 +02:00
Henri Verbeet 4f3263e08c wined3d: Handle core fixups like any other kind of extension fixup. 2012-07-24 13:36:28 +02:00
Henri Verbeet 048edaf6a3 wined3d: Fix some EXT_gpu_shader4 function names. 2012-07-23 12:36:00 +02:00
Henri Verbeet 526901e307 wined3d: Get rid of APPLE_flush_render, it doesn't exist. 2012-07-23 12:35:56 +02:00
Henri Verbeet ea8dfe640d wined3d: Convert some uppercase hex constants to lowercase. 2012-07-20 13:59:53 +02:00
Henri Verbeet 15b41f0181 wined3d: Get rid of some unused PCI IDs.
In case of e.g. CARD_AMD_RADEON_HD4650 and CARD_AMD_RADEON_HD4670 these are
wrong too, because you can't distinguish one HD46xx card from another based on
PCI ID.
2012-07-20 13:59:29 +02:00
Alexandre Julliard d7250e97ed wined3d: Fetch GL functions from the WGL driver table, including glFinish and glFlush. 2012-07-20 13:21:27 +02:00
Alexandre Julliard 4c0779006e opengl32: Move the wgl functions to the main OpenGL function table. 2012-07-19 22:50:37 +02:00
Alexandre Julliard 2f31a66941 wined3d: Load glPointParameter functions as extensions rather than standard OpenGL functions. 2012-07-19 16:47:49 +02:00
Henri Verbeet 09443f14e7 wined3d: Enable "AlwaysOffscreen" by default. 2012-07-19 15:43:59 +02:00
Henri Verbeet 8a95eb0604 wined3d: Disable the X11 / GL lock. 2012-07-19 15:43:34 +02:00
Henri Verbeet f1aea860f9 wined3d: Fix the draw buffer limit calculation. 2012-07-19 15:43:26 +02:00
Henri Verbeet 2bfc5214be ddraw: Implement ddraw7_GetScanLine() on top of wined3d_get_adapter_raster_status(). 2012-07-19 15:43:11 +02:00
Caron Jensen 9877df9aeb wined3d: Recognize AMD Tahiti cards. 2012-07-19 15:43:01 +02:00
Henri Verbeet e834c920ec wined3d: Introduce a separate function for initializing various limits. 2012-07-17 12:50:22 +02:00
Henri Verbeet f0fb199925 wined3d: Use the proper texture target in ffp_blit_p8_upload_palette(). 2012-07-17 12:50:22 +02:00
Henri Verbeet 092ba1e1bf wined3d: Use the proper texture target in fb_copy_to_texture_direct(). 2012-07-17 12:50:21 +02:00
Henri Verbeet f5e289c6e0 wined3d: Use the proper texture target in ffp_blit_set(). 2012-07-17 12:50:21 +02:00
Henri Verbeet 86db5b601f wined3d: Use the proper texture target in arbfp_blit_set().
For cube maps, texture->target is GL_TEXTURE_CUBE_MAP and would be used for
calls that apply to the entire texture, like glTexParameter().
surface->texture_target refers to individual faces like
GL_TEXTURE_CUBE_MAP_POSITIVE_X, etc., and would be used for calls like
glTexImage2D(). What makes this a bit ugly is the fact that surfaces don't
always have an associated texture.
2012-07-17 12:50:21 +02:00
Alexandre Julliard 30e0e3ffff wined3d: Remove unused variables. 2012-07-16 14:26:32 +02:00
Henri Verbeet adf66a338f wined3d: Get rid of the unused sampler_stages limit. 2012-07-16 14:21:52 +02:00
Henri Verbeet 2b4c72b13b d3d10core: Always create a wined3d texture for d3d10core textures. 2012-07-12 11:45:21 -05:00
Henri Verbeet 0821c8024b wined3d: Merge the device parent create_rendertarget() and create_depth_stencil() handlers. 2012-07-11 09:57:07 -05:00
Henri Verbeet d26a3858d9 wined3d: Fix the block alignment check in surface_cpu_blt(). 2012-07-11 09:56:58 -05:00
Henri Verbeet 1e22e3ccfb wined3d: Introduce a helper function for checking surface block alignment. 2012-07-11 09:56:54 -05:00
Henri Verbeet 2907913fad wined3d: Print a more obvious message if a format doesn't have a corresponding GL internal format. 2012-07-10 10:39:48 -05:00
Henri Verbeet 8ad98cdbee wined3d: Get rid of the "discard" parameter to device_parent_create_depth_stencil(). 2012-07-10 10:39:42 -05:00
Henri Verbeet 9b74ebd794 wined3d: Get rid of the "lockable" parameter to device_parent_create_rendertarget(). 2012-07-10 10:39:34 -05:00
Henri Verbeet 73eceafb17 d3d9: Implement d3d9_device_ResetEx(). 2012-07-09 15:04:18 -04:00
Henri Verbeet 3543e1d198 wined3d: Fix the .spec. 2012-07-09 15:04:11 -04:00
Vincas Miliūnas ada3dff134 wined3d: Recognize AMD Radeon HD 6700 Series renderer string. 2012-07-02 19:18:07 +02:00
Henri Verbeet e97dc9f33d d3d9: Implement d3d9_EnumAdapterModesEx(). 2012-07-02 19:17:59 +02:00
Alexandre Julliard 8f80159d40 wined3d: Get WGL extension definitions from wglext.h. 2012-07-02 19:17:58 +02:00
Henri Verbeet 8d4e3d0d58 d3d9: Implement d3d9_GetAdapterModeCountEx(). 2012-06-29 10:14:29 +02:00
Henri Verbeet 256d433164 d3d9: Implement d3d9_device_PresentEx(). 2012-06-29 10:14:21 +02:00
Henri Verbeet 035b79ebcf wined3d: Use the device name stored in the adapter in wined3d_get_adapter_identifier(). 2012-06-29 10:14:10 +02:00
Henri Verbeet d843447580 wined3d: Use the device name stored in the adapter in wined3d_set_adapter_display_mode(). 2012-06-29 10:14:06 +02:00
Henri Verbeet 56c518af3e wined3d: Use the device name stored in the adapter in wined3d_get_adapter_display_mode(). 2012-06-29 10:14:01 +02:00
Henri Verbeet 194ee40e07 wined3d: Use the device name stored in the adapter in wined3d_get_adapter_mode_count(). 2012-06-28 18:52:29 +02:00
Henri Verbeet e9d0367d29 wined3d: Use the device name stored in the adapter in wined3d_enum_adapter_modes(). 2012-06-28 18:52:28 +02:00
Henri Verbeet b6bdb4286d wined3d: Avoid a redundant call to EnumDisplaySettingsExW() in wined3d_enum_adapter_modes(). 2012-06-28 18:52:28 +02:00
Henri Verbeet 91f02018c5 wined3d: Avoid a useless call to wined3d_get_adapter_mode_count() in wined3d_enum_adapter_modes(). 2012-06-28 18:52:27 +02:00
Alexandre Julliard edfc7f0de0 opengl32: Move wglGetProcAddress to the WGL driver. 2012-06-28 16:14:55 +02:00
Alexandre Julliard db25d4022a winex11: Simplify wglSetPixelFormatWINE and export it as a standard extension function. 2012-06-28 13:13:01 +02:00
Alexandre Julliard 94abcd532f wined3d: Always load wgl functions from opengl32.dll. 2012-06-28 01:44:02 +02:00
Henri Verbeet 0ce894f274 d3d9: Implement d3d9_device_GetDisplayModeEx(). 2012-06-28 01:39:28 +02:00
Henri Verbeet 2c8834dffd d3d9: Implement d3d9_GetAdapterDisplayModeEx(). 2012-06-28 01:39:27 +02:00
Henri Verbeet a1bfd0988f wined3d: Take scanline ordering into account in the mode setting code. 2012-06-28 01:39:26 +02:00
Henri Verbeet 427f3e40dc wined3d: Get rid of is_display_mode_supported().
If a display mode is unsupported, wined3d_set_adapter_display_mode() shouldn't
have a problem figuring that out on its own.
2012-06-28 01:39:24 +02:00
Henri Verbeet d93e61f249 wined3d: Release the stateblock only after mode setting in wined3d_device_reset().
While we're allowed to leave the device in a somewhat inconsistent state after
a failed reset, such a state should be recoverable by calling reset again. If
e.g. mode setting were to fail between the point where we destroy and recreate
the stateblock a subsequent reset would crash because the device doesn't have
a stateblock anymore.
2012-06-26 17:32:59 +02:00
Henri Verbeet 0ee3007963 wined3d: Only unset the onscreen depth / stencil buffer once in wined3d_device_reset(). 2012-06-26 17:32:48 +02:00
Józef Kucia d760b21ab6 wined3d: Use the system memory pool for the logo surface. 2012-06-25 18:12:53 +02:00
Alexandre Julliard 66a5995e11 winex11: Move wglGetCurrentContext and wglGetCurrentDC to the internal OpenGL extension functions. 2012-06-25 16:25:44 +02:00
Alexandre Julliard 08efea0218 winex11: Move wglCopyContext and wglDeleteContext to the internal OpenGL extension functions. 2012-06-25 13:52:10 +02:00
Alexandre Julliard beeba895d3 winex11: Move wglShareLists to the internal OpenGL extension functions. 2012-06-25 13:52:01 +02:00
Henri Verbeet c11c2e2dbb wined3d: Get rid of the d3d_caps debug channel. 2012-06-22 16:14:26 +02:00
Henri Verbeet b6c7b825a1 wined3d: Only store a different screen format if it's explicitly changed through wined3d. 2012-06-22 16:14:14 +02:00
Henri Verbeet c2c0743ccf wined3d: Properly retrieve the display mode in wined3d_device_set_cursor_properties(). 2012-06-22 16:14:08 +02:00
Henri Verbeet 7000899948 wined3d: Just forward wined3d_device_get_display_mode() to the appropriate swapchain. 2012-06-22 16:14:03 +02:00
Henri Verbeet 0f0fe49240 wined3d: Implement mode setting in the adapter instead of the device. 2012-06-22 16:13:58 +02:00
Henri Verbeet fdb85423b4 wined3d: Lie about the display format in wined3d_get_adapter_display_mode(). 2012-06-20 19:27:02 +02:00
Henri Verbeet 2a0463ac21 wined3d: Only filter redundant mode changes in wined3d. 2012-06-20 19:26:56 +02:00
Henri Verbeet a6ffab3bf5 wined3d: Rename WINED3DLOCK_* to WINED3D_MAP_*. 2012-06-18 17:48:56 +02:00
Henri Verbeet befdbbd90f wined3d: Reset render target bindings in wined3d_device_reset(). 2012-06-18 17:48:21 +02:00
Henri Verbeet 130f232d20 wined3d: Unset the depth/stencil surface before checking resources in wined3d_device_reset(). 2012-06-18 17:48:16 +02:00
Thomas Faber a6510b3fbc wined3d: Use INFINITY. 2012-06-18 11:59:41 +02:00
Michael Stefaniuc db5053c950 wined3d: Avoid sizeof on structs with variable length arrays. 2012-06-13 12:09:36 +02:00
Henri Verbeet 0610d1eec9 wined3d: Invalidate the entire buffer on maps with WINED3DLOCK_DISCARD. 2012-06-12 17:27:43 +02:00
Henri Verbeet 611b541f29 wined3d: Set undefined vertex attributes to 0.0. 2012-06-12 17:27:39 +02:00
Francois Gouget 4f17081652 wined3d: Make some surface functions static. 2012-06-12 11:11:16 +02:00
Francois Gouget 9a874aca8e wined3d: Reorder some surface functions to avoid the need for forward declarations. 2012-06-12 11:11:12 +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 948065a52f wined3d: Update nouveau card info. 2012-05-31 18:05:08 +02:00
Henri Verbeet 1a93983bd4 wined3d: Use NAN. 2012-05-30 17:17:59 +02:00
Kimmo Myllyvirta d738e6ffd2 wined3d: Add NVIDIA GeForce GTX 680. 2012-05-29 10:53:44 +02:00
Henri Verbeet aa71065d9b wined3d: Properly preload index buffers. 2012-05-29 10:44:50 +02:00
Karsten Elfenbein 9d7a39656a wined3d: Add Nvidia GTX 670. 2012-05-22 18:08:24 +02:00
Henri Verbeet e3ecfa5974 wined3d: Store user clip planes as 4-component float vectors. 2012-05-22 18:07:02 +02:00
Henri Verbeet 481514eab2 wined3d: Get rid of the conv_mat macro. 2012-05-22 18:06:54 +02:00
Henri Verbeet 69bdff6253 wined3d: Avoid moving buffers while they're mapped. 2012-05-22 18:06:51 +02:00
Henri Verbeet 0d45d50342 wined3d: Don't evict resources that are currently mapped in wined3d_device_evict_managed_resources(). 2012-05-21 21:31:02 +02:00
Henri Verbeet 5ec56c9bc4 wined3d: Get rid of SFLAG_LOCKED. 2012-05-21 21:30:56 +02:00
Henri Verbeet f2fb3f11f9 wined3d: Move the resource map count field up to wined3d_resource. 2012-05-21 21:30:52 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Henri Verbeet a331ed032e wined3d: Properly check for transformed position in buffer_check_attribute(). 2012-05-03 23:45:21 +02:00
Henri Verbeet 6b9018ccd2 wined3d: Use the wined3d_matrix structure for the identity matrix. 2012-05-03 23:45:09 +02:00
Henri Verbeet 29893d8162 wined3d: Determine index buffer location based on vertex buffer locations. 2012-05-03 11:18:03 +02:00
Henri Verbeet 9267148705 wined3d: The wined3d object doesn't need a parent. 2012-05-03 11:18:00 +02:00
Alexandre Julliard c054d7bc6f wined3d: CreateDIBSection doesn't need a DC for the DIB_RGB_COLORS case. 2012-05-02 12:02:33 +02:00
Henri Verbeet a8a201cf61 wined3d: Figure out the index data pointer inside drawPrimitive().
We want to do this after context_apply_draw_state(), when resource locations
are all setup.
2012-05-02 11:59:14 +02:00
Henri Verbeet 64e41dae8a wined3d: Figure out the index size inside drawPrimitive(). 2012-05-02 11:59:10 +02:00
Henri Verbeet 42b835754b wined3d: Keep track of "all_vbo" in the stream info structure. 2012-05-01 14:44:15 +02:00
Henri Verbeet de43de510a wined3d: Move the resource bind_count field up to wined3d_resource. 2012-04-26 19:26:14 +02:00
Henri Verbeet 49c4623b2f wined3d: device_clear_render_targets() never fails. 2012-04-16 12:05:15 +02:00
Henri Verbeet 3ba95e2f3e wined3d: Move the present() back buffer check to the common wined3d_swapchain_present() code. 2012-04-16 12:05:09 +02:00
Henri Verbeet 8cef8b3587 wined3d: Unify the wined3d_mapped_rect and wined3d_mapped_box structures. 2012-04-13 10:48:51 +02:00
Henri Verbeet cd0c18f56b wined3d: Simplify the data.buffer_object assignment in surface_load_texture().
The surface pbo field should be 0 is SFLAG_PBO is not set.
2012-04-09 12:02:47 +02:00
Henri Verbeet baff64a27a wined3d: Properly determine the viewport size for front buffer blits in SetupForBlit(). 2012-04-05 11:56:19 +02:00
Henri Verbeet 12369f9f4d wined3d: Fix the VBO check in device_stream_info_from_declaration(). 2012-03-29 20:49:14 +02:00
Henri Verbeet 7017ed4587 wined3d: Drop a questionable FIXME in device_stream_info_from_declaration(). 2012-03-29 20:49:13 +02:00
Henri Verbeet c7d3a8a478 wined3d: Drop the "vbo" check in wined3d_device_process_vertices().
We care about individual streams having a VBO or not, and there's no way for
device_stream_info_from_declaration() to properly express that, so just check
the individual streams.
2012-03-29 20:49:13 +02:00
Matteo Bruni 7e3c7840e3 wined3d: Support WINED3D_TTFF_COUNT3 texture projection in the ARB backend. 2012-03-28 15:09:18 +02:00
Matteo Bruni 439097c810 wined3d: Update the correct draw buffers mask. 2012-03-28 15:09:09 +02:00
Henri Verbeet 426535a7dd wined3d: Recognise AMD HD 6770M and HD 6750M with closed drivers. 2012-03-28 11:36:46 +02:00
Henri Verbeet 00a4011425 wined3d: Drop the ORM_BACKBUFFER special case in surface_unmap(). 2012-03-27 11:39:26 +02:00
Henri Verbeet d1e00648ff wined3d: Only update the drawable on surface unmap for the frontbuffer. 2012-03-27 11:39:23 +02:00
Henri Verbeet 6f8b8bda2d wined3d: Load the backbuffer in the correct location before presenting in swapchain_gl_present(). 2012-03-27 11:39:19 +02:00
Henri Verbeet 337b63d878 wined3d: Drop an Apple hack.
The hack actually breaks things on cards that do support more than 256
uniforms in GLSL.
2012-03-27 11:39:13 +02:00
Henri Verbeet a0264eb101 wined3d: Move the WGL extension detection code to the same place as regular GL extension detection. 2012-03-16 11:08:59 +01:00
Henri Verbeet bb08fafdf0 wined3d: Use the same code for parsing the WGL extension string as for the regular GL extension string. 2012-03-16 11:08:54 +01:00
Henri Verbeet 00ba167c71 wined3d: Introduce a separate function for parsing the GL extension string. 2012-03-16 11:08:49 +01:00
Henri Verbeet 02ae22d984 wined3d: The current WGL DC should never be NULL in wined3d_adapter_init_gl_caps(). 2012-03-16 11:08:42 +01:00
Henri Verbeet 6396ad9e45 wined3d: GL_MAX_TEXTURE_COORDS_ARB is not available without ARB_fragment_program. 2012-03-12 10:44:01 +01:00
Henri Verbeet 112e2e219f wined3d: Also recognise the "classic" Mesa Nouveau driver for GeForce 4 and earlier cards. 2012-03-12 10:44:00 +01:00
Henri Verbeet ab4474c19b wined3d: surface_cpu_blt() should always receive valid source and destination rectangles. 2012-03-12 10:44:00 +01:00
Henri Verbeet 29468906bb wined3d: Pass correctly offset pointers to surface_cpu_blt_compressed().
This was debugged by Alexey Loukianov.
2012-03-12 10:43:59 +01:00
Matteo Bruni 4ed605f081 wined3d: Clamp fog coordinate in the ARB backend too. 2012-03-09 17:26:01 +01:00
Matteo Bruni 2d810bdc89 wined3d: Clamp fog coordinate in the vertex shader. 2012-03-09 17:25:57 +01:00
Henri Verbeet 06aab27197 wined3d: Remove a texture dimension check in state_alpha().
I don't think there's any reason color-keying shouldn't work on e.g. cube
textures, although it probably isn't very common either.
2012-03-09 11:32:22 +01:00
Henri Verbeet 6eb5c891ac wined3d: Use ARB_texture_rg for WINED3DFMT_R16G16_UNORM textures when available. 2012-03-09 11:32:16 +01:00
Henri Verbeet b8a22ebef0 wined3d: Remove an outdated comment from load_vertex_data(). 2012-03-08 17:58:02 +01:00
Henri Verbeet 3d5ca7ab64 wined3d: Remove an outdated comment in state_zwritenable().
We actually do have tests for this.
2012-03-08 17:57:58 +01:00
Henri Verbeet 6d483c2d9d wined3d: Don't use floating point for surface height scaling.
This is the follow-up to commit a4e5bcff4c.
2012-03-08 17:57:54 +01:00
Henri Verbeet 639ea0f49c wined3d: Remove a transformed vertex loading hack in load_vertex_data().
This should never be used, we fall back to drawStridedSlow() for transformed vertices.
2012-03-08 17:57:46 +01:00