Commit Graph

3479 Commits

Author SHA1 Message Date
Henri Verbeet ee4d18cc83 wined3d: Pass NULL to ActivateContext() when we don't need a specific target.
Once we keep track of the wined3d context for each thread,
lastActiveRenderTarget won't do what we want here.
2009-07-21 14:22:44 +02:00
Henri Verbeet e6f55c2650 wined3d: Remove an unused struct member. 2009-07-20 13:35:15 +02:00
Henri Verbeet 3a63552fd1 wined3d: Skip some unnecessary FBO binds. 2009-07-20 13:35:11 +02:00
Henri Verbeet dedd62c0e2 wined3d: Recognize the SM4 log opcode. 2009-07-20 13:35:07 +02:00
Stefan Dösinger e06997359f wined3d: Set the highest dirty marker after marking shader constants dirty. 2009-07-20 12:23:14 +02:00
Stefan Dösinger cd7f43b00d wined3d: Don't activate a context unless we need one. 2009-07-20 12:23:07 +02:00
Henri Verbeet a80247f58b wined3d: Avoid redundant FBO binds.
Apparently this is an expensive operation for certain drivers, even if the
binding doesn't actually change.
2009-07-17 11:22:07 +02:00
Henri Verbeet 710f6f8456 wined3d: Always use context_bind_fbo() to change the framebuffer binding. 2009-07-17 11:22:07 +02:00
Henri Verbeet 7485173849 wined3d: Pass the context instead of the device to the various context functions. 2009-07-17 11:22:07 +02:00
Henri Verbeet a01616a6c3 wined3d: Store a pointer to wined3d_gl_info in struct WineD3DContext. 2009-07-17 11:22:07 +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 50f5abcad9 wined3d: Recognize the SM4 dp4 opcode. 2009-07-16 16:03:40 +02:00
Henri Verbeet 03acf9d207 wined3d: Recognize the SM4 dp3 opcode. 2009-07-16 16:03:36 +02:00
Henri Verbeet 7539cd5c85 wined3d: Recognize the SM4 rsq opcode. 2009-07-16 16:03:32 +02:00
Henri Verbeet d6ffe00cd2 wined3d: Recognize the SM4 constant buffer register type. 2009-07-16 16:03:28 +02:00
Henri Verbeet c4f8845bc9 wined3d: Recognize SM4 arrays.
This is for SM4 constant buffers, which look like cb<x>[<y>]. At some later
point we should probably translate pre-SM4 constants to constant buffers.
2009-07-16 16:03:23 +02:00
Stefan Dösinger 9d14dcab68 wined3d: Use the unmodified source in MOVA.
The code removed by this patch was a leftover from the time when we tried to
emulate MOVA with a plain ARL, which only supports one source in plain ARB.
This breaks the more sophisticated MOVA and 4 component ADDR register we have
now however.
2009-07-16 11:15:45 +02:00
Stefan Dösinger 6a04c2d5cc wined3d: Don't call glGetError if nobody is listening. 2009-07-16 11:15:40 +02:00
Henri Verbeet ae8e8ac73f wined3d: Check the return values for some wgl calls. 2009-07-15 13:24:24 +02:00
Henri Verbeet 476c83522b wined3d: Remove the remains of an ATI_fragment_shader hack.
This was originally added as a workaround for a Mesa bug by commit
ddf52dda15. The other half of the hack has since
been removed. This code causes problems when wglDeleteContext() from a
different thread causes our current context to be destroyed, since
wglGetCurrentContext() will return a destroyed context in that case. That is a
flaw in our wgl implementation, since wglDeleteContext() shouldn't allow a
context that's current in a different thread to be destroyed, but this hack is
a bad idea regardless.
2009-07-15 13:24:19 +02:00
Stefan Dösinger 3c2fa6aea4 wined3d: Set the depth blit helper texture address mode to clamp.
On ATI cards we use the driver's GL_ARB_texture_non_power_of_two emulation to
support conditional NP2 textures without having to deal with the denormalized
coordinates. The default GL_TEXTURE_2D address mode is incompatible with
GL_ARB_texture_rectangle however.
2009-07-15 13:17:12 +02:00
Stefan Dösinger 387d337a70 wined3d: EXP and EXPP are scalar operations. 2009-07-15 13:17:02 +02:00
Stefan Dösinger 2bfdff198c wined3d: Check the correct constant limit. 2009-07-10 13:07:33 +02:00
Stefan Dösinger 17769497eb wined3d: Drop the color0 mov optimization if the src is overwritten. 2009-07-10 13:07:33 +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
Henri Verbeet 38cb9d02b1 wined3d: Take geometry shaders into account in shader_glsl_load_constantsB(). 2009-07-10 12:13:29 +02:00
Henri Verbeet 69b7612265 wined3d: Get rid of struct glDescriptor.
In general it might not be a bad idea to group GL specific data into a
separate struct, but IWineD3DSurfaceImpl is currently the only thing that
bothers. It doesn't get it quite right either, since e.g. the PBO isn't in
glDescriptor either.
2009-07-10 12:13:24 +02:00
Henri Verbeet 038d939941 wined3d: Remove GetGlDesc() from the public IWineD3DSurface interface. 2009-07-10 12:13:09 +02:00
Henri Verbeet 60e0997c79 wined3d: Simplify the GLSL sRGB write code. 2009-07-10 12:13:03 +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
Stefan Dösinger 37b73478f1 wined3d: An indirect address op can adjust min and max at the same time. 2009-07-09 12:47:24 +02:00
Henri Verbeet 9cf7888002 wined3d: Fix some cast-qual warnings. 2009-07-09 11:38:07 +02:00
Henri Verbeet 95d9b1271f wined3d: Get rid of the useless "fragcolor" variable in shader_glsl_generate_pshader(). 2009-07-09 11:38:05 +02:00
Henri Verbeet 483d552e21 wined3d: Allow shader_buffer_init() to fail. 2009-07-09 11:38:02 +02:00
Henri Verbeet 40b411958b wined3d: Rename "SHADER_BUFFER" to something sane. 2009-07-09 11:37:58 +02:00
Henri Verbeet bddc4d3f0d wined3d: Reuse the shader buffer between shaders. 2009-07-09 11:37:53 +02:00
Henri Verbeet 6211643bf5 wined3d: Fix a sign compare warning in shader_vaddline(). 2009-07-08 20:14:44 +02:00
Henri Verbeet e41831990d wined3d: Fix a sign compare warning in glsl_shader.c. 2009-07-08 20:14:35 +02:00
Henri Verbeet 949cd089d5 wined3d: Trace the D3D shader in find_glsl_vshader() / find_glsl_pshader().
It's quite useful to know to which D3D shader a GLSL shader corresponds.
2009-07-08 20:14:32 +02:00
Henri Verbeet 6d8e1e52c8 wined3d: Avoid destroying the currently active context for non-implicit swapchains. 2009-07-08 20:14:25 +02:00
Henri Verbeet 7089128d2a wined3d: Implement a A8R8G8B8 to X8R8G8B8 surface format converter. 2009-07-08 20:14:21 +02:00
Erik Inge Bolsø 48995f3354 wined3d: Fix Nvidia GTX series misdetection. 2009-07-08 20:13:25 +02:00
Henri Verbeet 3484d46a36 wined3d: Replace some shader_is_pshader_version() calls with plain type checks. 2009-07-07 11:50:35 +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