Commit Graph

486 Commits

Author SHA1 Message Date
Henri Verbeet dd1f0d9c48 wined3d: Pass format_desc to getColorBits() and getDepthStencilBits(). 2009-03-24 12:57:38 +01:00
Henri Verbeet a02d801888 wined3d: Pass format_desc to the Check*Capability() function.
Rather than looking it up all the time.
2009-03-24 12:57:31 +01:00
Roderick Colenbrander 4544efc972 wined3d: Add a classic WGL pixel format backend as not all OpenGL implementations support WGL_ARB_pixel_format.
This should help for instance VirtualBox.
2009-03-23 13:25:50 +01:00
Roderick Colenbrander 9181ddcd16 wined3d: Add WGL_ARB_pixel_format detection.
Right now we assume that the extension is there but this isn't always
the case. The next patch in this series will add a
non-WGL_ARB_pixel_format codepath to help VirtualBox and others.
2009-03-23 13:25:17 +01:00
Henri Verbeet a56e3a102b wined3d: Only return a pointer to struct GlPixelFormatDesc from getFormatDescEntry(). 2009-03-13 11:29:10 +01:00
Henri Verbeet 53bf5c2658 wined3d: Add fields from StaticPixelFormatDesc to struct GlPixelFormatDesc.
The idea here is that we should lookup format information in struct
GlPixelFormatDesc, while StaticPixelFormatDesc and GlPixelFormatDescTemplate
will only be used to build the table.
2009-03-13 11:29:01 +01:00
Henri Verbeet 81075d2db3 wined3d: Remove a redundant check.
This is redundant now, InitAdapters() will only be called once for each
IWineD3DImpl object, as pointed out by Allan Tong.
2009-03-12 13:09:55 +01:00
Henri Verbeet 40d4f9b7ec wined3d: Don't leak WineD3DAdapter.cfgs. 2009-03-11 13:03:32 +01:00
Henri Verbeet ddae14169b wined3d: Get rid of the PUSH1 macro. 2009-03-11 13:03:32 +01:00
Henri Verbeet 2cc43393f0 wined3d: The adapters array should be owned by IWineD3DImpl. 2009-03-11 13:03:32 +01:00
Henri Verbeet 3f9e0d9320 wined3d: Add support for ARB_geometry_shader4. 2009-03-05 16:16:24 +01:00
Henri Verbeet 0048a0373b d3d10core: Keep a reference to the wined3d device in the d3d10 device. 2009-02-23 12:20:29 +01:00
Henri Verbeet 8cefc47d81 wined3d: Add DXGI formats to WINED3DFORMAT. 2009-02-20 11:10:37 +01:00
Paul Chitescu 540febecf9 wined3d: Detect Radeon Xpress Series, report PCI ID of Radeon Xpress 200M. 2009-01-21 10:24:44 +01:00
Henri Verbeet a966293f59 wined3d: Add an IWineD3DDeviceParent interface.
Other than being a bit nicer than passing function pointers all over the
place, this helps dxgi/d3d10. While the swapchain itself is created in dxgi,
its surfaces are constructed in d3d10core, which makes it impractical for dxgi
to pass the appropriate function pointers.
2009-01-16 13:29:32 +01:00
Stefan Dösinger 365e1f3b07 wined3d: Avoid hooking non-fog glEnable/glDisable calls.
This prevents fallout from the GL_EXT_fog_coord emulation. glEnable
and glDisable calls other than those that change GL_FOG are not
hooked. The glEnableWINE and glDisableWINE functions can be used to
add other hooks too if ever needed.
2009-01-12 13:03:47 +01:00
Allan Tong 29dd286d79 wined3d: Add code to cleanup device multistate_funcs. 2009-01-10 17:43:11 +01:00
Henri Verbeet 9d8c6326c0 wined3d: Remove stray tabs. 2009-01-09 14:06:14 +01:00
Henri Verbeet e028e3f7bd wined3d: Use GL_ALIASED_POINT_SIZE_RANGE to retrieve the max point size. 2009-01-09 14:06:13 +01:00
Henri Verbeet b1812c690c wined3d: Add support for EXT_vertex_array_bgra.
This allows us to skip BGRA->RGBA color conversion for vertex attributes if
this extension is present.
2009-01-08 13:21:51 +01:00
Vincent Pelletier 143bd931b6 wined3d: Detect intel 945 GM. 2008-12-29 11:35:36 +01:00
Rico Schüller b061f64228 wined3d: Fix compilation for Windows build. 2008-12-22 10:29:14 +01:00
Roderick Colenbrander 086d949877 wined3d: Add GL_RG16F / GL_RG32F support using ARB_texture_rg. 2008-12-19 17:49:20 +01:00
Roderick Colenbrander 7238bce79d wined3d: Add GL_ARB_texture_rg / GL_EXT_texture_swizzle support. These extensions are needed for more efficient R32F/RG32F support. 2008-12-19 17:48:55 +01:00
Henri Verbeet d099dde7a9 wined3d: Track shader constants in the shader backend. 2008-12-18 13:17:02 +01:00
Stefan Dösinger 2aa7a7fe16 wined3d: Avoid loading opengl32.dll.
This confuses applications like Steam, which hook d3d9 and opengl
functions. It sees that the application uses opengl32, but it doesn't
realize that d3d9 is wrapped to opengl. Thus it starts messing around
with wined3d's wgl context. It usually tries to draw geometry with the
context, but cannot deal with some of the obscure extensions we have
activated.
2008-12-16 14:36:17 +01:00
Stefan Dösinger 4bc5e760b6 wined3d: Initialize max_combined_samplers properly.
Otherwise it will be 0 if GL_ARB_multitexture is not available.
2008-12-16 14:36:02 +01:00
Stefan Dösinger 199a3468bf wined3d: Fake GL_ARB_multitexture. 2008-12-16 14:31:25 +01:00
Henri Verbeet 89139b7589 wined3d: Make shader texture format fixups more generic.
Based on a patch by Stefan Dösinger. This is more flexible, and allows
the shader backend implementation to be simpler, since it doesn't have
to know about specific formats. The next patch makes use of this.
2008-12-04 11:59:58 +01:00
Henri Verbeet b451048eb7 wined3d: Move GlPixelFormatDesc to wined3d_private.h where it belongs.
Also remove the silly typedef.
2008-12-04 11:59:06 +01:00
Alexandre Julliard 9c306e9871 wined3d: Make some functions and variables static. 2008-12-02 15:31:17 +01:00
Henri Verbeet 50ebf26894 wined3d: Const correctness fixes for directx.c. 2008-12-01 12:45:10 +01:00
Henri Verbeet 942f82100a wined3d: Remove some superfluous casts. 2008-12-01 12:45:01 +01:00
Andrew Talbot f40afa87c6 wined3d: Sign-compare warnings fix. 2008-11-28 12:57:25 +01:00
Henri Verbeet c7880e8916 wined3d: Make minMipLookup_noFilter and magLookup_noFilter const.
Note that minMipLookup and magLookup aren't particularly safe to use,
they're global arrays initialized from IWineD3DImpl_FillGLCaps(). The same
goes for the other global dynamic lookup tables.
2008-11-28 12:53:57 +01:00
Roderick Colenbrander 273357264a wined3d: Add registry key for overriding the pci vendor id. 2008-11-24 14:52:32 +01:00
Roderick Colenbrander 52d59718c7 wined3d: Add registry key for overriding pci device id. 2008-11-24 14:52:25 +01:00
Vincent Pelletier f442bafb8a wined3d: Add detection for NVIDIA's GTX 280. 2008-11-24 14:41:58 +01:00
Roderick Colenbrander f571ecd23c wined3d: Add two missing D3D8/D3D9 capabilities. 2008-11-10 12:57:30 +01:00
Stefan Dösinger 620a423b22 wined3d: Kill the GL_ATI_envmap_bumpmap code.
GL_ATI_envmap_bumpmap provides two things: Signed V8U8 pixel formats,
and bump mapping. The extension is only supported on fglrx, and this
driver also supports GL_ARB_fragment_program.  Thus the bump mapping
code is never used on any driver out there.  Furthermore, if it is
used, it tends to crash the driver

The signed pixel format is used, as it can be used by pixel shaders or
the ARBfp replacement. However, the format is broken in fglrx, and
negative values are clamped to 0.0. This results in test
failures. WineD3D has an alternative codepath using scale+bias to
enable V8U8 using a standard signed RGB which works correctly on
fglrx.
2008-11-04 11:41:14 +01:00
Henri Verbeet 2188aa87d6 wined3d: Add support for EXT_framebuffer_multisample. 2008-10-20 12:23:16 +02:00
Alexandre Julliard 6cfef95ce7 wined3d: Convert source files to utf-8. 2008-10-18 19:21:20 +02:00
Henri Verbeet 937ceda47f wined3d: Remove a redundant initialization of cfgs in CheckDepthStencilCapability (LLVM/Clang). 2008-10-09 12:13:53 +02:00
Henri Verbeet 3a7fcec4d7 wined3d: Handle texture coordinates the same way we handle other vertex attributes. 2008-09-25 11:53:10 +02:00
Allan Tong 43f2ec33bf wined3d: Fix Geforce9 detection. 2008-09-19 12:09:57 +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
Francois Gouget 4823b2c7bf Assorted spelling fixes. 2008-09-02 13:58:21 +02:00
Stefan Dösinger ec4955630e wined3d: Silence some format spam. 2008-08-28 11:24:49 +02:00
Stefan Dösinger 462ddaa254 wined3d: Make the texture stage mapping nvrc independent. 2008-08-27 13:21:24 +02:00
Stefan Dösinger 97b57931d0 wined3d: Advertise a few line caps. 2008-08-27 13:21:24 +02:00