H. Verbeet
ae21e30118
wined3d: Implement GetCreationParameters (from a patch by Al Tobey).
2006-03-07 10:53:43 +01:00
Stefan Dösinger
270afeb5e8
wined3d: Define D3D usage flags in wined3d_types.h.
2006-03-07 10:53:02 +01:00
Stefan Dösinger
2f0c781988
wined3d: Add device caps to wined3d_types.h.
2006-03-07 10:51:34 +01:00
H. Verbeet
07004966a8
wined3d: Fix the relation between volumes and their container.
2006-03-06 20:08:36 +01:00
H. Verbeet
f7356a34c3
wined3d: Fix the relation between surfaces and their container.
2006-03-06 20:08:22 +01:00
H. Verbeet
fd2739b023
wined3d: Don't call glCompressedTexImage2DARB without allocatedMemory.
...
Don't call glCompressedTexImage2DARB if we haven't got allocatedMemory (yet).
Fix a small typo.
2006-03-06 20:01:05 +01:00
Vitaliy Margolen
46ecb15c5c
wined3d: Fix retrieval of driver adapter versions.
2006-03-06 11:43:00 +01:00
Stefan Dösinger
033769f94d
wined3d: Add d3d7 and d3d8/9 cap flags to wined3d_types.h.
2006-03-06 11:36:28 +01:00
Jason Green
6d30800db6
wined3d: Add a few more WINED3DFMT formats to be recognized.
2006-03-06 11:36:07 +01:00
Vitaly Budovski
3832eb7de4
wined3d: Added OpenGL 2.0 function definitions.
2006-03-06 11:12:14 +01:00
Vitaly Budovski
e5bad779d6
wined3d: Implemented WINED3DRS_DEPTHBIAS.
2006-03-04 16:20:22 +01:00
Vitaly Budovski
196eaa674c
wined3d: Added two sided stencil support to WINED3DRS_STENCILFUNC.
2006-03-04 16:18:39 +01:00
Vitaly Budovski
f2f59cae61
wined3d: Added two sided stencil support to WINED3DRS_STENCILFAIL,
...
WINED3DRS_STENCILZFAIL and WINED3DRS_STENCILPASS.
2006-03-04 16:18:18 +01:00
Vitaly Budovski
6bf561b7ba
wined3d: Implemented fallback for separate stencil function in WINED3DRS_CCW_STENCILFUNC.
2006-03-04 16:17:32 +01:00
Vitaly Budovski
7b55a0cff1
wined3d: Implemented fallback for separate stencil operation in WINED3DRS_CCW_STENCIL*.
2006-03-04 16:15:47 +01:00
Detlef Riekenberg
858be437c5
wined3d: Fix cut&paste typo.
2006-03-04 16:13:39 +01:00
Roderick Colenbrander
f8ed06ea3d
wined3d: Opengl 2.x compile fix.
2006-03-02 15:50:16 +01:00
Aric Cyr
252c4adb96
wined3d: Reverse GL_BGR to GL_RGB for the D3D RGB formats.
...
This fixes texture colours in many D3D games (verified with Age Of Mythology).
2006-03-01 20:05:11 +01:00
Vitaly Budovski
63585380a9
wined3d: Implemented WINED3DRS_CCW_STENCIL* render states.
2006-02-28 12:22:16 +01:00
Vitaly Budovski
5c8c0059ab
wined3d: Implemented WINED3DRS_SCISSORTESTENABLE.
2006-02-28 12:21:00 +01:00
Vitaly Budovski
4b10288b5b
wined3d: Implemented WINED3DRS_SLOPESCALEDEPTHBIAS.
2006-02-28 12:20:01 +01:00
Vitaly Budovski
c9a1134ce3
wined3d: Implemented WINED3DRS_ANTIALIASEDLINEENABLE.
2006-02-28 12:19:11 +01:00
Vitaly Budovski
64ccecfbab
wined3d: Added D3D9 render states.
2006-02-28 12:14:25 +01:00
Vitaly Budovski
c8480e25e7
wined3d: Fixed some typos and prevented divide by 0.
2006-02-28 12:13:59 +01:00
H. Verbeet
7d97f29c24
wined3d: Don't use GetDevice in IWineD3DSurfaceImpl_GetContainer, as
...
it adds a reference to the device that shouldn't be there.
2006-02-27 12:20:09 +01:00
Roderick Colenbrander
d13469c1d8
d3d8: Moved the remaining code over to WineD3D (based on patches by
...
Oliver Stieber).
2006-02-27 12:20:03 +01:00
Roderick Colenbrander
b24e69dc38
d3d8: Move the capability detection code over to WineD3D.
...
Let the few existing parts which need the capabiliteis use the WineD3D
capability structure (gl_info). This info structure contains next to
'flags' inidicating certain features also all GL/GLX functions
pointers. Because D3D8 moves over to the wined3d gl_info structure all
the gl prototypes in d3dcore_gl.h were unneeded and removed.
2006-02-21 11:28:58 +01:00
Roderick Colenbrander
e64a2fdf9e
wined3d: Set the texture size for d3d8.
2006-02-16 12:10:21 +01:00
Stefan Dösinger
46e8d67787
wined3d: Update the glOrtho between 2 rhw draws if the viewport was changed.
2006-02-13 13:25:21 +01:00
H. Verbeet
7a4b59b0c2
wined3d: Don't keep a reference to the container, as it creates a
...
circular reference.
2006-02-13 13:23:58 +01:00
Francois Gouget
0ff18f58fa
wined3d: Protect float.h inclusion.
2006-02-13 13:23:42 +01:00
Jan Zerebecki
da2d1f883b
wined3d: Make the returned driver version similar to windows.
2006-02-11 12:16:29 +01:00
Jan Zerebecki
41e5478cdd
wined3d: Extend debug_d3drenderstate with missing states.
2006-02-11 12:15:31 +01:00
Louis Lenders
25c885e269
wined3d: Prevent crash in setup_light.
2006-02-11 12:14:19 +01:00
H. Verbeet
c2fe85e658
wined3d: Release the vertex declaration during stateblock cleanup.
2006-02-10 14:52:27 +01:00
H. Verbeet
bac34c35aa
wined3d: Release the container during surface / volume cleanup.
2006-02-10 14:52:20 +01:00
Christoph Frick
c99cab705e
wined3d: Support for WINED3DFMT_A8B8G8R8.
2006-02-09 12:07:40 +01:00
Christoph Frick
61f8ef7936
wined3d: Better warn/fixme for query handling.
2006-02-09 12:07:30 +01:00
Roderick Colenbrander
c7b58749a1
wined3d: Added CopyRects method (based on a patch by Oliver Stieber).
2006-02-07 16:51:39 +01:00
H. Verbeet
ff08986d01
wined3d: Always return the number of elements in the vertex
...
declaration in IWineD3DVertexDeclarationImpl_GetDeclaration9.
2006-02-07 12:26:34 +01:00
H. Verbeet
1c4a94b0ba
wined3d: Don't set the container to the device for standalone surfaces.
2006-02-07 12:26:26 +01:00
H. Verbeet
b994d057ac
wined3d/d3d9: Cleanup GetContainer for volumes.
2006-02-07 12:26:10 +01:00
H. Verbeet
2200f3e2ca
wined3d/d3d9: Cleanup GetContainer for surfaces.
2006-02-07 12:25:59 +01:00
Roderick Colenbrander
694efd7c6f
wined3d: Texture fixes.
...
Set video memory capabilities, add some checks to SetTexture and
update some comments.
2006-02-06 20:57:42 +01:00
H. Verbeet
bd8db45e44
wined3d: Update the QueryInterface functions of IWineD3DBase subclasses.
2006-02-06 11:32:41 +01:00
H. Verbeet
c6515ab307
wined3d: Update refcounts when storing references in IWineD3DStateBlockImpl_Capture.
...
Move TRACEs to the top of their code blocks.
2006-02-06 11:32:13 +01:00
H. Verbeet
b9193cc93f
wined3d: Release the correct vertexdeclaration in
...
IWineD3DDeviceImpl_SetVertexDeclaration.
2006-02-06 11:31:57 +01:00
H. Verbeet
fe7f2bad15
wined3d: Also update reference counts when we're recording a stateblock.
2006-02-06 11:31:17 +01:00
H. Verbeet
e43cfb1a68
wined3d: Fix SetContainer.
...
Add/Release references to the container.
Change the type of the container from IUnknown to IWineD3DBase.
2006-02-06 11:30:48 +01:00
H. Verbeet
bcfa7dcf7d
wined3d: Downgrade a FIXME to a TRACE.
2006-02-06 11:30:27 +01:00
H. Verbeet
c72fce011d
wined3d: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.
2006-02-05 12:19:22 +01:00
Vitaly Budovski
3c17322e75
wined3d: Fixed point sprite scaling when size < 1.0f.
2006-02-04 17:07:36 +01:00
Roderick Colenbrander
da512ca655
wined3d: Add a break which got lost in the POINTSCALEENABLE fix.
2006-02-03 18:51:30 +01:00
Vitaly Budovski
8f3c98fdfd
wined3d: Fixed WINED3DRS_POINTSPRITEENABLE.
2006-02-03 12:37:46 +01:00
Vitaly Budovski
dbff6d59e8
wined3d: Corrected implementation of WINED3DRS_POINTSCALEENABLE.
2006-02-03 12:34:44 +01:00
Vitaly Budovski
4279bcc5a8
wined3d: Implemented WINED3DRS_EDGEANTIALIAS.
2006-02-03 12:33:26 +01:00
Vitaly Budovski
6de3620a9c
wined3d: Implemented WINED3DRS_MULTISAMPLEANTIALIAS.
2006-02-03 12:31:02 +01:00
Vitaly Budovski
d599037c4e
wined3d: Added support for ARB_POINT_PARAMETERS.
2006-02-02 13:50:31 +01:00
H. Verbeet
12805f08aa
wined3d: Fix a few TRACEs in pixelshader.c.
2006-01-20 16:13:57 +01:00
H. Verbeet
f5c2e85b46
wined3d: Return the correct pixelshader in
...
IWineD3DDeviceImpl_GetPixelShader.
2006-01-20 16:13:12 +01:00
H. Verbeet
4bd8b60bd3
wined3d: A shader isn't guaranteed to have a vertex declaration, so
...
add a NULL check for that.
2006-01-20 16:13:03 +01:00
H. Verbeet
b884072687
wined3d: Better version string parsing for VENDOR_NVIDIA in
...
IWineD3DImpl_FillGLCaps.
2006-01-19 12:39:37 +01:00
H. Verbeet
093a034f7f
wined3d: In IWineD3DImpl_FillGLCaps use glGetString instead of
...
glXGetClientString to retrieve the OpenGL vendor.
2006-01-19 11:55:34 +01:00
Francois Gouget
6526c3772d
Add trailing '\n's to ok() calls.
...
Remove spaces before '\n' in traces.
2006-01-03 12:10:37 +01:00
Raphael Junqueira
ee5d72b136
wined3d: Added support for WINED3DFMT_X4R4G4B4.
2005-12-31 13:13:34 +01:00
H. Verbeet
4e7b2557b5
wined3d: Cleanup shader constants code a little bit.
...
Improved bounds checking.
2005-12-20 11:46:52 +01:00
Oliver Stieber
a57790f46a
wined3d: Vertex declaration cleanup.
...
Clean up constants and the wine declaration when the vertex
declaration is destroyed.
2005-12-16 12:49:38 +01:00
Oliver Stieber
8ff9a7eb55
wined3d: Allow NULL multi sample quality.
...
Allow MultiSampleQuality to be passed as NULL, this is a
requirement for DirectX 8 and lower.
2005-12-16 12:49:22 +01:00
Ragnvald "Despair" Maartmann-Moe IV
3e495fe465
wined3d: Fix matrix copy/paste bug.
2005-12-16 12:39:07 +01:00
Oliver Stieber
74e28a354f
wined3d: Vertex declaration recording state.
...
Stop SetVertexDeclaration from reference counting if a stateblock is
being recorded.
2005-12-16 12:38:24 +01:00
Oliver Stieber
e76969b0d6
wined3d: Internal reference counting.
...
Change most references to resources parent into references to the
resource, so that external reference counts match DirectX but object
aren't released if they are still referenced by the stateblock.
2005-12-15 10:25:47 +01:00
H. Verbeet
0f43cb2f38
wined3d: Return the correct parent in IWineD3DVertexDeclarationImpl_GetParent.
2005-12-14 11:29:17 +01:00
H. Verbeet
dabcbe83e7
wined3d: Return the correct vertex declaration.
...
In IWineD3DDeviceImpl_GetVertexDeclaration, return the vertex
declaration in This->stateblock instead of the one in
This->updateStateBlock.
2005-12-14 10:50:27 +01:00
H. Verbeet
6077c63feb
wined3d: Don't change the shader's refcount in SetVertexShader and
...
SetPixelShader.
2005-12-13 11:11:01 +01:00
Oliver Stieber
ea942e1e75
wined3d: Cube texture named constants.
...
Update cubetexture so that names constants instead of numeric
constants are used for the facetype and also add some additional
checks where facetype is passed as a parameter to the function.
2005-12-13 11:10:20 +01:00
Oliver Stieber
7c482cb9a1
wined3d: Vertex shader 8 support.
...
Start to add support for DirectX 8 vertex shaders, constants and
registers are now correctly assigned and loaded allowing support for
most basic d3d8 shaders.
2005-12-09 11:23:52 +01:00
H. Verbeet
c73679e4eb
wined3d: Set pixel shader version correctly in IWineD3DPixelShaderImpl_SetFunction.
2005-12-03 18:18:58 +01:00
H. Verbeet
246b07de7c
wined3d: Return the correct parent in IWineD3DPixelShaderImpl_GetParent.
...
Remove an unnecessary cast.
2005-12-03 18:10:56 +01:00
H. Verbeet
4880c586d8
wined3d: return D3DERR_INVALIDCALL when calling BeginStateBlock and
...
already recording.
2005-12-03 18:04:26 +01:00
Francois Gouget
5127dc9f49
Assorted spelling fixes.
2005-12-02 16:15:09 +01:00
Willie Sippel
fbfb971646
Added more Nvidia card IDs.
2005-11-30 19:45:45 +01:00
Raphael Junqueira
0e68b671f4
Add support for Intel drivers version string.
...
Update default driver version (nvidia).
2005-11-30 12:02:45 +01:00
Oliver Stieber
aa9ce3577a
Added support for vertex and pixel shader constants that have no type
...
i.e. they haven't been set yet or are clear.
2005-11-29 17:05:54 +01:00
Oliver Stieber
5903c5df1b
Stop reporting not having swapchain 0 as an error and add an internal
...
variable instead of modifying a parameter.
2005-11-28 10:59:41 +01:00
Oliver Stieber
c622cd7c24
Correct some errors in the way vertex declarations for directx 8 are
...
parsed and add offset support.
2005-11-28 10:59:22 +01:00
Oliver Stieber
d3c33dc018
Correct the matrix sizes in software shaders and remove an erroneous
...
parameter from lrp.
2005-11-28 10:39:48 +01:00
Alexandre Julliard
0ec7e1a591
Renamed all .cvsignore files to .gitignore.
2005-11-26 13:10:33 +01:00
Francois Gouget
6d442aeb34
Assorted spelling fixes.
2005-11-23 20:14:43 +01:00
Oliver Stieber
30ad95b6cd
Corrects an error in the _m3xm3 shader function in pixel and vertex
...
shaders.
2005-11-22 15:01:55 +00:00
Oliver Stieber
932815d6f0
Implement a pixel shader parser and cross compiler. All version of
...
shaders up to 3 should be parsed correctly, but only shaders 1-1.4
will be cross compiled.
2005-11-21 16:27:55 +00:00
Oliver Stieber
bcb4201130
Disable support for creation FMT_Unknown textures. This gets most of
...
the d3d8 demos from www.codesampler.com working.
2005-11-17 11:40:43 +00:00
Oliver Stieber
da29023d7a
Clear the z and stencil buffers at the end of the scene, this fixes a
...
problem with the solid node bsp demo from www.codesampler.com as well
as a lot of blank screens in some other demos.
2005-11-17 11:05:12 +00:00
Raphael Junqueira
705aec5a6f
- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
...
- use D3DCOLOR macros instead of using shift + masks
- fix a bug where diffuse.lpData checked instead of specular.lpData
- implement color fixup on ARB VShader compilation code:
-> on input parameters using swizzle
-> add is_color parameter on vshader_program_add_param
2005-11-15 12:03:13 +00:00
Oliver Stieber
a8d9a2a4ac
Fix an intermittent lockup with ATI's driver, I expect the problem is
...
trying to clear the display before it's visible. Also correct the
clear alpha value.
2005-11-14 12:28:59 +00:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Francois Gouget
f4c0524ec6
Assorted spelling and case fixes.
2005-11-10 11:39:07 +00:00
Raphael Junqueira
c4569d9298
Define GL_EXT_framebuffer_object and GL_EXT_pixelbuffer_object openGL
...
specs.
Support Mesa GL_VERSION on parse.
2005-11-10 11:04:59 +00:00
Raphael Junqueira
2e9bff702c
Fix parsing of version number.
2005-11-08 12:47:04 +00:00
Oliver Stieber
f4e290ff46
Fixed an error in Swapchain_GetFrontBufferData.
2005-11-08 10:55:49 +00:00
Oliver Stieber
c62e978d54
Verify that the texture coordinate used in DrawStridedSlow is in range
...
before trying to referencing the associated data.
2005-11-07 11:13:26 +00:00
Oliver Stieber
39d6e30db0
Prevent SetFVF from clearing down the vertex declaration of the FVF is
...
zero. This is required for Prince of Persia, The sands of time.
2005-11-07 11:12:38 +00:00
Oliver Stieber
0e3a3555e9
Tidy up UpdateTexture and add support for updating cube textures.
2005-11-04 12:39:17 +00:00
Oliver Stieber
f52f6ce93d
Add support for updating to D3DFMT_UNKNOWN surfaces and tidy up update
...
surface a little.
2005-11-04 11:13:45 +00:00
Oliver Stieber
d6fcc69ddb
Implement D3DFMT_UNKNOWN surfaces, this seems to be used a lot in d3d8
...
but I haven't found any d3d9 application that uses D3DFMT_UNKNOWN
surfaces yet.
2005-11-02 20:01:54 +00:00
Oliver Stieber
1f2a9e2c31
Move the softwareVertexProcessing flag from the stateblock to the
...
device because its state shouldn't be recorded in a stateblock.
2005-10-29 10:30:36 +00:00
Oliver Stieber
473cac840b
Correct the number of parameters expected for the LRP function.
2005-10-27 10:23:53 +00:00
Oliver Stieber
483320c484
Changed the way that 24bit and 32bit Adapter and Buffer formats are
...
reported allowing EVE online to get past the startup screen and
allowing the Fur demo (amongst others) to run in a window, as under
windows, instead of in fullscreen mode.
2005-10-12 21:07:27 +00:00
Oliver Stieber
44b4777972
Add checks for ARB_vertex_program before allowing vertex shaders to
...
use ARB_vertex_program.
2005-10-11 20:27:54 +00:00
Oliver Stieber
0fbf69fcf8
Report unrecognized opcodes as FIXMEs instead of TRACEs so that they
...
are easier to spot and fix.
2005-10-10 19:52:49 +00:00
Oliver Stieber
80c60f5bad
Provide looser device matching for backbuffer and depth buffer
...
formats. It should allow some games and applications to run without X
being in the correct backbuffer format (e.g. 16 bit games will run
with a 24bit X backbuffer).
2005-10-04 15:50:57 +00:00
Marcus Meissner
0a7de6a758
Use correct minLookup[] array entry.
2005-10-03 10:15:08 +00:00
Vincent Béron
5eae622f44
Don't define some functions/variables if they won't be used after in
...
wined3d.
2005-09-29 10:47:59 +00:00
Alexandre Julliard
7e22be4d84
We are no longer generating .dbg.c files.
2005-09-29 10:35:58 +00:00
Oliver Stieber
effc262f9f
Added support for backbuffer with the formats A1R5G5B5 and X1R5G5B5.
2005-09-29 10:31:43 +00:00
Oliver Stieber
b3563daca2
Implement state tracking for pixel shader constants.
2005-09-28 10:13:00 +00:00
Oliver Stieber
c99a3fafef
Change the format of surface_SaveSnapshot to TGA from PPM and add
...
support for compressed textures and an alpha channel.
2005-09-27 10:49:59 +00:00
Oliver Stieber
2b8a7dca38
Correct a problem with locking nonpower 2 back and front buffers.
2005-09-27 09:32:29 +00:00
Francois Gouget
a8c7284f92
Assorted spelling fixes.
2005-09-26 10:58:41 +00:00
Oliver Stieber
9e6957bbdc
Optionally repack nonpower 2 textures to the expected span length when
...
a textures is locked. This is necessary for buggy games like Warhammer
40k that don't work with the odd span sizes produce by default
nonpower 2 support.
2005-09-23 11:08:03 +00:00
Oliver Stieber
357a484a7e
Enable dxt2 and dxt4 compressed textures to be created via
...
Device_CreateSurface.
2005-09-23 10:48:01 +00:00
Oliver Stieber
0fac2d96fc
Clean up all the objects bound to the device when the device is
...
destroyed as a result of its ref count reaching zero.
2005-09-23 10:07:46 +00:00
Alexandre Julliard
0ec0f048e6
Removed unused debug channels.
2005-09-22 10:44:40 +00:00
Oliver Stieber
329d017db3
Start to implement TestCooperativeLevel.
2005-09-21 10:55:03 +00:00
Oliver Stieber
0c2fcf2efe
Added support for state management of vertex shader constants via
...
stateblocks.
2005-09-21 10:19:29 +00:00
Oliver Stieber
5ea96a851f
Implemented occlusion queries using either GL_ARB_occlusion_query or
...
GL_NV_occlusion_query.
2005-09-21 09:43:13 +00:00
Oliver Stieber
b7603859f3
Return the adaptor mode as X8R8G8B8 when BPP is 24 or 32 bits.
2005-09-19 15:25:07 +00:00
Oliver Stieber
4752553d57
Prevent CheckDepthStencilMatch from causing problems if there is a
...
current active OpenGL context.
2005-09-19 14:31:21 +00:00
Oliver Stieber
7df17cecce
Stop vertex shader constants from being set at the same time as the
...
vertex shader when a stateblock is applied.
2005-09-19 14:30:34 +00:00
Alexandre Julliard
c6b005ac69
Fixed some more traces to use the right printf format and avoid
...
typecasts.
2005-09-12 14:12:46 +00:00
Karsten Elfenbein
13fc2f88d6
Added A2R10G10B10 and D3DFMT_D24FS8 modes to all other functions.
2005-09-07 09:25:26 +00:00
Oliver Stieber
f7413fd63f
Implemented point sprites using ARB_POINT_SPRITE extension.
2005-09-03 09:36:48 +00:00
Oliver Stieber
55124ec05e
Added the tracking of stream frequency and flags. Stream flags and
...
frequency aren't handled at the moment.
2005-09-02 11:17:17 +00:00
Oliver Stieber
33b2c1fd3c
Added support for DXT2 and DXT4.
2005-08-29 12:20:02 +00:00
Oliver Stieber
f1a2ee521d
Implemented IWineD3DDevice_GetRenderTargetData.
2005-08-29 10:15:47 +00:00
Oliver Stieber
42eff0f92b
Moved GetRasterStatus from device to swapchain.
2005-08-27 09:58:53 +00:00
Oliver Stieber
52a63149dc
Change SetDirty in texture to pass the value of dirty instead of
...
always passing TRUE.
2005-08-27 09:23:06 +00:00
Mike McCormack
93ab695a5c
Fix gcc 4.0 warnings.
2005-08-26 08:53:31 +00:00
Oliver Stieber
2af36c646e
Implemented stubbed out pixel shaders and their states in wined3d.
2005-08-25 19:24:21 +00:00
Oliver Stieber
0e0ff51842
Update the implementation of GetFrontBufferData in stateblock.
2005-08-23 19:59:27 +00:00
Oliver Stieber
3f24b9164d
Fix quite a few texturing problems and cases where text isn't being
...
correctly displated.
2005-08-22 10:07:10 +00:00
Oliver Stieber
45033446bb
Tidy up some formatting, improve error handling and error logging and
...
fix a couple of spelling mistakes.
2005-08-22 09:13:49 +00:00
Oliver Stieber
1be54d8b79
Integrate hardware vertex shaders into the drawing pipeline.
2005-08-19 10:05:00 +00:00
Oliver Stieber
2c0e97e641
Copy the parser and cross compiler from d3d8 and update everything to
...
vertex shaders 3.0.
The Parser will now display the input shader in DirectX style, and the
cross compiler now generates valid ARB_VERTEX_PROGRAM programs and
outputs the result in ARB_VERTEX_PROGRAM style.
Support for a number of extended attributes has been added, but this
may not be complete, and dereferencing from loop counters isn't
properly parsed yet.
2005-08-17 11:34:03 +00:00
Oliver Stieber
9b0b803b47
Add support for vertex shader constants to the stateblock.
2005-08-17 10:27:01 +00:00
Francois Gouget
fae73a1090
Assorted spelling fixes.
2005-08-17 09:56:24 +00:00
Oliver Stieber
80cbb93163
Tidy up vertex shaders and bring the current code inline with the rest
...
of wined3d.
2005-08-17 09:54:54 +00:00
Francois Gouget
bcd56fe0e5
Assorted spelling fixes.
2005-08-12 18:22:06 +00:00
Mike McCormack
b814be9814
Fix gcc 4.0 warnings.
2005-08-11 10:57:47 +00:00
Oliver Stieber
2e851544dd
Allow the palette to be set and retrieved.
2005-08-11 10:57:20 +00:00
Oliver Stieber
313b01073c
Track the state of softwareVertexProcessing.
2005-08-11 10:31:40 +00:00
Oliver Stieber
12a4bda618
Correct the starting values of MIN, MAX and MIP filter, they now match
...
the initial values in opengl.
2005-08-11 10:31:04 +00:00
Oliver Stieber
bbc4f86aeb
Fix stateblock loop errors.
2005-08-08 17:59:02 +00:00
Oliver Stieber
4e0f6a4501
Allow the WINED3DSBT_IMPL to be applied so that states can be synced
...
between render target contexts.
2005-08-08 11:01:17 +00:00
Oliver Stieber
ec72ef14b5
Remove dxguid dependency.
2005-08-08 11:00:56 +00:00
Oliver Stieber
6b91f5b31c
Set the apha channel to opaque when locking X8R8G8B8 backbuffers.
2005-08-03 21:17:08 +00:00
Oliver Stieber
e31bc6cea4
Moved support for non power 2 texture to hardware.
...
Fix for the texture state separation patches, ApplyTextureStates is
now called instead of being commented out.
2005-08-03 19:49:05 +00:00
Oliver Stieber
1f05577395
Improve on a fixup for the difference between opengl and directx pixel
...
centering of vertexes.
2005-08-03 19:14:19 +00:00
Oliver Stieber
bb6f9b022b
Move the setting of states from device to basetexture, states that
...
relate to the opengl texture object will only be updated when they are
out of sync, this reduces the number of texture object state changes
during game play in Axis and allies from several hundreds to 0 or 1.
2005-08-03 11:00:28 +00:00
Oliver Stieber
d344162f41
Separate the setting of the DirectX texture and sampler states from
...
the setting of OpenGL states (now in applyTextureStateState and
applySamplerState).
2005-08-01 10:58:31 +00:00
Oliver Stieber
5615513877
Separate the management of DirectX states and openGL states.
2005-08-01 09:20:55 +00:00
Oliver Stieber
d15e2f1472
Fixed an off by one error in enumdisplaymodes, allowing sims 2 to
...
start up.
2005-07-30 19:11:38 +00:00
Oliver Stieber
386470bedc
Tidy up some of the formatting in drawprim and add missing strided
...
data.
2005-07-30 19:06:14 +00:00
Oliver Stieber
cc884e0ae6
Validate that the texture is no larger than the graphics cards largest
...
supported texture.
2005-07-30 19:05:58 +00:00
Mike McCormack
c6602b406b
Signed warning fixes.
2005-07-28 18:33:26 +00:00
Mike McCormack
8955ac43a3
gcc 4.0 -Wpointer-sign fixes.
2005-07-28 10:16:21 +00:00
Oliver Stieber
83f8704ba3
Return all elements when getDeclaration is called with pnumelements
...
set to 0.
2005-07-28 10:15:35 +00:00
Oliver Stieber
c93da09265
Changed swapchains held by the device from an array to a linked
...
list. Also provide a notification function that that the swapchain can
be removed when it is released.
2005-07-27 15:33:17 +00:00
Oliver Stieber
052d108bf5
DirectX uses a R/Z transform to translate a texture but under OpenGL a
...
Q transform must be used instead.
2005-07-26 20:01:29 +00:00
Oliver Stieber
52b5842f70
Remove a load of IWineD3DSurface * casts that are no longer required.
2005-07-26 18:56:18 +00:00
Oliver Stieber
7cb748fed2
Makes sure any internal reference counting is passed onto the parent,
...
any objects referenced by the internal stateblock are released when
the stateblock is released (we don't reference count while a
stateblock is recording, so recorded stateblocks have no references to
clean up).
2005-07-26 18:49:30 +00:00
Oliver Stieber
5b9ddcce44
Correct a regression issue with per-app settings.
2005-07-26 11:14:38 +00:00
Oliver Stieber
ea6189e04b
Implement resource tracking, require for reset and evict managed
...
resources and provides extra sanity checks.
2005-07-26 10:34:15 +00:00
Raphael Junqueira
cc8762a91e
- add a new settings for vbo support
...
- use a struct to handle wined3d settings
- prepare VBO using some abstraction APIs
2005-07-24 17:11:33 +00:00
Gerald Pfeifer
8d43d251b7
Remove unused variable in primitiveConvertToStridedData().
2005-07-22 18:27:04 +00:00
Raphael Junqueira
e2a2b5f6d5
- cleanup wined3d settings init (now closing opened registry keys)
...
- support per application settings
2005-07-22 18:26:05 +00:00
Francois Gouget
bd19d67ad1
Assorted spelling fixes.
2005-07-22 09:06:03 +00:00
Oliver Stieber
f8079b6947
Correct a problem with the way that FVF vertex arrays containing
...
blends or orthographic is calculated.
2005-07-21 11:01:19 +00:00
Oliver Stieber
2125fa9d37
Fixed regression that occurred because changes to texture loading were
...
committed before changes to textures and states to support the change
were committed.
2005-07-21 10:32:48 +00:00
Oliver Stieber
948563267e
Implement the use of PBuffers for offscreen textures.
2005-07-19 11:39:24 +00:00
Oliver Stieber
7d3ba6f562
Implemented a tidied up IWineD3Device_ColorFill.
2005-07-18 10:32:00 +00:00
Oliver Stieber
18f3fcb1c2
Set mipmap levels correctly (even with ATI's buggy drivers).
2005-07-18 09:07:17 +00:00
Oliver Stieber
e0241349c5
Dirty the surface (instead of the texture) when a render targets is
...
send and endscene is called to make sure that the correct surface is
updated.
2005-07-18 09:07:03 +00:00
Oliver Stieber
41718267be
Fixed a division by 0 in setup_light that occurs with range is zero.
2005-07-15 16:32:25 +00:00
Oliver Stieber
43466542a6
Correct a missplaced #if in IWineD3DDeviceImpl_CleanRender.
2005-07-15 09:57:52 +00:00
Oliver Stieber
fe80b4ea48
Implemented Get/Set/Free private data in resource.
2005-07-15 09:54:57 +00:00
Oliver Stieber
3aefc4e4a4
Fixed a bug in Preload caused be a missing brace around a for loop,
...
slightly improved the way that errors are handled by passing back hr
from some function calls.
2005-07-14 12:31:05 +00:00
Stefan Huehner
190e1597ff
Fix some missing-declarations warnings.
2005-07-14 12:19:53 +00:00
Oliver Stieber
b220ce1343
Correct a few formats that were incorrect.
2005-07-13 19:38:39 +00:00
Oliver Stieber
9253e0e39c
Tidy up some comments and formatting.
2005-07-13 14:15:54 +00:00
Oliver Stieber
6a032491d3
Added basic memory management and tracking to wined3d.
2005-07-13 11:34:55 +00:00
Oliver Stieber
9f7e794ca6
Implement UpdateTexture and UpdateSurface in wined3d.
...
Allow NULL members of WINED3DSURFACE_DESC to be set to Surface_GetDesc
so that the whole structure doesn't have to be filled just to get back
one value.
2005-07-12 17:02:47 +00:00
Oliver Stieber
13621056db
Move parameters relating to opengl on the surface structure on to a
...
glDesciption member.
Removed Level and Target from LoadTexture, and reduced the dependency
on surface->device.
Fixed a couple of compiler warnings in d3d9.
2005-07-11 20:38:27 +00:00
Oliver Stieber
520c2f0870
Implemented basic non-power 2 texture in wined3d.
...
Also fixed a typo in drawprim that was causing vertex declarations to
crash.
2005-07-11 14:25:54 +00:00
Francois Gouget
28dc5a8afc
Assorted spelling fixes.
2005-07-11 10:59:41 +00:00
Oliver Stieber
1b578af404
Check to see if the vertex declaration is null before trying to
...
reference it.
2005-07-10 18:16:13 +00:00
Oliver Stieber
9b75356fc4
Tidy up the way caps are managed in GetDeviceCaps and FillGlCaps.
2005-07-10 17:48:07 +00:00
Oliver Stieber
3b0b430824
Added support for vertex declarations to wined3d, it's the last patch
...
to give wined3d basic functionality.
2005-07-07 20:45:39 +00:00
Oliver Stieber
8a6799d47d
Implement render targets using either textures, swapchains or
...
standalone surfaces.
2005-07-07 20:35:05 +00:00
Oliver Stieber
403d118555
Change all references to updateStateBlock to references to stateBlock
...
in drawprim.
2005-07-06 19:02:38 +00:00
Oliver Stieber
abb11f30cd
Implemented stateblocks in wined3d.
2005-07-05 14:05:18 +00:00
Francois Gouget
02c25a8981
Assorted spelling fixes.
2005-06-30 18:19:33 +00:00
Oliver Stieber
18857f1170
Add support for samplers.
...
Switch from using d3d9 constants to wined3d constants so that there's
no recursive dependencies.
2005-06-24 11:53:07 +00:00
Oliver Stieber
e8855c48d8
Make all newly created surfces dirty, so that they are loaded properly
...
the first time around.
Replace some calls to cubetexture in basetexture to calls to
basetexture.
Check that the level isn't out of bounds in calls to texture.
2005-06-23 16:44:19 +00:00
Oliver Stieber
46e7c30a71
Implement swapchains.
2005-06-23 11:05:24 +00:00
Oliver Stieber
784518d772
Correct GetDeviceCaps so that it uses wined3dcaps as required by the
...
earlier device caps patch.
2005-06-22 18:30:29 +00:00
Alexandre Julliard
ab88743c25
Moved a few registry keys from HKLM\Software\Wine to
...
HKCU\Software\Wine for consistency.
2005-06-20 16:04:32 +00:00
Oliver Stieber
e70e3ba0ff
Change the way caps are sent between d3d9/d3d8 and wined3d to make it
...
easier for wined3d to support additional versions of Direct3D.
2005-06-17 09:59:03 +00:00
Oliver Stieber
4dfabb0bd1
Rename _D3DCAPS9.MaxPixelShaderValue to the correct
...
_D3DCAPS9.PixelShader1xMaxValue.
2005-06-16 20:42:55 +00:00
Alexandre Julliard
2e4bca9db5
Added magic comments to all Wine-specific registry accesses to make
...
them easier to grep.
2005-06-13 18:56:00 +00:00
Marcus Meissner
9c01e4274f
Fixed definition/declaration mismatches of newly static vtables.
2005-06-09 09:47:10 +00:00
Felix Nawothnig
2767543be9
- Output a FIXME when a surface with dimensions not being a power of
...
two is requested.
- Fail gracefully when IWineD3DImpl_CreateDevice fails to create the
front- or backbuffer.
2005-06-08 18:34:52 +00:00
Dmitry Timoshkov
eba47f1dfe
Make remaining OLE interface vtables const.
2005-06-06 19:50:35 +00:00
Francois Gouget
62253b752f
Assorted spelling fixes.
2005-05-30 09:56:56 +00:00
Daniel Lund
a87d8a3db9
Added D3DDEVCAPS_HWRASTERIZATION to the DevCaps for scene
...
rasterization. Allows GuildWars to start.
2005-05-09 19:32:49 +00:00
Alexandre Julliard
34fa35dc99
Added rules for building import libraries in the individual dll
...
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard
d62356aa1e
Added rules to build import libraries in the individual dll makefiles.
...
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Alexandre Julliard
c3116c5e61
Renamed ttydrv and x11drv to winetty.drv and winex11.drv respectively
...
to follow the namespace conventions and make it clear that they are
drivers and not dlls.
Moved the graphics driver configuration to HKLM\Software\Wine\Drivers.
2005-05-06 19:38:50 +00:00
Raphael Junqueira
086f77a034
- implement memory access APIs to VertexBuffers
...
- more valid implementation for IWineD3DImpl_Check* APIs (not more
S_OK for all cases)
2005-04-28 12:02:03 +00:00
Oliver Stieber
67f2ad4563
- Volume now inherits Resource. This isn't the way Microsoft implements
...
the interface but it is more correct way (Microsoft even have a
resource type of volume).
- Moved usage, format, allocatedMemory and size onto the resource
class structure.
- Refactored Preload for classes that inherit BaseTexture, preload now
binds the texture instead of bind texture calling preload, bindTexture
allocated a glTexture if there isn't one.
- Added two new class static members BaseTexture_CleanUp and
Resource_CleanUp that should be called by classes that implement
BaseTexture or Resource.
2005-03-29 19:01:00 +00:00
Jakob Eriksson
9ed61de9a2
Get rid of HeapAlloc casts.
2005-03-24 21:01:35 +00:00
Francois Gouget
93416cdaf7
Assorted spelling fixes.
2005-03-23 13:15:18 +00:00
Vincent Béron
1d5df043d4
WineDirect3DCreate has 3 args in the source.
2005-03-21 10:52:32 +00:00
Oliver Stieber
ba5eb14768
Encapsulate texture, surface encapsulated.
...
Added BindTexture, GetTextureDimensions, UnBindTexture.
Proper GetContainer support for surface.
SetContainer added to surface and volume.
SetInPbufferState added to surface (until gl context management is
implemented).
Minor changes:
- BaseTexture no longer 'holds' a reference to IWineD3DDevice to
prevent circular referencing.
- Better managment of referinging for texture.
- Some TODO's for implementing a context manager.
- Better preload implementation.
- Fix compile warning in device.c Set/GetSamplerState.
- Add QueryInterface support for surface.
- Format X8R8G8B8 added to locking.
2005-03-14 10:12:52 +00:00
Oliver Stieber
7b261656fd
Added a stubbed out version of query to d3d9 and wined3d.
...
Update the d3d9 headers and creates wined3d types where d3d9 and d3d8
are incompatible.
2005-03-03 13:57:15 +00:00
Oliver Stieber
16e8689008
Implemented guids for wined3d.
2005-03-02 13:44:58 +00:00
Alexandre Julliard
d0ee9f9309
Avoid spaces before preprocessor directives, that's not portable.
2005-03-02 12:23:20 +00:00
Oliver Stieber
2121f7831e
Put all the stubs in wined3d in place, with some functionality copied
...
across from d3d9.
Make sure all d3d9 device function call their wined3d counterpart (or
perform a function).
2005-03-02 12:16:10 +00:00
Jason Edmeades
6bec623edb
Correct handling of unusual vendor strings in d3d8, and check for a
...
stateblock before trying to release it in wined3d.
2005-02-24 10:05:06 +00:00
Jason Edmeades
1c8eea8b74
Enable parsing of vendor strings not matching the expected template.
2005-02-23 12:42:04 +00:00
Francois Gouget
4d801b66e6
Assorted spelling fixes.
2005-02-10 19:19:35 +00:00
Carlos Lozano
b10ba61112
Check that pstream is not null.
2005-02-08 12:10:57 +00:00
Alexandre Julliard
f777d70a63
Only create an X window for top-level windows, not for child windows.
...
Get rid of the X client window too, it's no longer needed.
2005-01-31 16:34:07 +00:00
Raphael Junqueira
27b8e5557e
- convert D3D8 VertexDecl to D3D9 format (D3DVERTEXELEMENT9 vector)
...
while parsing
- display result on traces
2005-01-28 11:30:13 +00:00
Raphael Junqueira
f12d5b243a
- fix typo in wined3d_interface.h
...
- add needed defines in wined3d_interface.h
- add IWineD3DVertexDeclarationImpl_ParseToken9 for debug traces
- fix ParseDeclaration9
- limit flood of traces (single shot traces)
2005-01-27 10:40:57 +00:00
Raphael Junqueira
b6317bd537
- a very basic blending support on fast drawing path (to have better
...
performances on last games)
- some defines for VBO support
2005-01-26 21:06:19 +00:00
Raphael Junqueira
4c385f981d
- VertexDeclaration device APIs
...
- D3D9 declarations parsing
- a little better APIs (trying to avoid compile problems)
2005-01-26 20:54:00 +00:00
Raphael Junqueira
4f02b52c6b
Begin support of VertexDeclaration on wined3d using d3d8 code base
...
(handling d3d8 and d3d9 specs).
2005-01-19 19:34:49 +00:00
Joris Huizer
8a6295a057
Get rid of some TRACE(..., This->resource.ref).
2005-01-19 16:59:01 +00:00
Jason Edmeades
33025b203c
- Handle failures to allocate storage more gracefully.
...
- Only prototype the interfaces which are subclassed (I overdid it
last time!).
- Implement Get/Set Texture and GetBackBuffer, plus device's
GetDisplayMode / GetDeviceCaps.
- Make some of the d3d9 skeleton code issue fixme's to highlight code
which hasn't been migrated yet.
- Correct the d3d9 headers for D3DSURFACE_DESC which caused stack
corruption in demos.
2005-01-18 11:42:29 +00:00
Jason Edmeades
bcecddc084
- Add texture support for all the texture types for d3d9->wined3d.
...
- Add prototypes for the COM interfaces.
- Fix some incorrect types from the last patch.
2005-01-17 13:44:57 +00:00
James Hawkins
11db0ea655
Use only stored result of Interlocked* in AddRef/Release.
2005-01-12 19:50:22 +00:00
Jason Edmeades
41427857b1
Add render target support, and ensure there is a front and back buffer
...
created during device creation.
2005-01-09 17:37:02 +00:00
Oliver Stieber
1b8629b3d7
Correct loop check for enum display and include 32bit modes in 24bit.
2005-01-09 16:33:01 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00
Francois Gouget
ae8682f277
Spelling fixes.
2004-12-22 15:02:14 +00:00
Francois Gouget
6fb1a20020
Assorted spelling fixes.
2004-12-20 19:27:06 +00:00
Raphael Junqueira
66cae0d2a8
Fixed build problem with GL_VERSION_1_2.
2004-12-17 19:07:44 +00:00
Jason Edmeades
c4de952eb5
Add Clear, Present and EndScene support and fix a bug in the drawing
...
code.
2004-12-14 11:54:27 +00:00
Jason Edmeades
2003c7ab11
Add {G,S}etRenderState and {G,S}etTextureStageState support, and
...
ensure the stateblock is fully populated at device startup.
2004-12-13 13:35:38 +00:00
Alexandre Julliard
ebe3c529b1
Janitorial: C booleans must not be compared against TRUE.
2004-12-09 14:07:59 +00:00
Jason Edmeades
f738c146e2
Add {G,S}etIndices, {G,S}Viewport and enable the basic drawing
...
functionality into wined3d and call from d3d9.
2004-12-09 11:42:34 +00:00
Jason Edmeades
819b0e1190
Add BaseTexture class support, call from d3d9.
2004-12-07 14:29:12 +00:00
Adam D. Moss
880bc9ce9f
Fix compilation.
2004-11-30 21:05:27 +00:00
Jason Edmeades
0a944ae319
Implement Material, Clip plane and Light support plus
...
MultiplyTransform.
2004-11-29 17:53:42 +00:00
Jason Edmeades
eba27af4f1
Add Get/Set Transform support, plus BeginScene (does nothing).
2004-11-28 15:04:41 +00:00
Jason Edmeades
73e8baffd2
Add indexbuffer support into wined3d.
2004-11-24 18:13:41 +00:00
Jason Edmeades
289562eeb5
- Implement SetStreamSource
...
- Ensure wined3d objects maintain a reference count of at least that
of the d3dx version.
2004-11-23 13:52:46 +00:00
Francois Gouget
3bb5b093e8
Assorted spelling fixes.
2004-10-22 22:27:51 +00:00
Jason Edmeades
447d5ed048
Implement the beginnings of the stateblock class, and a first method
...
to use it.
2004-10-21 20:59:12 +00:00
Jason Edmeades
db7a50582c
- Add support (as far as was previously) for the VertexBuffer and
...
Resource classes in wined3d and use when called from d3d9.
- Reduce the header includes in all the d3d9 interface to one common
set in the private header.
2004-10-14 00:32:04 +00:00
Jason Edmeades
b9e2bedac1
Copy and tidy up the code from dx8 create device into wined3d. Call
...
from wined3d and d3d8, but short term only use the code for real from
d3d9.
2004-10-08 20:52:33 +00:00
Jason Edmeades
ac490fabac
Add a IWineD3DDevice object type (empty for now), and create one when
...
an IDirect3DDevice object is created.
2004-10-07 04:22:21 +00:00
Jason Edmeades
b519893e41
Move the GetDeviceCaps into the wined3d library and call from d3d9.
2004-10-06 00:05:29 +00:00
Francois Gouget
67aa858a31
Assorted spelling fixes.
2004-10-05 18:15:29 +00:00
Jason Edmeades
c579fa6213
Move the Check* type functions into wined3d and copy from d3d9, and
...
flag that they are mostly stubs.
2004-10-05 02:14:06 +00:00
Jason Edmeades
c3421ea434
Move into wined3d and call from d3d9 the GetAdapterId function and
...
copy all the gl declarations into the more global wined3d_gl header
file.
2004-09-29 21:26:47 +00:00
Jason Edmeades
ae5a436873
- Make d3d8 know about the wined3d device and start using it.
...
- Move some of the screen mode related functions into wined3d and add
untested support for the new d3d9 options of providing the format to
some of the calls.
- Move other functions from the directx interface into the common
library and implement the calls from d3d9 as well.
- Copy across the first of the functions used to make traces more readable,
creating utils.c to store them in. Eventually the ones in d3d8 will be
removed but for now just duplicate the code.
2004-09-28 02:12:12 +00:00
Jason Edmeades
24ab49e250
Create a wined3d interface, and generate a wined3d object in the d3d9
...
create method. Make the first (simple) call implementation into the
new wined3d interface.
2004-09-23 04:34:27 +00:00
Marcus Meissner
2b5b00b0ff
Fixed position of tmp.f assigned like in dlls/d3d8/shader.c.
...
Fixed strict aliasing problem.
2004-04-26 20:05:52 +00:00
Alexandre Julliard
9e4ed6460c
.spec.c files are no longer used for 32-bit dlls.
2004-03-24 03:36:44 +00:00
Alexandre Julliard
e8a339c1d2
Portability fixes for LSB compatibility.
2004-03-01 21:32:02 +00:00
Alexandre Julliard
20b4585e3c
Only link against libdxguid where necessary.
2004-01-27 00:11:16 +00:00
Raphael Junqueira
0196861349
Add the wined3d dll for beginning a cleaner d3d architecture that will
...
contain the shared openGL code needed for all wine direct3d
implementations.
2003-11-14 03:50:35 +00:00