Commit Graph

55 Commits

Author SHA1 Message Date
Christian Costa e64aae00e0 Handle more properly versions for Direct3D and Direct3DDevice
objects.
2005-02-14 11:09:46 +00:00
Paul Vriens 202b340a51 - use Interlocked* functions in AddRef and Release.
- store the result of the Interlocked functions and use only this.
2005-01-09 17:29:21 +00:00
Alexandre Julliard f5f7a1822c Removed some more uses of the non-standard ICOM_THIS macro. 2004-09-08 01:50:37 +00:00
Hans Leidekker fe442b21f7 Fix signed/unsigned comparison warnings. 2004-09-08 01:23:57 +00:00
Christian Costa 479c13b84e Implemented IDirect3DDevice{2,3}::GetLightState.
Fixed traces in execute buffers.
Updated copyright info.
2004-08-06 17:30:44 +00:00
Christian Costa a03c939a66 Add necessary AddRef/Release stuff to {Set/Get}CurrentViewport.
When changing parameters of a viewport, do the appropriate update if
it is current.
2003-10-14 01:16:42 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Lionel Ulmer 3057315863 - added a ddraw_fps debug channel
- checked what Windows does on empty surface description
- fix the GetTextureStageStage call
2003-07-26 20:33:23 +00:00
Lionel Ulmer e14233ae03 - Viewport hack to get some old D3D1 games to work
- TRACEing fix
2003-06-04 23:39:13 +00:00
Lionel Ulmer 4aba282bb8 - proper (tested on Win2K) reference counting for Direct3D object
- fix one case of reference counting on textures
- fix stupid bug in texture upload code
- yet another texture enumeration reordering
2003-06-04 23:31:39 +00:00
Lionel Ulmer a4d733ae5a - remove fogging too when doing the flush of the frame buffer
- handle dest rect in the Blt DEPTH_FILL case
- fix QueryInterface on the D3D Device
2003-05-22 03:38:22 +00:00
Christian Costa 1392c77d7e Remove all openGL calls in execute buffers and use the Direct3D7 APIs.
Enable retrieving the render target surface of a device through its
QueryInterface method.
Avoid lights updating when a viewport and a device have not been
associated to them.
Clear the Z buffer only when we're asked to by Checking D3DBTL_FILL
flag.
2003-05-20 17:49:40 +00:00
Lionel Ulmer 8daf96c203 - fix bug in 'Blt DEPTH_FILL' override
- added a lock around the flushing of a surface to the frame buffer
- optimize texture loading my minimizing the cases where a conversion
  needs to occur and also by reusing the allocated memory
2003-05-20 04:10:22 +00:00
Lionel Ulmer 11b1b94a67 - implement the TFACTOR texture stage state
- support Texture matrices
- various misc. clean-ups
2003-05-20 02:15:24 +00:00
Lionel Ulmer 86f69135c4 Added support for non-full screen viewports and clearing. 2003-05-19 23:03:38 +00:00
Lionel Ulmer a872c781ea - separate geometry tracing in a new debug channel (ddraw_geom)
- added handling for some new texturing ops
- prepare for addition of multi-texturing
- another way to fix the device enumeration for the reference device
- fix compilation with some glext.h files
- fix a bug in one texture conversion function
- added new texture format (but still texturing problems in 3DMark2000)
2003-05-12 03:09:17 +00:00
Lionel Ulmer 449f6b212f - added mipmapping support
- added locking for concurrent access to the D3D device
- improved tracing
- added support for most texture combine stages (inspired by the D3D8
  code)
- disable current lock / unlock code pending proper solution
2003-05-11 03:44:53 +00:00
Tony Lambregts 2e24a148bf Replace DPRINTF with TRACE. 2003-03-15 00:12:42 +00:00
Lionel Ulmer db9b5f74dc Trace after the matrix has been copied, not before. 2003-02-12 21:34:46 +00:00
Lionel Ulmer dff968b5f3 - fixed GetTransform
- implemented MultiplyTransform
2003-02-12 21:26:28 +00:00
Christian Costa 3268097dcd Implemented IDirect3DDevice7_Load. 2003-02-12 01:10:03 +00:00
Lionel Ulmer 1213c17489 - rewrote a little bit the state magagement to remove the RenderState
stucture and use only the state_block code
 - factorize some code between interface revisions
 - fix some smalls bugs
2003-01-07 23:08:31 +00:00
Christoph Frick 7f4cb0621b Implementation of (Get|Set)ClipPlane for d3d7. 2003-01-07 19:42:26 +00:00
Lionel Ulmer 330a1b5f2d Enable Z buffer by default. 2003-01-03 22:32:30 +00:00
Christian Costa b110a96226 Reenable device's default render states initialization. 2003-01-03 21:10:11 +00:00
Christian Costa 4fc7a8495a Beginning of state block.
Initialize the device with the right D3D default values.
Implements GetRenderState, GetTextureStageState and GetLightState.
2003-01-03 21:08:50 +00:00
Lionel Ulmer c064dcf50c - hack for one case of the ProcessVertices case
- some changes in the execute buffer to reuse the new Matrix code
- always reinitialize the enumeration structures in case some games
  modify them
- added support for the (unused) Reserved1 field in the FVF formats
- fix 32 bit texturing and added more checks
- remove some useless and annoying fixme
2003-01-03 21:07:22 +00:00
Lionel Ulmer 0114945b6d - create a function to set the various transformation matrices to
factorize the code between the various code path
- fixed some logging stuff
2003-01-03 21:05:38 +00:00
Lionel Ulmer 74c95ec008 - more thunking in the D3DVertexBuffer COM object
- added 'support' for GetInfo
2003-01-03 21:04:12 +00:00
Christian Costa bc2cf94d2f Reimplemented SwapTextureHandles. 2003-01-02 20:07:05 +00:00
Lionel Ulmer d70a2c0322 - beginning of Material and Light support for D3D7
- new rendering states supported
2003-01-02 20:01:54 +00:00
Lionel Ulmer eb6e830727 Implement GetTransform and rework a bit the matrices storage. 2003-01-02 19:53:43 +00:00
Lionel Ulmer 7a025001d3 - implemented GetTexture
- semi-stubbed ValidateTexture
- fixed some errors in logging
2003-01-02 19:52:22 +00:00
Lionel Ulmer ce3d96889f Added 'emulated' VertexBuffer support. 2003-01-02 19:46:46 +00:00
Lionel Ulmer 608da067ac - factorize Clear method between Viewport and Device
- some more rendering states handled
2002-12-24 01:03:04 +00:00
Lionel Ulmer 5f78568b53 Support viewports the D3D7 way. 2002-12-24 01:00:45 +00:00
Lionel Ulmer 90bf1f2ea8 Combine texturing for D3D3 and 7 by thunking 3 to 7. 2002-12-24 00:53:50 +00:00
Christian Costa 81ac4adbcb Remove useless FIXMEs since there is nothing to do in BeginScene and
EndScene.
2002-12-24 00:25:55 +00:00
Ove Kaaven 1f5315c80f Make sure that no files except unknwn.h include wine/obj_base.h
directly.
2002-12-05 20:33:07 +00:00
Lionel Ulmer 41fcb0bbe4 - implement the texturing the D3D3 way
- prepare for multi-texturing support
2002-12-02 18:59:11 +00:00
Lionel Ulmer 2b87b23321 Implemented GetRenderTarget. 2002-11-30 02:20:31 +00:00
Lionel Ulmer 5cb15cda5e Do not forget to AddRef the returned Direct3D interface. 2002-11-30 01:53:44 +00:00
Lionel Ulmer 43c3dc4d33 - Clean up all the D3D COM handling (but the underlaying code is still
as ugly as before).
- Handle properly (ie as on real Windows) negative values in
  rectangles during blitting.
2002-11-21 21:04:16 +00:00
Christian Costa b44822a4a2 Associate texture to the device when GetHandle is called and perform
the appropriate AddRef/Release.
Fix 3_3_2 pixel format.
Move some ENTER_GL() calls to the right place.
Fix some FIXME/TRACE calls.
2002-10-16 18:57:52 +00:00
Christian Costa 8534e08a02 Implement SwapTextureHandles method. 2002-09-30 18:52:06 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Francois Gouget e5ddd26dd7 When including config.h, include it first. 2001-10-14 16:18:52 +00:00
Alexandre Julliard 1922c72b8a Removed unnecessary inclusion of heap.h. 2001-07-25 00:43:29 +00:00
Dimitrie O. Paun 529da54394 Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ; 2000-11-27 23:54:25 +00:00