Henri Verbeet
f50b4c7d71
wined3d: Move "wrap_lookup" to struct wined3d_gl_info.
2010-01-04 11:41:28 +01:00
William Waghorn
0c582dca3a
wined3d: Added NVidia GT240 detection.
2010-01-04 11:41:27 +01:00
Aaron Brazener
11754a645b
wined3d: Added further Nvidia Geforce 8xxx detection.
2009-12-31 12:12:18 +01:00
Aaron Brazener
381fa8931f
wined3d: Added ATI Radeon HD 5xxx detection.
2009-12-29 11:05:39 +01:00
Henri Verbeet
f30999f193
wined3d: Recognize "VMware, Inc." as VENDOR_MESA.
2009-12-28 12:27:13 +01:00
Henri Verbeet
ea0af93c19
wined3d: Get rid of some redundant local variables.
...
E.g. "This" variables that are only used in traces.
2009-12-22 13:48:25 +01:00
Henri Verbeet
b85a070598
wined3d: Support more formats for display mode enumeration.
...
ddraw/d3d8/d3d9 only support a limited number of formats, but those already
limit the supported formats themselves.
2009-12-10 11:54:55 +01:00
Henri Verbeet
aed85222b5
wined3d: Rename the wined3d_adapter "num" field to "ordinal".
...
This makes it consistent with dxgi_adapter.
2009-12-08 12:33:17 +01:00
Henri Verbeet
0491fcce30
dxgi: Implement IDXGIAdapter::GetDesc().
2009-12-04 14:34:59 +01:00
Henri Verbeet
ed73f0a1b0
d3d9: Implement IDirect3D9Ex::GetAdapterLUID().
2009-12-02 13:06:08 +01:00
Henri Verbeet
135e6cea7b
wined3d: Add a separate function for device initialization.
2009-11-18 11:16:49 +01:00
Henri Verbeet
e4d8a3f309
wined3d: Move the various backend selection utility functions to utils.c.
2009-11-18 11:16:43 +01:00
Henri Verbeet
5487009624
wined3d: Report a driver version appropriate for the reported OS.
2009-11-12 13:14:39 +01:00
Henri Verbeet
bf10dbe8a6
wined3d: Map D3DFMT_D24S8 to WINED3DFMT_D24_UNORM_S8_UINT.
...
The internal order of the depth and stencil bits is unspecified since the
format isn't lockable.
2009-10-30 11:28:52 +01:00
Henri Verbeet
111307dfba
wined3d: Get rid of the GL_SUPPORT macro.
2009-10-29 13:09:33 +01:00
Henri Verbeet
48e03bc189
wined3d: Introduce a separate structure for various OpenGL implementation limits.
2009-10-29 13:09:27 +01:00
Henri Verbeet
30d2660d99
wined3d: Restore the thread's previous GL context in WineD3D_ReleaseFakeGLContext().
2009-10-27 10:55:35 +01:00
Henri Verbeet
13c4fe72ad
wined3d: Set a driver name appropriate for the vendor in init_driver_info().
2009-10-27 10:55:09 +01:00
Henri Verbeet
26ba212407
wined3d: Apply PCI ID overrides in init_driver_info() instead of IWineD3DImpl_GetAdapterIdentifier().
2009-10-27 10:54:57 +01:00
Henri Verbeet
2447c8bc3e
wined3d: Store PCI IDs in wined3d_driver_info instead of wined3d_gl_info.
2009-10-27 10:54:50 +01:00
Stefan Dösinger
641d6681d4
wined3d: Use the ARB native constant limit in the GLSL-ARB constants quirk.
...
Geforce 8 and Geforce 9 cards support 256 env and 1024 native
constants. 1024 is the hardware limit we want to use if we overwrite
the GLSL reported value with the ARB value on Mac OS (because Mac OS
reports more constants than supported by HW on some cards).
2009-10-26 11:42:10 +01:00
Stefan Dösinger
f9c4d442a9
wined3d: Get rid of the general shader constant limit.
2009-10-26 11:41:51 +01:00
Henri Verbeet
5fbe5ee027
wined3d: Add a separate structure for driver info.
2009-10-26 11:20:33 +01:00
Henri Verbeet
342a71b281
wined3d: Replace the "stateLookup" tables with a single "wrap_lookup" table.
2009-10-23 12:03:15 +02:00
Henri Verbeet
6be41fd59a
wined3d: Get rid of GL_LIMITS.
2009-10-22 10:46:05 +02:00
Henri Verbeet
42eb516d96
wined3d: Free the adapter's format info in IWineD3DImpl_Release() (Valgrind).
2009-10-21 16:05:57 +02:00
Henri Verbeet
f2aaca2f67
wined3d: Rename WineD3DAdapter to wined3d_adapter.
2009-10-21 16:05:57 +02:00
Stefan Dösinger
2d802af4d9
wined3d: Make shader specific constants accessible via GL_LIMITS.
2009-10-20 14:46:08 +02:00
Henri Verbeet
2be38232ea
wined3d: Remove some unused code.
2009-10-06 12:02:59 +02:00
Stefan Dösinger
c749debec6
wined3d: Fix an error string.
2009-10-01 12:10:35 +02:00
Stefan Dösinger
404aecb8da
wined3d: Test if result.clip[] works correctly.
...
The Mac Nvidia driver doesn't implement the result.clip part of
GL_NV_vertex_program2_option correctly. It complains about a syntax
error if "result.clip[0]" is used. "result.clip" compiles correctly, but
supports only one clipplane, and running the shader results in severe
rendering bugs.
2009-09-28 17:33:07 +02:00
Stefan Dösinger
77a83aee79
wined3d: Don't use GL_NV_texture_shader on OSX.
2009-09-28 17:32:54 +02:00
Henri Verbeet
47c84f4f7f
wined3d: Use the DXGI naming convention for all formats.
2009-09-25 15:15:44 +02:00
Austin English
5d15da6df5
wined3d: Recognize DRI R300 drivers as Mesa.
2009-09-25 13:15:48 +02:00
Henri Verbeet
eca28c942d
wined3d: Add support for ARB_provoking_vertex.
...
This is just EXT_provoking_vertex promoted to ARB.
2009-09-23 12:37:18 +02:00
Henri Verbeet
ec97383f6f
wined3d: Add support for ARB_framebuffer_object.
2009-09-23 12:37:00 +02:00
Henri Verbeet
c4c86215ed
wined3d: Detect ARB_framebuffer_object.
2009-09-23 12:36:48 +02:00
Henri Verbeet
4aaf47f277
wined3d: Get rid of the unused DeviceType parameter to select_shader_mode().
2009-09-17 10:09:57 -05:00
Henri Verbeet
a5214c306f
wined3d: Don't free D3D surfaces until the wined3d surface is destroyed.
...
This prevents for example a d3d9 depth stencil from being destroyed when it
has no external references but is still in use by the device/stateblock. A
nice side effect is that it simplifies handling of "implicit" surfaces like
the frontbuffer and backbuffers, as well as the forwarding of reference counts
for surfaces that are part of a texture.
2009-09-16 13:04:32 -05:00
Henri Verbeet
9880cd7504
wined3d: Make some variables static.
2009-09-15 14:32:36 -05:00
Jaime Rave
4700038fdf
wined3d: Fix vendor detection when using an Intel X4500HD.
2009-09-09 12:07:31 +02:00
Henri Verbeet
c951f6925c
wined3d: Release the GL lock on IWineD3DImpl_FillGLCaps() error paths.
2009-09-02 11:25:57 +02:00
Henri Verbeet
078273afa6
wined3d: Add support for ARB_depth_clamp.
2009-09-01 14:05:45 +02:00
Stefan Dösinger
531ec2267b
wined3d: Allow filtering on RECT textures.
...
There is no reason to disable linear filtering, we just cannot use mipmapping.
2009-08-31 12:18:01 +02:00
Stefan Dösinger
52d2865521
wined3d: Remove redundant TRACEs.
...
These made sense before we had the quirk table. Nowadys the quirk
table contains quirk description strings that print out whether or not
any apple specific quirks are applied. The traces in match_apple just
spam the log because this code is run multiple times for many quirks.
2009-08-31 12:17:41 +02:00
Henri Verbeet
560d63548d
wined3d: Remove trailing spaces.
2009-08-27 11:45:37 +02:00
Jörg Höhle
b9d955b86d
wined3d: Delete meaningless UNIX GL driver version parsing.
2009-08-27 11:00:59 +02:00
Stefan Dösinger
52731a80c8
wined3d: Make it clear that glFlush and glFinish are WGL functions.
2009-08-26 14:35:41 +02:00
Stefan Dösinger
21f4e42a98
wined3d: Don't use WINED3DADAPTER_DEFAULT as refresh rate.
2009-08-26 14:35:33 +02:00
Stefan Dösinger
3f6909c1f2
wined3d: Initialize ps_arb_max_local_constants.
2009-08-26 14:35:27 +02:00
Henri Verbeet
c70f3816ab
wined3d: Hide WINED3DFMT_R16G16B16A16_UNORM again.
...
This format is broken on some cards. Hide it until we figure out a reliable
way to deal with it.
2009-08-19 14:45:39 +02:00
Henri Verbeet
779ad6b9f1
wined3d: Add a separate function for guessing the card.
2009-08-14 13:59:08 +02:00
Henri Verbeet
93218c6602
wined3d: Add a separate function for guessing the driver version.
...
Note that I don't necessarily think the ATI path for example will work
correctly. This patch is just for moving it out of IWineD3DImpl_FillGLCaps().
2009-08-14 13:59:08 +02:00
Henri Verbeet
b94e89dae9
wined3d: Add a separate function for parsing the GL version.
2009-08-14 13:59:08 +02:00
Henri Verbeet
a1402e0677
wined3d: Add a separate function for guessing the vendor.
2009-08-14 13:59:08 +02:00
Henri Verbeet
c573d0a4c9
wined3d: Escape GL strings with debugstr_a() in IWineD3DImpl_FillGLCaps().
2009-08-14 13:59:08 +02:00
Henri Verbeet
914a21740c
wined3d: Recognize GL_VENDOR "Tungsten Graphics, Inc." as VENDOR_MESA.
2009-08-13 11:45:42 +02:00
Henri Verbeet
e205973915
wined3d: Remove the redundant vs_nv_version and ps_nv_version fields from struct wined3d_gl_info.
2009-08-13 11:45:36 +02:00
Henri Verbeet
fbc3cf89e2
wined3d: Remove some unused fields from struct wined3d_gl_info.
2009-08-13 11:45:24 +02:00
Henri Verbeet
42c2d06bc0
wined3d: Don't make wgl calls from under the GL lock.
2009-08-13 11:45:17 +02:00
Henri Verbeet
ac64bf6406
wined3d: Detect EXT_provoking_vertex.
2009-08-10 13:52:43 +02:00
Stefan Dösinger
6f5a1d9a15
wined3d: Filter WINED3DSTENCILCAPS_TWOSIDED in d3d8.
2009-08-07 14:56:48 +02:00
Stefan Dösinger
296573caae
d3d: Filter R8G8B8 in d3d8 and d3d9.
2009-08-07 14:56:40 +02:00
Henri Verbeet
b04e992a65
wined3d: Set the WINED3DTEXF_NONE entry in the minification lookup table to GL_NEAREST.
...
Although WINED3DTEXF_NONE is not a valid minification filter, having it in the
tables simplifies the lookup. GL_NEAREST is more appropriate than GL_LINEAR
though.
2009-08-06 17:26:29 +02:00
Henri Verbeet
9e8f7898c9
wined3d: Get rid of the ANISOTROPIC entry from the filter lookup tables.
...
Anisotropy and texture filters are orthogonal in GL. In D3D
D3DTEXF_ANISOTROPIC just selects the best (linear) filter type and enables
anisotropy.
2009-08-05 11:20:36 +02:00
Stefan Dösinger
2858f67a2a
wined3d: Enable WINED3DFMT_R16G16B16A16_UNORM.
2009-08-05 11:19:46 +02:00
Stefan Dösinger
f53451ddac
wined3d: Only use WINE_normalized_texrect if ARB_texture_np2 is supported.
2009-08-05 11:19:26 +02:00
Henri Verbeet
d4159adbc8
wined3d: Statically initialize the filter lookup tables.
...
Also add some comments.
2009-08-04 13:04:23 +02:00
Henri Verbeet
b30a31e09a
wined3d: Set a more appropriate value for the ANISOTROPIC/NONE min/mip filter.
2009-08-04 13:04:11 +02:00
Henri Verbeet
25fe98e02b
wined3d: Don't disable mipmapping if we lack EXT_texture_filter_anisotropic.
...
These don't have a whole lot to do with each other.
2009-08-04 13:04:05 +02:00
Henri Verbeet
1d647283d5
wined3d: Don't use the GL texture flags to determine if a format is a depth stencil in CheckDepthStencilCapability().
...
The OpenGL implementation might not support ARB_depth_texture, but that
doesn't mean we can't use the format for the depth buffer.
2009-08-03 15:01:34 +02:00
Henri Verbeet
9253bbcb05
wined3d: Get rid of last_device.
2009-07-23 11:22:13 +02:00
Henri Verbeet
1a43030664
wined3d: Keep track of a thread's wined3d context.
2009-07-22 14:42:50 +02:00
Henri Verbeet
43e6686a78
wined3d: Rename _WineD3D_GL_Info to struct wined3d_gl_info.
2009-07-17 11:22:07 +02:00
Henri Verbeet
ae8e8ac73f
wined3d: Check the return values for some wgl calls.
2009-07-15 13:24:24 +02:00
Stefan Dösinger
8a6553da14
wined3d: Only use 4 component specular colors if GL allows it.
2009-07-10 13:07:33 +02:00
Stefan Dösinger
c0e5c8f481
wined3d: Update Nvidia driver versions.
2009-07-09 12:47:39 +02:00
Stefan Dösinger
cfd0652980
wined3d: Add Intel GMA X3100 to our card DB.
2009-07-09 12:47:33 +02:00
Erik Inge Bolsø
48995f3354
wined3d: Fix Nvidia GTX series misdetection.
2009-07-08 20:13:25 +02:00
Henri Verbeet
699f68cdee
wined3d: Get rid of some pointers in WINED3DADAPTER_IDENTIFIER.
...
This also avoids some unchecked strcpy() calls.
2009-07-07 11:50:30 +02:00
Henri Verbeet
32fd8f2130
wined3d: checkGLcall() doesn't need a \n.
2009-07-07 11:50:22 +02:00
Henri Verbeet
2ac34bf231
wined3d: Add some missing float suffixes.
...
The compiler should be smart enough to fix most of these, but it looks sloppy.
2009-07-07 11:50:05 +02:00
Henri Verbeet
7ec911adeb
wined3d: Avoid an unnecessary strcpy().
2009-07-07 11:49:54 +02:00
Henri Verbeet
c9257aed85
wined3d: Avoid a forward declaration.
2009-07-06 14:35:27 +02:00
Henri Verbeet
4571455fea
wined3d: Remove the gl_renderer field from WineD3D_GL_Info.
2009-07-06 14:35:27 +02:00
Henri Verbeet
b2331ec79b
wined3d: Get rid of the unused gl_version and glx_version fields.
2009-07-06 14:35:27 +02:00
Henri Verbeet
966f8f452d
winedd3d: Get rid of a useless trace.
...
gl_card isn't initialized yet here, and GL_RENDERER is already printed
earlier.
2009-07-06 14:35:27 +02:00
Henri Verbeet
ad0ef46a39
wined3d: Get rid of the redundant "return_value" variable.
2009-07-06 14:35:27 +02:00
Henri Verbeet
17688365ed
wined3d: Don't accept NULL as a valid result from glGetString().
2009-07-03 13:05:52 +02:00
Henri Verbeet
23ce9d72b8
wined3d: Get rid of wined3d_fake_gl_context_cs.
2009-07-03 13:05:52 +02:00
Henri Verbeet
4cacf2e08f
wined3d: Use a proper structure for storing initial GL context information.
2009-07-03 13:05:51 +02:00
Henri Verbeet
db6ea72201
wined3d: Get rid of the silly refcount for the "fake" GL context.
2009-07-02 12:01:02 +02:00
Henri Verbeet
b5da7f49d3
wined3d: Don't reuse random GL contexts during initialization.
...
Obviously there's no guarantee about the state of such a context. The specific
problem is that it might have GL_UNPACK_CLIENT_STORAGE_APPLE enabled, causing
some glTexImage2D() calls to fail, but it's a bad idea in general.
2009-07-02 12:00:50 +02:00
Henri Verbeet
50e9ad66e2
wined3d: Clear the last device in WineD3D_CreateFakeGLContext().
2009-07-02 12:00:44 +02:00
Tobias Jakobi
2d532a1597
wined3d: Add ps_arb_max_local_constants.
2009-07-02 11:56:27 +02:00
Henri Verbeet
40bc47901c
wined3d: Use flags for driver quirks.
2009-07-01 11:41:44 +02:00
Henri Verbeet
c475789bb6
wined3d: Move the driver_quirk structure to directx.c.
2009-07-01 11:41:38 +02:00
Henri Verbeet
f57967c983
wined3d: Always check the result of wglMakeCurrent().
2009-06-29 12:30:28 +02:00
Henri Verbeet
7363b6e2e3
wined3d: Document GL context dependencies.
2009-06-26 12:05:07 +02:00
Henri Verbeet
404f4f7321
wined3d: Get rid of some asserts.
2009-06-22 12:59:16 +02:00