Commit Graph

1158 Commits

Author SHA1 Message Date
Andrew Talbot a697d99d66 ddraw: Sign-compare warnings fix. 2008-09-29 17:32:17 -05:00
Paul Vriens a12509532c ddraw/tests: Fix a test on a Win98 box. 2008-09-22 12:16:53 +02:00
Francois Gouget 7dd099416e ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-09-08 12:47:21 +02:00
Paul Vriens 55faa6e911 ddraw/tests: Let tests run again on win9x. 2008-09-03 13:14:51 +02:00
Stefan Dösinger 09d0a35872 ddraw: Add some overlay tests. 2008-09-02 15:05:59 +02:00
Stefan Dösinger ddec94bf0f ddraw: Pass proper parameters to CheckDeviceFormat. 2008-09-02 14:56:45 +02:00
Stefan Dösinger c1eabc2ce7 ddraw: Catch attempts to opengl-render to the desktop window. 2008-09-02 14:56:35 +02:00
Stefan Dösinger d5f05c59c7 ddraw: Beware of the surface type when checking for format support. 2008-09-02 14:56:26 +02:00
Stefan Dösinger 3b48660f43 wined3d: Implement YV12 support for emulated overlays.
This is the prefered format of many codecs, and for some codecs this
is the only supported output format. As usual I try to handle all the
conversion in the GPU and keep the CPU involvement minimal to gain the
full performance of PBO transfers.
2008-09-02 14:55:50 +02:00
Stefan Dösinger ec4955630e wined3d: Silence some format spam. 2008-08-28 11:24:49 +02:00
Stefan Dösinger 58ac095d9d ddraw: Don't destroy the application's window. 2008-08-26 12:07:40 +02:00
David Adam bb67a925d6 ddraw: Only ddraw checks wether one can give a null pointer to SetMaterial. 2008-08-22 11:32:09 +02:00
Alexander Dorofeyev e718eae9e2 ddraw/tests: Skip cubemap tests when cubemap isn't supported. 2008-08-21 13:35:12 +02:00
Stefan Dösinger a950d3a10e ddraw: Set the bitdepth on YUV formats. 2008-08-20 12:33:33 +02:00
Stefan Dösinger 90e2a676e8 ddraw: Do not set the rendertarget flag just because of the backbuffer flag.
There are also overlay backbuffers, which aren't render targets. The
primarysurface and d3ddevice cap flags should be enough here.
2008-08-20 12:32:42 +02:00
Stefan Dösinger e10302d952 ddraw: Implement IDirectDraw7::GetFourCCCodes. 2008-08-19 12:25:37 +02:00
Stefan Dösinger c1bbab7c54 ddraw: Send the ddraw output to the clipper window, if any. 2008-08-19 12:25:31 +02:00
Stefan Dösinger 376944ebe4 wined3d: Remove the device-global fullscreen flag. 2008-08-19 12:24:57 +02:00
Stefan Dösinger 34b37fe241 d3d: Remove IWineD3DDevice::SetHwnd. 2008-08-19 12:22:05 +02:00
Stefan Dösinger e178ddd9e1 wined3d: Use a swapchain for GDI surfaces.
This is a long-needed cleanup aimed at removing the ddraw_primary,
ddraw_window, ddraw_width and ddraw_height members from
IWineD3DDeviceImpl, which just do not belong there.  Destination
window and screen handling is supposed to be done by swapchains.
2008-08-19 12:21:32 +02:00
Stefan Dösinger 851dd7339e wined3d: Implement overlay flipping. 2008-08-05 14:09:36 +02:00
Stefan Dösinger e795d842ec wined3d: Implement overlay position tracking. 2008-08-05 14:09:36 +02:00
Stefan Dösinger a47e7badb9 ddraw: Set ddraw caps in wined3d.
Currently the ddraw capabilities were almost static, except of D3D
support. When overlay support is added, the caps depend on certain
settings in WineD3D or capabilities available from OpenGL and Xv. So
set those caps in wined3d as well.
2008-08-04 13:10:11 +02:00
Tobias Jakobi 69797d7f3d ddraw: Fix typo in copy_mipmap_chain. 2008-07-28 14:25:09 +02:00
Alexander Dorofeyev e2ff077697 ddraw: Improve IDirect3DDevice7_Load implementation.
Copies palette and colorkey earlier in the helper function, before
copying image, also skips UpdateSurface when palette is missing. This
prevents unnecessary surface (re)loads in wined3d, and gets rid of
some wined3d palette error messages in Sacrifice.
2008-07-22 15:20:33 +02:00
Alexander Dorofeyev 2be93ce6b0 ddraw/tests: Add tests for surface caps memory flags. 2008-07-17 11:21:48 +02:00
Alexander Dorofeyev 59fc5a75e0 ddraw: Force surfaces without memory flags to video memory on creation.
Also removes now redundant setting of vidmem flag on rendertargets, prevents 
adding vidmem flag when sysmem flag is present. Fixes missing textures in Forsaken.
2008-07-17 11:21:39 +02:00
Alexandre Julliard 79c64acc7b tests: Don't depend on the static uuid libraries in the tests.
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
James Hawkins 11e31e580c ddraw: Fix a failing test for broken drivers. 2008-07-02 12:05:08 +02:00
James Hawkins 8830dbcca8 ddraw: Fix a failing test for broken drivers. 2008-07-02 12:04:56 +02:00
Alexander Dorofeyev cb5e06c944 ddraw: Implement FPU mode fixup in d3d7 device.
As documented in DirectX7 SDK, d3d7 devices set FPU mode (control word) on every 
call and restore it back to original state before returning, if created in 
DDSCL_FPUPRESERVE cooperative mode. This allows games to work with FPU in a 
possibly incompatible mode and avoid resetting it all the time.
2008-06-23 19:59:33 +02:00
Michael Karcher 606186d4c5 ddraw: Ensure to load wined3d before attempting to create a clipper. 2008-06-23 14:11:58 +02:00
James Hawkins 5dcec4de49 ddraw: Reset the viewport data before each test. 2008-06-18 13:51:46 +02:00
Dmitry Timoshkov 2cf47c00f2 ddraw: Avoid a not needed address-of operator. 2008-06-06 10:29:09 +02:00
James Hawkins 7352978713 ddraw: Delete the temporarily attached surface. 2008-06-02 12:35:14 +02:00
Francois Gouget 476cb96b75 ddraw: Remove trailing spaces in Wine traces. 2008-05-30 10:01:11 +02:00
Alexander Dorofeyev 940ef7a9ff ddraw: Do not return modes differing only by refresh rate without DDEDM_REFRESHRATES. 2008-05-29 12:09:19 +02:00
Jens Albretsen a2b645128f ddraw: Test for IDirect3DTexture_Load of Texture into itself. 2008-05-28 19:31:35 +02:00
Jens Albretsen 46ef2e06fc ddraw: IDirect3DTextureImpl_Load failed when texture was loading onto itself. 2008-05-28 19:31:29 +02:00
Paul Vriens f076d79c6c ddraw/tests: Don't crash on win9x. 2008-05-28 11:32:24 +02:00
Francois Gouget 8019c55cc6 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-05-21 11:36:39 +02:00
Andrew Talbot 5bf9e88cce ddraw: Memory allocation size fix. 2008-05-13 10:40:00 +02:00
Alexander Dorofeyev 17dacf90b2 ddraw: Fix some code unprotected by ddraw lock. 2008-05-12 19:41:46 +02:00
Alexander Dorofeyev ebf1f4e6bb ddraw/tests: Add KEYSRCOVERRIDE test in p8_primary_test. 2008-05-09 11:19:43 +02:00
Andrew Talbot a6746b9e7b ddraw: Indentation fix. 2008-05-07 12:24:04 +02:00
Francois Gouget 42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Alexander Dorofeyev c4d75213ab ddraw/tests: Add tests for IDirect3DDevice7_Load. 2008-05-06 11:26:24 +02:00
Alexander Dorofeyev d6ecf5d14d ddraw: Return DDERR_NOCOLORKEY when there is no colorkey. 2008-05-06 11:26:15 +02:00
Alexander Dorofeyev 7e8be9ecc0 ddraw: Add full implementation of IDirect3DDevice7_Load. 2008-05-06 11:26:10 +02:00
Alexander Dorofeyev 30221f7bcd ddraw: Fix some texture blending modes. 2008-05-05 19:55:30 +02:00
Alexander Dorofeyev 8f72961e50 ddraw: Move handling of D3DRENDERSTATE_TEXTUREMAPBLEND from d3ddevice2 to d3ddevice3. 2008-05-05 19:55:13 +02:00
Alexander Dorofeyev edaaf63bd6 ddraw: Move handling of D3DRENDERSTATE_TEXTUREHANDLE from d3ddevice7 to d3ddevice3.
As supported by tests, there is no reason for this state to be handled by 
d3ddevice7, and moving it to d3ddevice3 prepares for the changes in next patch 
(setting TEXTUREHANDLE state can then go through SetTexture of d3ddevice3).
2008-05-05 19:55:05 +02:00
Alexander Dorofeyev d5db7615a2 ddraw/tests: Add test for deprecated render states in d3d7. 2008-05-05 19:54:48 +02:00
Roderick Colenbrander feb753c98d ddraw: Enable EnableAutoDepthStencil to receive depth support. 2008-05-02 11:33:38 +02:00
Alexandre Julliard dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
Jens Albretsen cf38e4c930 ddraw: Fixed device name. 2008-04-28 14:33:57 +02:00
James Hawkins 404afbaa3c ddraw: Remove a test that fails in VMs. 2008-04-28 13:27:51 +02:00
James Hawkins 2f97a71e36 ddraw: Fix tests that fail with the reference rasterizer. 2008-04-25 14:53:17 +02:00
Andrew Talbot 6edfd10868 ddraw: Remove unused variables. 2008-04-18 13:57:15 +02:00
Francois Gouget 4ba16af16b ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-04-14 12:40:22 +02:00
Alexander Dorofeyev df422cf0fb ddraw/tests: Add colorkeyed blit to p8_primary_test. 2008-04-11 13:05:12 +02:00
Alexander Dorofeyev d8ae8a8780 ddraw/tests: Add viewport clearing tests. 2008-04-11 13:05:03 +02:00
Alexander Dorofeyev 44143a97c7 ddraw: Temporarily activate viewport when clearing. 2008-04-11 13:04:34 +02:00
Alexander Dorofeyev 3e237c6199 ddraw: Set active_device in AddViewport. 2008-04-11 13:04:26 +02:00
Alexander Dorofeyev 6a48e405db ddraw: Add possibility to ignore lights in viewport_activate.
Mostly NOP regarding existing functionality, but makes it possible to skip light 
activation when it's not needed (like when clearing).
2008-04-11 13:04:19 +02:00
Francois Gouget 0d0c4a355b ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-04-07 13:36:18 +02:00
Austin English f4c4488df8 Spelling fixes. 2008-04-07 13:36:17 +02:00
Alexander Dorofeyev 18b9c2bb83 ddraw/tests: Extend p8_primary_test.
Additional tests for blitting and locking.
2008-04-04 11:43:45 +02:00
Austin English 825baa23a2 ddraw: Spelling fixes. 2008-04-03 11:39:45 +02:00
Alexander Dorofeyev 003f679cbe ddraw/tests: Additional colorfill test in p8_primary_test. 2008-04-03 11:31:32 +02:00
Alexander Dorofeyev 2caa797e76 ddraw: Set surface to NULL on failure in GetAttachedSurface. 2008-04-03 11:30:30 +02:00
Stefan Dösinger 2e26c176ec ddraw: Pass the NULL rectangle to IDirectDrawSurface::Unlock. 2008-04-02 20:29:17 +02:00
Stefan Dösinger c1503a2579 ddraw: Remove some leftover test debug output. 2008-04-02 20:29:09 +02:00
Stefan Dösinger ab7630fbe3 ddraw: Add a D3D7 cube map test.
The DirectDraw cube mapping interface has a few pitfalls. So far we have
a test testing the surface enumeration, this adds a rendering test. So
far everything used in the test works.
2008-04-02 20:29:01 +02:00
Stefan Dösinger 4066c2e2fd ddraw: Do not fail if D3D is not available. 2008-04-01 20:31:51 +02:00
Marcus Meissner 0ab270e41a ddraw/tests: Initialize ddprimpal. 2008-03-28 14:49:17 +01:00
Stefan Dösinger ee13cc4903 ddraw: Some EnumZBufferFormat fixes. 2008-03-27 11:10:29 +01:00
Stefan Dösinger 8662bd7555 ddraw: Fix some Z buffer formats. 2008-03-27 11:10:20 +01:00
Francois Gouget eab196b35a ddraw: Remove trailing spaces in ok() calls. 2008-03-27 11:05:40 +01:00
Stefan Dösinger 8869c0f147 d3d: De-pointerize the WINED3DCAPS structure. 2008-03-25 19:36:38 +01:00
Kolbjørn Fredheim a40185f12f ddraw: Don't clear the return value anymore, we fill the fields anyway, also a test for the behaviour. 2008-03-25 12:50:33 +01:00
Alexander Dorofeyev 7a012df64d ddraw/tests: Add test for ddraw 8-bit mode.
Adds rudimentary test for 8 bit mode ddraw (palettized primary surface). Tests 
things like GetDC and its palette handling and SetPalette affected by patches 
that follow.
2008-03-25 11:53:06 +01:00
Christian Costa c8837b8205 ddraw: DDRAW_dump_flags_nolf must not add LF. 2008-03-25 11:45:05 +01:00
Alexander Dorofeyev e2d8e291d6 ddraw: Fix vertex processing. 2008-03-24 20:41:19 +01:00
Alexander Dorofeyev eddbdbef47 ddraw/tests: Test executebuffer triangle instruction with zero count. 2008-03-24 20:40:18 +01:00
Alexander Dorofeyev bacd2340b4 ddraw/tests: Test SetPalette on non-palettized surfaces. 2008-03-24 20:40:05 +01:00
Alexander Dorofeyev 4b53dde0f5 ddraw: Make SetPalette fail for non-palettized surfaces. 2008-03-24 20:40:00 +01:00
Roderick Colenbrander 41310080a5 ddraw: Use a correct resource type and a valid format. 2008-03-21 15:20:21 +01:00
Cihan Altinay 49c682470c ddraw: Fix refcounting of palettes. 2008-03-17 15:16:03 +01:00
Denver Gingerich 248ae8f112 ddraw: Implement ForceRefreshRate registry entry for overriding DirectX refresh rate. 2008-03-11 15:30:37 +01:00
Rico Schüller 4188af790a ddraw: Fix diffuse and specular color types. 2008-03-06 12:46:46 +01:00
Francois Gouget 9381f22653 ddraw/tests: Don't use 0xaa to avoid any confusion when running with +heap. 2008-03-05 12:18:36 +01:00
Rob Shearman 48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Stefan Dösinger 069b9c8c1c ddraw: Catch No-op SetRenderTarget operations. 2008-03-03 20:45:54 +01:00
James Hawkins 26ad93947b janitorial: Remove links to any microsoft site. 2008-03-01 12:04:09 +01:00
Rob Shearman f2b77031c3 ddraw: Don't use typeof as it's not portable. 2008-02-27 14:52:24 +01:00
Günther Brammer df5116cc7d ddraw: Return a nullpointer as lpSurface in Lock() if the rect is invalid. 2008-02-25 19:50:30 +01:00
Roderick Colenbrander e2d70fff6b ddraw: Add yv12 detection support. 2008-02-22 12:04:01 +01:00
Alexander Dorofeyev 29d87c6cbf ddraw/tests: Add a test of D3DTBLEND_MODULATE with P8 texture. 2008-02-21 12:53:00 +01:00
Alexander Dorofeyev 9af59fb7f0 ddraw: Release interfaces when exiting with error. 2008-02-21 12:53:00 +01:00
Detlef Riekenberg 1eb52667ac ddraw/tests: Avoid endless loop, when T&L is not supported. 2008-02-20 12:06:28 +01:00
Michael Stefaniuc 01cba07624 ddraw: Add missing unlock on error path. Found by Smatch. 2008-02-19 20:54:50 +01:00
Alexander Dorofeyev 74c380cb7b ddraw/tests: Add test for palette handling in IDirect3DTexture_Load. 2008-02-19 13:39:24 +01:00
Alexander Dorofeyev cfa40a22c9 ddraw/tests: Split d3d1 initialization and destruction into separate functions.
Slight rewrite to make creating additional D3D1 tests easier.
2008-02-19 13:39:23 +01:00
Alexander Dorofeyev ed44f9d130 ddraw: Fix palette handling in IDirect3DTexture_Load.
This fixes a potential refcounting problem and makes the function fail with NULL
destination texture's palette and non-NULL source palette like it does on native.
2008-02-19 13:39:17 +01:00
Alexander Dorofeyev ddd0ec1670 ddraw/tests: Add test for branch instruction with non-zero offset. 2008-02-19 12:06:50 +01:00
Alexander Dorofeyev 4981eda895 ddraw: Fix executebuffer branching with non-zero offset.
Fixes a crash in Moto Racer 2.
2008-02-19 12:06:38 +01:00
Roderick Colenbrander 1079f37407 wined3d: When DDCAPS_ALLOW256 is set, palette entry 0 and 255 are filled with black and white. 2008-02-19 12:06:25 +01:00
Francois Gouget 4c8e218252 Assorted spelling fixes. 2008-02-15 12:09:24 +01:00
Reece H. Dunn 8354995482 ddraw: Spelling fixes in the d3d test output. 2008-02-06 13:49:45 +01:00
Stefan Dösinger 8ad3a1f49e ddraw: Some drivers return a refresh rate of 0. 2008-02-06 12:43:53 +01:00
Francois Gouget 20b41af9f1 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-02-05 12:19:37 +01:00
Francois Gouget d0794c4aeb Assorted spelling fixes. 2008-01-23 21:16:22 +01:00
Lei Zhang 8bbb3d68e1 ddraw: Register the DirectDraw 7 Object. 2008-01-23 11:31:42 +01:00
Alexander Dorofeyev 320e253805 ddraw/tests: Add test for D3DTBLEND_MODULATE. 2008-01-22 11:19:34 +01:00
Alexander Dorofeyev 6810ebb4c1 ddraw: Fix handling of alpha with D3DTBLEND_MODULATE. 2008-01-22 11:19:18 +01:00
Francois Gouget 44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Francois Gouget 7478d9c44d ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-01-16 12:46:09 +01:00
Alexander Dorofeyev d14ef91c92 ddraw/tests: Add test for rendering vertices with zero rhw. 2008-01-08 12:53:31 +01:00
Peter Dons Tychsen 6e8b7c4cef ddraw: Add missing pitch in callback from EnumDisplayModes(). 2008-01-04 13:55:12 +01:00
Andrew Talbot f074c0e162 ddraw: Remove unneeded casts. 2008-01-02 12:38:41 +01:00
Alexander Dorofeyev 18143f693b ddraw: Remove redundant iface<->impl casts in IDirect3DTextureImpl_Load.
The implementation pointer retrieved from interface ptr wasn't being used for
anything except retrieving same interface ptr back.
2007-12-31 17:48:39 +01:00
Alexander Dorofeyev 9dbdacbd82 ddraw: Release palette interfaces. 2007-12-31 17:48:16 +01:00
Alexander Dorofeyev f4337b4714 ddraw: Fix incorrect WARN text. 2007-12-17 12:38:43 +01:00
Francois Gouget 05170942de ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-12-10 12:06:09 +01:00
Alexander Dorofeyev 4051a09eb2 ddraw: Fix wrong initialization order in IDirect3DDevice vtable. 2007-12-08 19:54:51 +01:00
Stefan Dösinger f700cbe74b wined3d: Add an alpha blending test. 2007-12-07 16:26:43 +01:00
Stefan Dösinger f29d947f6a ddraw: Set X8R8G8B8 for 32 bpp. 2007-12-07 16:26:31 +01:00
Francois Gouget 90834020da ddraw: Modify DDRAW_dump_(DWORD|PTR|DDCOLORKEY|DDSCAPS2|pixelformat)() to print a trailing '\n'. 2007-12-07 14:52:56 +01:00
Francois Gouget 6a8f961e08 ddraw: Rename DDRAW_dump_flags_() to DDRAW_dump_flags_nolf() to clarify its difference from DDRAW_dump_flags(). 2007-12-07 14:52:51 +01:00
Andrew Talbot 1f73a97a5a ddraw: Remove unneeded casts. 2007-12-06 12:07:41 +01:00
Andrew Riedi 63f4b6f024 ddraw: DPRINTF -> TRACE. 2007-12-05 12:34:33 +01:00
Stefan Dösinger 3cc253c557 wined3d: Enabling too many lights is silently ignored.
I'm resending this patch because my reply to Henri's concern came too late. 
Henri noted that I am enabling lights that do not exist. Existing tests show 
that if no light is assigned to the index, LightEnable creates a light with a 
set of default parameters, so the tests should be fine.

From 9ee4c61805b50886f79e87d744b52f27b7b00b4e Mon Sep 17 00:00:00 2001
From: Stefan Doesinger <stefan@codeweavers.com>
Date: Thu, 29 Nov 2007 13:22:47 +0100
Subject: [PATCH] WineD3D: Enabling too many lights is silently ignored

This patch adds tests for all d3d versions that show that Windows
pretends that enabling more lights than supported succeeds. D3D_OK is
returned, and the light is reported as enabled.

What is not tested in this patch is the rendering output of this
situation, thus the FIXME is still written.
2007-12-03 13:44:07 +01:00
Stefan Dösinger 714991bf3f ddraw: Fix a test for Vista. 2007-11-07 12:08:07 +01:00
Stefan Dösinger f9dba29477 ddraw: Be less picky about float precision. 2007-11-07 12:08:00 +01:00
Stefan Dösinger 0d016254a0 wined3d: Don't test D3DDEVICE surfaces in dsurface tests. 2007-11-05 13:24:36 +01:00
Stefan Dösinger 848650d908 ddraw: Downgrade the SetCooperativeLevel FIXME to a TRACE. 2007-10-10 11:59:33 +02:00
Stefan Dösinger 7a445747ea ddraw: Do not fail on surface creation errors, skip instead. 2007-10-10 11:59:26 +02:00
Stefan Dösinger c5055fb3eb ddraw: Cope with Init3D failures. 2007-10-10 11:58:37 +02:00
Roderick Colenbrander 03fa9f8730 ddraw: Fix RegDeleteTreeA/W compile issues when building ddraw for Windows. 2007-10-01 14:17:09 +02:00
Stefan Leichter b78736a4bb ddraw: Remove 'recursive registry key delete' function. 2007-09-25 11:19:03 +02:00
David Hedberg 019cc506a8 ddraw: Enumerate additional devices in IDirect3D7_EnumDevices. 2007-09-10 16:47:30 +02:00
David Hedberg c53487b599 ddraw: Fix and test case for situation where DDSD_MIPMAPCOUNT is set and dwMipMapCount is 0. 2007-09-10 15:29:46 +02:00
Stefan Dösinger d0fdb1ea7e d3d: Add a test for double surface locking. 2007-08-31 11:25:19 +02:00
Stefan Dösinger a06e002e93 wined3d: Add a wined3d private WINED3DSBT_RECORDED. 2007-08-15 09:36:20 +02:00
Francois Gouget 5b375aec71 ddraw: Better match the PSDK types and fix the winapi_check warnings. 2007-08-08 15:32:03 +02:00
Stefan Dösinger 2d15cb8b27 d3d: Add a simple offscreen rendering test. 2007-08-08 15:32:00 +02:00
Stefan Dösinger 89dccc7c7c ddraw: Implement IDirect3DDevice7::DrawIndexedPrimitiveStrided. 2007-08-08 15:32:00 +02:00
Stefan Dösinger df75a7e007 ddraw: SetDisplayMode may fail. 2007-08-03 12:30:21 +02:00
Stefan Dösinger 1f4d71c0f6 ddraw: Some drivers return DDERR_INVALIDPARAMS if DXTn surfaces aren't supported. 2007-08-03 12:30:03 +02:00
Francois Gouget 5266e57975 Assorted spelling fixes. 2007-07-31 21:37:50 +02:00
Stefan Dösinger 17f1c29457 ddraw: Table fog may be unsupported. 2007-07-30 23:37:58 +02:00
Robert Millan 47c847663e ddraw: Remove thread safety FIXMEs. 2007-07-30 12:59:47 +02:00
Stefan Dösinger 430239b470 ddraw: Some d3d-only code fixes.
Vertex declarations are a d3d feature, thus they should be destroyed
before d3d is shut down in wined3d. The surface type should be reset
afterwards to prevent avoid gl surface afterwards and before a new
render target is created.
2007-07-24 13:40:29 +02:00
Francois Gouget 382329c103 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-07-09 11:45:53 +02:00
Stefan Dösinger def7122f3c ddraw: Y coords are inversed. 2007-07-06 19:29:48 +02:00
Stefan Dösinger f7597dee15 ddraw: Update the wined3d matrix if a current matrix handle is modified. 2007-07-06 19:29:39 +02:00
Paul Vriens a470ea6205 ddraw/tests: Use skip instead of trace. 2007-07-06 18:15:32 +02:00
Paul Vriens c92026739e ddraw/tests: Use skip instead of trace. 2007-07-06 18:15:26 +02:00
Francois Gouget a3317a5c01 Assorted spelling fixes. 2007-07-05 19:56:34 +02:00
Francois Gouget 090fd6d9d2 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-07-05 19:54:58 +02:00
Stefan Dösinger e4bf7ab578 ddraw: Implement IDirect3DViewport3::TransformVertices. 2007-07-05 19:52:27 +02:00
Stefan Dösinger 125b9b7dcf ddraw: Read the world matrix correctly. 2007-07-05 19:52:09 +02:00
Stefan Dösinger 5fa4de27bc ddraw: D3DOP_BRANCHFORWARD includes the current instruction size.
Native D3DRM puts a branchforward with offset 0 at the beginning of each
execute buffer. With the old code this used to get stuck in an endless
loop. This patch adds a test that shows that such a branchforward
terminates properly.
2007-07-05 19:52:01 +02:00
Stefan Dösinger c58b2f2283 ddraw: Materials in the execute buffer are handles. 2007-07-05 19:50:43 +02:00
Stefan Dösinger c0cc4d4219 ddraw: Fix an incorrect iface->impl cast. 2007-07-05 19:50:32 +02:00
Stefan Dösinger 58fb9dd5c0 ddraw: Z buffers can be attached to offscreen d3d devices. 2007-07-03 12:32:42 +02:00
Alexandre Julliard 7a7f416ace ddraw: Don't link against X libraries. 2007-06-26 17:44:36 +02:00
Michael Stefaniuc d6c2e6f067 ddraw: Fix missing unlock on an error path. Found by Smatch. 2007-06-26 11:57:56 +02:00
Stefan Dösinger 4f8eb6a32e wined3d: Clamp material power to 128.0. 2007-06-25 20:03:26 +02:00
Francois Gouget 73032be74a ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-06-25 13:25:39 +02:00
Stefan Dösinger fb269f9210 wined3d: Depthfill blits are allowed between BeginScene and Endscene. 2007-06-22 13:42:51 +02:00
Stefan Dösinger 208d38688a ddraw: Check for incorrect rectangles to DDrawSurface::Blt. 2007-06-22 13:42:30 +02:00
Stefan Dösinger e019cebd16 ddraw: Add a test for incorrect surface desc sizes for Lock(). 2007-06-22 13:42:24 +02:00
Stefan Dösinger bf23e5f3f7 ddraw: Test for incorrect surface desc sizes in GetSurfaceDesc. 2007-06-20 15:10:58 +02:00
H. Verbeet 785771272a wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead. 2007-06-06 12:10:47 +02:00
Stefan Dösinger 974784cde0 ddraw: Hold the Lock in IDirect3DViewport methods. 2007-06-05 12:22:23 +02:00
Stefan Dösinger f45684d547 ddraw: Hold the lock in IDirect3DVertexBuffer methods. 2007-06-05 12:22:14 +02:00
Stefan Dösinger 9aab44ded5 ddraw: Hold the lock in IDirect3DTexture methods. 2007-06-05 12:22:03 +02:00
Stefan Dösinger 6eb8e3fb6f ddraw: Hold the lock in IDirect3DLight methods. 2007-06-05 12:21:53 +02:00
Stefan Dösinger a2227de7af ddraw: Hold the lock in IDirectDrawPalette methods. 2007-06-05 12:21:44 +02:00
Stefan Dösinger d0de7e72ec ddraw: Hold the lock in IDirect3DMaterial methods. 2007-06-04 12:53:09 +02:00
Stefan Dösinger e38439bdfe ddraw: Hold the lock in IDirectDrawGammaControl methods. 2007-06-04 12:53:01 +02:00
Stefan Dösinger 0086d490a9 ddraw: Hold the lock in IDirectDrawClipper methods. 2007-06-04 12:52:56 +02:00
Stefan Dösinger d5d7d4dae4 ddraw: Hold the lock in IDirect3DDevice methods. 2007-06-04 12:52:40 +02:00
Stefan Dösinger ed3f6e8d32 ddraw: Hold the lock in IDirect3DX methods. 2007-05-31 13:07:54 +02:00
Stefan Dösinger 94127492f2 ddraw: Check the validy of IDirectDrawSurface::BltFast parameters. 2007-05-31 13:07:38 +02:00
Stefan Dösinger 8b6a3610bb ddraw: Hold the lock in IDirectDrawSurface methods. 2007-05-31 13:07:28 +02:00
Francois Gouget fa48cb042c Assorted spelling fixes. 2007-05-29 13:47:18 +02:00
Francois Gouget 30b7744472 ddraw/tests: Fix the Visual C++ double to float conversion warnings. 2007-05-29 13:47:03 +02:00
Francois Gouget 77440b098f ddraw/tests: Fix compilation with Visual C++ 2005. 2007-05-29 13:44:35 +02:00
Francois Gouget 47b6392b44 ddraw: Fix the name of DDSPD_IUNKNOWNPOINTER. 2007-05-29 13:17:42 +02:00
Detlef Riekenberg fb0a9291ea ddraw: Do not crash when Clipper is NULL. 2007-05-29 11:55:58 +02:00
Stefan Dösinger 83ba2c762d ddraw: Hold the dll lock in IDirectDraw methods. 2007-05-21 19:12:19 +02:00
Stefan Dösinger bfe631dfb9 ddraw: Hold the lock in creation functions. 2007-05-21 19:11:34 +02:00
Stefan Dösinger 5307dd2029 ddraw: Make the ddraw list lock a global dll lock. 2007-05-21 19:11:22 +02:00
Francois Gouget 0acb5810bf Assorted spelling fixes. 2007-05-15 18:09:16 +02:00
Marcus Meissner b7ac570f39 ddraw/tests: Check for failing to create surfaces. 2007-05-14 15:41:21 +02:00
Francois Gouget 72ed214932 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-05-14 14:25:10 +02:00
Stefan Dösinger 4295b18950 ddraw: Avoid fallout of failing tests. 2007-05-11 11:26:34 +02:00
Stefan Dösinger 5c48d504fc wined3d: Destroying the resource frees all private data.
Also adds a test for ddraw, d3d8 and d3d9.
2007-05-11 11:22:31 +02:00
Stefan Dösinger a5c484cbf3 ddraw: GetSurfaceDesc returns the surface memory while the surface is locked. 2007-05-11 11:21:44 +02:00
Stefan Dösinger e7b68eec34 ddraw: Use point filter for blit operations.
D3DTEXF_NONE is a special value for mipmapping which disabled
mipmapping, but it is not a valid mag / min filter parameter.
D3DTEXF_POINT is what we want
2007-05-11 11:21:29 +02:00
Stefan Dösinger 6e22f03654 ddraw: Remove all non-d3d7 capability flags. 2007-05-11 11:21:11 +02:00
Stefan Dösinger 1b94a5eefd ddraw: Fix stupid bug when setting surface client memory. 2007-05-10 11:40:50 +02:00
Stefan Dösinger df891b823a ddraw: Always set fullscreen mode in wined3d.
DDSCL_NORMAL is not set at initialization. Instead of making this a
& DDSCL_NORMAL || == 0 check just set fullscreen mode always. WineD3D
will catch NOP changes anyway.
2007-05-10 11:40:40 +02:00
Stefan Dösinger d9fef10b71 ddraw: Some caps fixes.
Cards at DirectX7 times did not support non power of 2 textures, and
some games check the capatiblity flags incorrectly. Rollcage expects the
D3DPTEXTURECAPS_POW2 (limitation) flag set and fails with the reference
rasterizer which support NP2 textures and doesn't have the cap set.
2007-05-10 11:40:01 +02:00
Stefan Dösinger bed50115ee ddraw: More tests and fixes on surface attachments. 2007-05-09 12:07:46 +02:00
Stefan Dösinger 28170f0474 wined3d: Implement environment bump mapping with GL_ATI_envmap_bumpmap. 2007-05-09 12:07:32 +02:00
Stefan Dösinger 9b867f4d91 ddraw: Forward the mag filter correctly to wined3d.
Fixes the erros when using anisotropic mag filtering in the d3d7
filter demo.
2007-05-08 18:28:29 +02:00
Stefan Dösinger 0fb41a8845 wined3d: Make the blit -> flip work for windowed rendering. 2007-05-08 18:28:08 +02:00
Stefan Dösinger d93e161b1f d3d: Move clippers from DDraw to wined3d. 2007-05-08 18:27:44 +02:00
Detlef Riekenberg 00028b0c37 ddraw/tests: Fix typos in messages. 2007-05-08 13:25:55 +02:00
Stefan Dösinger 00e37a81b2 ddraw: Primary surfaces always have screen size. 2007-05-07 21:43:09 +02:00
Stefan Dösinger 742260d418 ddraw: Adjust the d3d viewport when changing the back buffer.
WineD3D sets up the viewport according to the front buffer, so this
needs to be changed to the values of the render target passed when the
d3d7 device is created and this device turns out not to be the known
front or back buffer.
2007-05-07 21:42:59 +02:00
Stefan Dösinger 2ecacc619f ddraw: Fix reported caps on compressed surfaces.
Compressed surfaces in ddraw do not have a pitch, instead the full
surface size is reported. Also adds tests for the extact behavior and
surface flags set.
2007-05-07 21:42:33 +02:00
Francois Gouget 26553b6c1d ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-05-07 14:30:14 +02:00
H. Verbeet 0b9808761f ddraw: Add a surface locking test. 2007-05-04 13:41:37 +02:00
H. Verbeet 7b48db196f d3d: Fix the surface locking rectangle validation. 2007-05-04 13:41:13 +02:00
Stefan Dösinger 6acc0a151d ddraw: Forward all 4 world matrices to wined3d. 2007-05-03 14:24:26 +02:00
Stefan Dösinger d913744f1e d3d: Calculate the size of WINED3DFVF_XYZBx FVFs. 2007-05-03 14:24:16 +02:00
Stefan Dösinger ffae39c3f3 ddraw: Update the wined3d depth stencil on device creation, render. 2007-05-01 11:42:25 +02:00
Stefan Dösinger 378005442e ddraw: Cube map structure test. 2007-05-01 11:42:25 +02:00
Stefan Dösinger cdaf29f64e ddraw: Cube texture support. 2007-05-01 11:42:25 +02:00
Stefan Dösinger 94b3fddec8 d3d: Pass the cube face to Create*Texture's surface creation callback. 2007-05-01 11:42:25 +02:00
Stefan Dösinger 7ca369d9b6 ddraw: Store a WineD3DBaseTexture instead of a WineD3DTexture. 2007-05-01 11:42:24 +02:00
Andrew Talbot 0629946e65 ddraw: Exclude unused headers. 2007-05-01 11:42:24 +02:00
Francois Gouget 5a8fc34033 Assorted spelling fixes. 2007-04-30 12:35:11 +02:00
Stefan Dösinger a61e58dbf4 ddraw: Add a test for surface attachments. 2007-04-30 12:22:14 +02:00
Stefan Dösinger 9e3e799ca3 ddraw: Complex surfaces form a tree. 2007-04-30 12:22:06 +02:00
Stefan Dösinger 87544190a5 ddraw: Move the additional surface creation into a seperate function. 2007-04-30 12:21:21 +02:00
Stefan Dösinger d30c25be83 ddraw: Do not access the surface connection structure directly in SetPalette. 2007-04-30 12:21:09 +02:00
Stefan Dösinger b4d48c7fce ddraw: Search for d3d primary a bit differently. 2007-04-30 12:20:56 +02:00
Stefan Dösinger 88af9702f1 ddraw: Use EnumAttachedSurfaces for SetColorKey. 2007-04-27 11:43:45 +02:00
Stefan Dösinger a46012eff2 ddraw: Search for texture sublevels with GetAttachedSurface. 2007-04-27 11:43:36 +02:00
Stefan Dösinger c2ffffe1ff ddraw: Use EnumAttachedSurfaces to search for a render target. 2007-04-27 11:43:27 +02:00
Stefan Dösinger 86eb79b0c9 ddraw: Add a test for EnumSurfaces. 2007-04-27 11:43:17 +02:00
Stefan Dösinger 460f71dcf8 d3d: Fix ProcessVertices.
IDirect3DDevice9::ProcessVertices takes a vertex declaration, not a
vertex buffer. The source for ProcessVertices is taken from the
stateblock, not the vertex declaration.
2007-04-26 14:54:29 +02:00
Stefan Dösinger 0386eed91f ddraw: Get rid of FVFs.
Remove all IWineD3DDevice::SetFVF calls and instead create converted
vertex declarations and use them. The idea is to remove the FVF paths
from wined3d to simplify the code, and optimize the vertex declaration
codepath.
2007-04-26 14:54:17 +02:00
Andrew Talbot e4253fd8b9 ddraw: Constify some variables. 2007-04-23 14:42:06 +02:00
Stefan Dösinger 725057da47 d3d: Remove dependency on ddraw.h header. 2007-04-16 13:20:15 +02:00
Stefan Dösinger 8a5b6df483 d3d: Enumerate palettized formats for ddraw. 2007-04-16 12:12:34 +02:00
Stefan Dösinger 290f2eb146 wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
This is to allow StretchRect to pass the texture filter to WineD3D.
DirectDraw sets the texture filter to WINED3DTEXF_NONE, simmilar to all
other functions which do not need filtering.
2007-04-07 10:58:10 +02:00
Stefan Dösinger 1d4a4b75bc ddraw: When changing the back buffers also update the render target. 2007-03-29 21:00:25 +02:00
Francois Gouget d9e8a0f63e Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll. 2007-03-28 12:36:13 +02:00
Andrew Talbot 4eb936db33 ddraw: Replace inline static with static inline. 2007-03-20 13:00:45 +01:00
A C Hurst 8f14d4639d wined3d: Fix struct size calculation in EnumTextureFormats. 2007-03-19 12:23:29 +01:00
Stefan Dösinger 022e884342 wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d. 2007-03-19 12:17:18 +01:00
Stefan Dösinger 4b445124d3 direct3d: Add a fixed function fog test. 2007-03-15 12:14:50 +01:00
Stefan Huehner 51a7ca3440 Change some functions arguments from () -> (void). 2007-03-12 12:25:31 +01:00