Commit Graph

481 Commits

Author SHA1 Message Date
Stefan Dösinger a3c2fb9e64 wined3d: Store if half float conversion is needed in the decl. 2007-12-20 10:48:16 +01:00
Stefan Dösinger 7a1d35e513 wined3d: Emulate half float vertices if GL_NV_half_float is not there. 2007-12-19 12:19:27 +01:00
Stefan Dösinger df77e28854 wined3d: Implement D3DFMT_G16R16. 2007-12-18 14:08:18 +01:00
Stefan Dösinger 7f10ee453a wined3d: Use the adapter to read the display mode. 2007-12-11 12:14:35 +01:00
Stefan Dösinger 0e8c13e630 wined3d: A more detailed occlusion query test and fixes. 2007-12-07 15:27:11 +01:00
Stefan Dösinger 54fa712981 wined3d: Initialize output texcoord .w to 1.0 if needed.
The GL_ARB_vertex_program extension does not define a standard value for
output texture coordinates. This makes problems when using vertex
shaders with fixed function fragment processing because fffp divides the
texture coords by its .w component. This means that gl shaders have to
write to the .w component of texture coords. Direct3D shaders however
do not.
2007-12-07 14:54:22 +01:00
Stefan Dösinger 9bc6200ece wined3d: Add a method for querying the gl drawable size of rendertarget. 2007-12-04 14:32:39 +01:00
Stefan Dösinger 3cc253c557 wined3d: Enabling too many lights is silently ignored.
I'm resending this patch because my reply to Henri's concern came too late. 
Henri noted that I am enabling lights that do not exist. Existing tests show 
that if no light is assigned to the index, LightEnable creates a light with a 
set of default parameters, so the tests should be fine.

From 9ee4c61805b50886f79e87d744b52f27b7b00b4e Mon Sep 17 00:00:00 2001
From: Stefan Doesinger <stefan@codeweavers.com>
Date: Thu, 29 Nov 2007 13:22:47 +0100
Subject: [PATCH] WineD3D: Enabling too many lights is silently ignored

This patch adds tests for all d3d versions that show that Windows
pretends that enabling more lights than supported succeeds. D3D_OK is
returned, and the light is reported as enabled.

What is not tested in this patch is the rendering output of this
situation, thus the FIXME is still written.
2007-12-03 13:44:07 +01:00
Stefan Dösinger d09cbcec91 wined3d: Activate GL_ARB_texture_rectangle. 2007-11-29 13:36:55 +01:00
Alexandre Julliard 57d1548b51 wined3d: Add printf format checking to the shader_addline function and fix resulting warnings. 2007-11-28 13:40:29 +01:00
Stefan Dösinger 959212304d wined3d: Track vertex declaration changes on vertex shaders.
If an attribute has type D3DDECLTYPE_D3DCOLOR, the red and blue channels
are swizzled in the shader. Since the attribute is stored in the vertex
declaration and not the vertex shader, it can change by setting a new
vertex declaration. If this happens, we have to recompile the shader
with the swizzling of that specific attribute turned on or off.
2007-11-21 12:18:02 +01:00
Stefan Dösinger cfc5725760 wined3d: Move glsl shader destruction to the glsl shader backend. 2007-11-21 12:06:27 +01:00
Stefan Dösinger 1fc1fe3c6e wined3d: Use standard wine lists for the resource list. 2007-11-20 13:10:46 +01:00
Stefan Dösinger 7a97d4e2ec wined3d: Free the shader function when freeing the shader. 2007-11-20 13:02:07 +01:00
Stefan Dösinger bd97580683 wined3d: Move IUnknown functions to IWineD3DBaseShader. 2007-11-20 12:53:07 +01:00
Stefan Dösinger f13bb40671 wined3d: Do not call PreLoad in surface_download_data. 2007-11-16 13:23:02 +01:00
Stefan Dösinger 26f7eae9cf wined3d: Non power of two texture fixes. 2007-11-14 11:59:21 +01:00
Stefan Dösinger e4f8a2da2b wined3d: Depth stencil fixes. 2007-11-14 11:58:36 +01:00
Stefan Dösinger edb78187a9 wined3d: Hardcode local constants into the shader if possible. 2007-11-14 11:51:26 +01:00
Stefan Dösinger 6fd4f8f699 wined3d: Store integer uniform locations. 2007-11-09 12:32:02 +01:00
Stefan Dösinger bfec6c352d wined3d: Store the special uniforms' locations in the linked program. 2007-11-09 12:31:54 +01:00
Stefan Dösinger fb0dde7b27 wined3d: Relative addressing offsets are limited to [-64; 63] in arb. 2007-11-08 11:54:43 +01:00
Stefan Dösinger 1b23dd1ba1 wined3d: Implement the varying map. 2007-11-07 12:08:32 +01:00
Stefan Dösinger 409103f801 wined3d: Install a varying map. 2007-11-07 12:08:24 +01:00
Roderick Colenbrander df892ff67d wined3d: Rewrite the draw buffer selection code.
Before it was done in findContext, before selecting the new context
which is bad (it doesn't always work). The new code works and this
change also fixes some draw buffer regressions that happened during
the surface rewrite from the last couple of days.
2007-11-06 13:56:55 +01:00
Stefan Dösinger 3febe738ab wined3d: Handle ps 3.0 varyings in a different way. 2007-11-06 13:34:57 +01:00
Stefan Dösinger 393ed4a070 wined3d: Make resource memory 32 byte aligned. 2007-11-01 12:38:45 +01:00
Stefan Dösinger 4d4fce7e33 wined3d: Disconnect allocatedMemory and Heap allocation. 2007-11-01 12:38:37 +01:00
Stefan Dösinger a175e7b68e wined3d: Move a part of LockRect to the base class. 2007-11-01 12:38:17 +01:00
Stefan Dösinger 948292dbc3 wined3d: Move texture -> drawable blits to LoadLocation. 2007-11-01 12:37:43 +01:00
Stefan Dösinger f6637cae98 wined3d: Move texture loading to LoadLocation. 2007-10-29 12:04:11 +01:00
Stefan Dösinger dcff7dc213 wined3d: Begin centralizing surface location management. 2007-10-26 15:17:19 +02:00
Stefan Dösinger 8f3accc718 wined3d: Care for the inverted y coords in dsy. 2007-10-22 15:59:04 +02:00
Roderick Colenbrander 134aa67ec9 wined3d: Use a fragment shader to do P8 palette conversion in hardware. 2007-10-12 11:07:23 +02:00
Stefan Dösinger 3f16f02940 wined3d: Nested loop support. 2007-10-04 12:03:59 +02:00
Stefan Dösinger 3d3369a77c wined3d: d3d ignores the sign of the input value in the log instruction. 2007-10-03 11:03:12 +02:00
Stefan Dösinger 9c6cdda147 wined3d: Reverse the position fixup if the pshader is reading vpos. 2007-10-03 11:02:48 +02:00
Stefan Dösinger 822030e329 wined3d: Enable the mNxN implementation for pixel shaders. 2007-10-01 13:00:19 +02:00
Stefan Dösinger d4019780b5 wined3d: Implement texbeml in arb shaders. 2007-10-01 13:00:12 +02:00
Stefan Dösinger 6644704039 wined3d: Add texreg2rgb support to arb shaders. 2007-10-01 12:59:59 +02:00
Francois Gouget b2bc712323 Assorted spelling fixes. 2007-09-27 20:12:53 +02:00
Stefan Dösinger 20872abc9c wined3d: Add sincos support to arb shaders. 2007-09-27 11:57:41 +02:00
Stefan Dösinger daf2290ea4 wined3d: Implement the nrm instruction in arb. 2007-09-27 11:57:29 +02:00
Stefan Dösinger 1407bdb2cf wined3d: Add dp2add support to arb shaders. 2007-09-27 11:57:20 +02:00
Stefan Dösinger 9531a10897 wined3d: Add support for some unimplemented instructions to arb shaders. 2007-09-25 11:20:51 +02:00
Roderick Colenbrander 243ac3ed75 wined3d: Move video memory tracking to the adapter. 2007-09-24 13:50:43 +02:00
Stefan Dösinger 6313e0ffff wined3d: SRGB write correction emulation. 2007-09-24 13:30:30 +02:00
Stefan Dösinger 2b2c9199e8 wined3d: Unify pixel format correction. 2007-09-24 13:30:21 +02:00
Stefan Dösinger 1c4a15d2cd wined3d: Recompile glsl pixelshaders if the sampler format changes. 2007-09-24 13:30:08 +02:00
Stefan Dösinger 5a63b79a66 wined3d: Untie culling and offscreen rendering. 2007-09-19 11:39:55 +02:00