Commit Graph

2996 Commits

Author SHA1 Message Date
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 3644a7f6d7 wined3d: Free the logo path when we're done with it. 2009-03-11 13:03:32 +01:00
Henri Verbeet a75590343a wined3d: Set the correct texture names on cube surfaces. 2009-03-11 13:03:32 +01:00
Henri Verbeet 67da604eca wined3d: Get rid of a few stack buffers. 2009-03-10 12:07:02 +01:00
Henri Verbeet 1fa83c95de wined3d: Don't call shader_glsl_append_dst() from shader_glsl_texldl().
shader_glsl_gen_sample_code() already takes care of adding the destination.
2009-03-10 12:06:47 +01:00
Henri Verbeet 4e2c87dd22 wined3d: Handle error conditions better in RemoveContextFromArray(). 2009-03-09 14:44:02 +01:00
Henri Verbeet 695c69f6a0 wined3d: Use shader_glsl_get_write_mask_size() to calculate the write mask size. 2009-03-09 14:39:48 +01:00
Henri Verbeet 362bc0d694 wined3d: Don't compare const_num against -1. 2009-03-09 14:39:39 +01:00
Henri Verbeet 4ff5736edf wined3d: Don't compare texUnitMap entries to -1. 2009-03-09 14:39:34 +01:00
Henri Verbeet a3df476706 wined3d: Buffer object ID's are supposed to be unsigned. 2009-03-09 14:39:18 +01:00
Henri Verbeet aa3027a604 wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet 6324ba66ca wined3d: Simplify IWineD3DVertexBufferImpl_PreLoad() a bit. 2009-03-06 15:35:50 +01:00
Henri Verbeet 594cc7ebc1 wined3d: Also set VBFLAG_HASDESC if we can determine we don't need conversion. 2009-03-06 15:35:28 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 3b07e7059e wined3d: Add d3d10 primitive types. 2009-03-05 16:16:24 +01:00
Henri Verbeet 3f9e0d9320 wined3d: Add support for ARB_geometry_shader4. 2009-03-05 16:16:24 +01:00
Henri Verbeet 17e12611b8 wined3d: Fix some prototypes. 2009-03-05 16:16:24 +01:00
Henri Verbeet 602bb1f551 wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods. 2009-03-05 16:16:24 +01:00
Henri Verbeet 703ef0de02 wined3d: Use flags for shader_glsl_get_sample_function().
Having three BOOL parameters looks a bit awkward.
2009-03-04 12:07:20 +01:00
Stefan Dösinger 8781174a98 wined3d: Create a common sampling function in GLSL.
This way the individual instruction handlers don't have to bother about the
color correction, and there's now a single place to implement fixup dependent
sampling writemask selection.
2009-02-27 13:14:46 +01:00
Stefan Dösinger d7a6859960 wined3d: Make shader_glsl_get_sample_function aware of *Lod functions. 2009-02-27 13:14:33 +01:00
Stefan Dösinger 5cf764aec2 wined3d: Put the color_correction calls into the instruction handlers.
The color correction cannot be done behind the back of the individual
instruction handlers because it might conflict with the instruction's
color modifications and the D3D provided writemask.
2009-02-27 13:14:23 +01:00
Henri Verbeet b4830feb34 wined3d: Accept WINED3DFMT_R8G8B8A8_UNORM in getColorBits(). 2009-02-25 12:37:06 +01:00
Henri Verbeet 7facc6906d wined3d: Implement IWineD3DDeviceImpl_ClearRendertargetView(). 2009-02-25 12:37:06 +01:00
Stefan Dösinger 6012475e59 wined3d: Properly update last_was_pshader. 2009-02-24 16:57:30 +01:00
Henri Verbeet c796f76483 wined3d: Add IWineD3DRendertargetView. 2009-02-24 16:57:29 +01:00
Henri Verbeet 33dd39c4d0 wined3d: Merge indexbuffer.c with buffer.c. 2009-02-23 12:21:10 +01:00
Henri Verbeet 392cfefbeb wined3d: Merge vertexbuffer.c with buffer.c.
This just moves to code to the same file, but we want to merge the
implementations as well at some point.
2009-02-23 12:21:02 +01:00
Henri Verbeet 399d992a07 wined3d: Add IWineD3DBuffer, use it in d3d10core. 2009-02-23 12:20:45 +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
Henri Verbeet 828f42cb1f wined3d: Add some traces to state handlers.
Should make it a bit clearer what's happening in some cases.
2009-02-19 12:53:44 +01:00
Henri Verbeet c8a3f3f13f wined3d: Allow floating point values for WINED3DDECLUSAGE_BLENDWEIGHT.
glWeightPointerARB() obviously accepts floating point data.
2009-02-19 12:53:38 +01:00
Francois Gouget 5b60258f0d wined3d: Make debug{fixup_channel_source,yuv_fixup}() static. 2009-02-18 12:17:38 +01:00
Stefan Dösinger 4386a827e9 wined3d: Pass the requested srgb flag to PreLoad.
Add a new wined3d-internal PreLoad function to textures and surfaces
that takes a parameter specifying wether the rgb or srgb texture
should be loaded.
2009-02-17 12:51:36 +01:00
Stefan Dösinger 68c251f327 wined3d: Add a debug function for surface locations. 2009-02-17 12:51:17 +01:00
Stefan Dösinger c585b4de99 wined3d: Duplicate GL textures for srgb switching.
This reduces the number of srgb switching reloads quite a lot. The only
situation in which a reload is needed is if the rgb copy is modified on the GL
side and the srgb copy is needed.
2009-02-17 12:48:05 +01:00
Francois Gouget 83d18602d8 wined3d: Add a trailing '\n' to shader_addline() calls. 2009-02-12 17:53:35 +01:00
Stefan Dösinger 66778ed9ec wined3d: Implement EXP and EXP2 fog in GLSL. 2009-02-11 12:21:51 +01:00
Stefan Dösinger 693d9ded47 wined3d: Properly set the fog frag coord according to the FOGTABLEMODE.
This also fixes the test that an earlier patch broke, so the todo_wine can be
removed again.
2009-02-11 12:21:44 +01:00
Stefan Dösinger 8dcd51286d WineD3D: Put vertex shader duplication infrastructure in place. 2009-02-11 12:21:25 +01:00
Michael Stefaniuc 118c75a8c7 wined3d: Remove superfluous pointer casts. 2009-02-03 12:40:14 +01:00
Michael Stefaniuc cc6b283d3a wined3d: Remove some unused defines. 2009-02-03 12:40:12 +01:00
Henri Verbeet bae1ec98ca wined3d: Don't use drawStridedFast() for drawing pretransformed vertices.
This was exposed by adding EXT_vertex_array_bgra support, previously we would
almost never hit this because color data being present would already prevent
us from using drawStridedFast(). Thanks to Stefan for spotting this.
2009-01-23 13:12:58 +01:00
Henri Verbeet 0cc5f0d3eb wined3d: Don't use drawStridedFast() when pointsize data is present. 2009-01-23 13:12:52 +01:00
Henri Verbeet e82eef28f9 wined3d: Take EXT_vertex_array_bgra into account in send_attribute() and loadNumberedArrays(). 2009-01-23 13:12:47 +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
Stefan Dösinger 3d97055be7 wined3d: Get rid of is_compiled in the pixel shader. 2009-01-20 12:55:17 +01:00
Stefan Dösinger 50109aa969 wined3d: Get rid of last_was_foggy_shader & friends.
The fog settings do not depend on wether the shader writes to oFog or not,
instead they depend on the FOGVERTEXMODE and FOGTABLEMODE settings, and if a
vertex shader is bound at all.

It works the same way as with the fixed function, and having a vertex shader
is the same as using pretransformed vertices, just that the fog coord comes
from the shader instead of the specular color:

FOGTABLEMODE != NONE: The Z coord is used, oFog is ignored
FOGTABLEMODE == NONE, with VS: oFog is used
FOGTABLEMODE == NONE, no VS, XYZ: Z is used
FOGTABLEMODE == NONE, no VS, XYZRHW: diffuse color is used
2009-01-20 12:45:40 +01:00
Stefan Dösinger 3c3272dc41 wined3d: Don't single-allocate new gl shaders. 2009-01-20 12:45:09 +01:00
Henri Verbeet 5d875906c1 wined3d: Remove some superfluous pointer casts. 2009-01-20 12:34:05 +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
Henri Verbeet 44240eff27 wined3d: Remove some comments. 2009-01-15 12:43:32 +01:00
Henri Verbeet 17b94f6034 wined3d: Implement a R5G6B5 to X8R8G8B8 surface format converter.
Based on a patch by Mike Ruprecht.
2009-01-15 12:43:28 +01:00
Henri Verbeet 4c7e72bb96 wined3d: Fix a memory leak in CreateSwapChain() error handling. 2009-01-14 13:51:00 +01:00
Henri Verbeet c8c073fc9b wined3d: Get rid of D3DCREATEOBJECTINSTANCE. 2009-01-14 13:51:00 +01:00
Henri Verbeet 9440dfedf4 wined3d: Remove AddDirtyRect() from the public interface. 2009-01-14 13:51:00 +01:00
Henri Verbeet fd90021666 wined3d: Remove AddDirtyBox() from the public interface.
This is an internal wined3d function.
2009-01-14 13:51:00 +01:00
Henri Verbeet 881780276b wined3d: Remove CleanDirtyBox().
It's never used.
2009-01-14 13:51:00 +01:00
Henri Verbeet a37782595f wined3d: Fix cube texture creation error handling. 2009-01-13 15:20:56 +01:00
Henri Verbeet d030cbdad2 wined3d: Fix volume texture creation error handling. 2009-01-13 15:20:52 +01:00
Henri Verbeet 99d3c62163 wined3d: Fix surface creation error handling. 2009-01-13 15:20:44 +01:00
Henri Verbeet 2654a148de wined3d: Fix texture creation error handling.
Doing the levels calculation before the object is created prevents leaking
resources and avoids changing baseTexture.levels after it's been initialized
by basetexture_init().
2009-01-13 15:20:38 +01:00
Henri Verbeet e4cfbdd4f7 wined3d: Get rid of D3DCREATERESOURCEOBJECTINSTANCE. 2009-01-13 15:20:28 +01:00
Henri Verbeet b069321650 wined3d: Fix and unify shader creation error handling. 2009-01-12 13:22:07 +01:00
Henri Verbeet 894edc49cc wined3d: Get rid of D3DCREATESHADEROBJECTINSTANCE. 2009-01-12 13:22:02 +01:00
Henri Verbeet 87627c811e wined3d: Get rid of D3DINITIALIZEBASETEXTURE. 2009-01-12 13:21:56 +01:00
Henri Verbeet 00a4b85fa9 wined3d: Update the pixelshader when the texture type changes. 2009-01-12 13:21:51 +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
Stefan Dösinger 1deafcb5a7 wined3d: Split the remains of state_fog. 2009-01-12 13:02:49 +01:00
Stefan Dösinger 061087811f wined3d: Remove the apply_pshader_fog state handler.
The fog doesn't depend on pixel shaders any longer(but still vice
versa), so we don't need this state any more.
2009-01-12 13:02:39 +01:00
Stefan Dösinger 2dd18635c9 wined3d: Move fogdensity and fogcolor to the fragment pipeline. 2009-01-12 13:02:29 +01:00
Stefan Dösinger e61aa24aa3 wined3d: Use the ARB fog option in ARB_fragment_program shaders.
This is the "replacement" for the fog coord optimization removed in
the previous patch.
2009-01-12 13:02:19 +01:00
Stefan Dösinger 7c21147dcd wined3d: Remove the pixelshader fogstart/fogend optimization. 2009-01-12 13:01:49 +01:00
Rico Schüller 5e79b0608d wined3d: Add a checkGLcall() after glReadBuffer. 2009-01-10 18:04:28 +01:00
Allan Tong 29dd286d79 wined3d: Add code to cleanup device multistate_funcs. 2009-01-10 17:43:11 +01:00
Stefan Dösinger a69c86d3f5 ddrawex: Add a test for the permanent DC function. 2009-01-09 16:26:06 +01:00
Henri Verbeet 9d8c6326c0 wined3d: Remove stray tabs. 2009-01-09 14:06:14 +01:00
Henri Verbeet ac914262ed wined3d: Rewrite BeginStateBlock() to use CreateStateBlock() instead of duplicating the code. 2009-01-09 14:06:14 +01:00
Henri Verbeet 9d523ebd8f wined3d: Remove a silly check in drawStridedInstanced(). 2009-01-09 14:06:14 +01:00
Henri Verbeet 92488ca7c1 wined3d: Simplify checking if an attribute is used in loadNumberedArrays(). 2009-01-09 14:06:14 +01:00
Henri Verbeet d9e58e6591 wined3d: Failing HeapAlloc() should be an ERR. 2009-01-09 14:06:13 +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 45a61d1ac4 wined3d: Enable GL_HALF_FLOAT_NV when NV_HALF_FLOAT is supported.
This makes more sense than the other way around.
2009-01-08 13:21:56 +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
Henri Verbeet 6791e6b752 wined3d: Simplify handling of swizzled attributes.
This should also be a little bit faster.
2009-01-08 13:21:43 +01:00
Henri Verbeet cc447eac55 wined3d: Move position_transformed out of u.s in struct WineDirect3DVertexStridedData. 2009-01-08 13:21:31 +01:00
Henri Verbeet 1a1f5ec69d wined3d: Cleanup drawStridedFast().
Remove some uncessary code and use more descriptive parameter names. Note that
max_vertex_idx isn't the same as "minIndex + calculatedNumberOfindices - 1"
but rather "minIndex + numberOfVertices - 1". calculatedNumberOfindices just
specifies the number of vertices that's drawn, while numberOfVertices
specifies the range of vertices that's drawn.
2009-01-08 13:21:23 +01:00
Henri Verbeet 5f8c62e45d wined3d: Remove a redundant parameter to drawPrimitive().
startIdx should be the first index to draw, either from the vertex
array or the index array, depending on if the draw is indexed or
not. Having both at the same time wouldn't make sense.
2009-01-07 12:22:12 +01:00
Henri Verbeet 46eabd5b16 wined3d: Don't delete queries from the wrong context. 2009-01-07 12:22:02 +01:00
Henri Verbeet 0e8ed9bebb wined3d: Simplify IWineD3DOcclusionQueryImpl_GetData(). 2009-01-07 12:21:58 +01:00
Henri Verbeet ab275ab487 wined3d: Make calling a query from the wrong context a FIXME.
We want to know if this happens a lot. If the query is always called
from a different context than the one that created it, occlusion
culling would effectively be disabled, which could have a significant
performance impact, depending on the type of objects being culled.
2009-01-07 12:21:49 +01:00
Henri Verbeet 691894d1ab wined3d: Also apply the last sampler state.
In practice we don't implement WINED3DSAMP_DMAPOFFSET anyway, so this
is unlikely to make much of a difference.
2009-01-07 12:21:37 +01:00
Henri Verbeet bddf5e76ea wined3d: Convert textureState to a bitmap in struct SAVEDSTATES. 2009-01-06 12:45:52 +01:00
Henri Verbeet a8697d90e4 wined3d: Renumber WINED3DTEXTURESTAGESTATETYPE enum elements.
Saves some space by not having unused entries is the arrays tracking these
states.
2009-01-06 12:45:43 +01:00
Henri Verbeet e8ba733706 wined3d: Remove unused enum elements from WINED3DTEXTURESTAGESTATETYPE. 2009-01-05 12:41:31 +01:00
Henri Verbeet fd33f0f97f wined3d: Convert samplerState to a bitmap in struct SAVEDSTATES. 2009-01-05 12:41:17 +01:00
Henri Verbeet c33b38117e wined3d: Convert renderState to a bitmap in struct SAVEDSTATES. 2009-01-05 12:41:08 +01:00
Henri Verbeet fc39831e4c wined3d: Convert transform to a bitmap in struct SAVEDSTATES. 2009-01-05 12:40:57 +01:00
Stefan Dösinger 616ea53226 ddraw: Add a test for IDirectDrawSurface::GetDC. 2009-01-03 15:14:38 +01:00
Vincent Pelletier 23dcf61e61 wined3d: Make WARN about oversized texture output surface and texture sizes. 2009-01-03 14:55:31 +01:00
Henri Verbeet 9a889f6b0b wined3d: Convert textures to a bitmap in struct SAVEDSTATES. 2009-01-03 14:55:31 +01:00
Henri Verbeet 39909f2a06 wined3d: Handle WINED3DFVF_XYZW in get_flexible_vertex_size().
Spotted by Chris Robinson.
2009-01-03 14:55:31 +01:00
Henri Verbeet 3c14b3936f wined3d: Don't bother with the GLSL info log if nobody's looking. 2009-01-03 14:55:30 +01:00
Henri Verbeet 2e0212e998 wined3d: Fix the line number for some fglrx spam.
We added a #version line a while ago, so the line number for the
warning changed.
2009-01-03 14:55:30 +01:00
Allan Tong fdd512deeb wined3d: Add mapping for MOV instructions in shader_hw_map2gl. 2009-01-02 11:53:35 +01:00
Henri Verbeet 3b5c75d991 wined3d: Convert clipplane to a bitmap in struct SAVEDSTATES. 2009-01-02 11:53:04 +01:00
Henri Verbeet 52a900d4e8 wined3d: Convert streamSource and streamFreq to bitmaps in struct SAVEDSTATES. 2009-01-02 11:52:34 +01:00
Henri Verbeet 457037f4de wined3d: Fix the value of HIGHEST_TRANSFORMSTATE.
The highest transform state should be 511.
2009-01-02 11:52:02 +01:00
Henri Verbeet 73e042496c wined3d: Fix a few format specifiers in IWineD3DStateBlockImpl_Capture(). 2009-01-02 11:51:54 +01:00
Henri Verbeet 0657e8d87a wined3d: Use slightly nicer loops in device_map_fixed_function_samplers(). 2009-01-02 11:51:46 +01:00
Henri Verbeet 3920d42f71 wined3d: Convert some BOOLs to bitfields in struct SAVEDSTATES. 2008-12-31 12:26:57 +01:00
Henri Verbeet 29a0d06518 wined3d: Convert some BOOLs to bitfields in struct IWineD3DDeviceImpl.
Also fills a 3 byte hole.
2008-12-31 12:26:33 +01:00
Henri Verbeet 3f12f59aa4 wined3d: Convert some BOOLs to bitfields in struct WineD3DContext.
Also happens to fill two 3 byte holes.
2008-12-31 12:26:23 +01:00
Henri Verbeet 813c7ed202 wined3d: Remove an unused field from the device. 2008-12-31 12:26:02 +01:00
Henri Verbeet 2b926db50d wined3d: Make use_vs() and use_ps() work on a stateblock instead of a device.
Most callers work on a stateblock rather than a device, and the main fields
we check (vertexShader and pixelShader) are part of the stateblock as well.
2008-12-31 12:25:56 +01:00
Henri Verbeet f197e8b1ca wined3d: Handle D3DFVF_XYZW in ConvertFvfToDeclaration().
This is similar to 0bdab5f80c.
2008-12-30 11:36:57 +01:00
Henri Verbeet 007c648c20 d3d: Correct some debug levels. 2008-12-30 11:36:50 +01:00
Henri Verbeet 6f5af4047f wined3d: Get rid of the glname field in struct SHADER_OPCODE.
It's only used for shader_hw_map2gl() and vshader_hw_rsq_rcp(), and we
can handle those the same way we handle the GLSL equivalents.
2008-12-30 11:36:35 +01:00
Henri Verbeet 29b826b39e wined3d: D3DRS_POINTSIZE_MIN is initially 0.0f for d3d8. 2008-12-29 12:16:52 +01:00
Henri Verbeet de494ffe3c wined3d: The initial value for D3DRS_POINTSIZE_MAX depends on the pointsize limit. 2008-12-29 12:16:42 +01:00
Francois Gouget 2166afceb7 Assorted spelling fixes. 2008-12-29 11:36:49 +01:00
Vincent Pelletier 143bd931b6 wined3d: Detect intel 945 GM. 2008-12-29 11:35:36 +01:00
Nick Burns 9dea6f7de5 wined3d: Fix glReadPixels call from read_from_framebuffer. 2008-12-26 13:42:17 +01:00
Andrew Talbot f9762d6082 wined3d: Remove superfluous semicolons. 2008-12-24 19:59:14 +01:00
Maarten Lankhorst 4eca43e702 winex11.drv/wined3d: Fix tsx11 calling convention. 2008-12-23 12:51:44 +01:00
Nick Burns c52fd346ef wined3d: Fix a couple of typos in wined3d_gl.h 2008-12-22 14:14:52 +01:00
Rico Schüller b061f64228 wined3d: Fix compilation for Windows build. 2008-12-22 10:29:14 +01:00
Henri Verbeet 02e4c33611 wined3d: Consistently use .xyzw for vector components. 2008-12-20 11:11:55 +01:00
Henri Verbeet 33f344882c wined3d: Remove a useless FIXME. 2008-12-20 11:11:49 +01:00
Henri Verbeet 4a19d893e5 wined3d: Only apply shader constants that changed.
This improves performance a bit for applications that use a lot of
shaders with a lot of constants.
2008-12-20 11:11:45 +01:00
Henri Verbeet 684017c071 wined3d: Properly reset the stateblock. 2008-12-20 11:11:39 +01:00
Henri Verbeet ef7365a4cd wined3d: Set the initial viewport in InitStartupStateBlock().
>From 8aa3fb7ceb6fb93abf71520c852403284a9f8c76 Mon Sep 17 00:00:00 2001
From: Henri Verbeet <hverbeet@codeweavers.com>
Date: Fri, 19 Dec 2008 19:21:55 +0100
Subject: wined3d: Set the initial viewport in InitStartupStateBlock().
2008-12-20 11:11:34 +01:00
Henri Verbeet a52edd7810 wined3d: Don't call allocate_shader_constants() from Init3D().
CreateStateBlock() should take care of that.
2008-12-19 18:05:02 +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 331fe08b54 wined3d: Add R32F using ARB_texture_rg. 2008-12-19 17:49:08 +01:00
Roderick Colenbrander 8cb84458d3 wined3d: Add R16F using ARB_texture_rg. 2008-12-19 17:49:02 +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
Stefan Dösinger 690cbe76ac wined3d: Make pixelshaders disable fog properly.
This is a first step towards cleaning up the fog mess. The fog
parameter is added to the pixelshader compile args structure. That way
multiple pshaders are compiled for different fog settings, and the
pixel shader can remove the fog line if fog is not enabled. That way
we don't need special fog start and end settings, and this allows us
to implement EXP and EXP2 fog in the future too.
2008-12-19 17:17:16 +01:00
Stefan Dösinger 7d92b54a97 wined3d: Use the ps_compile_args struct in glsl. 2008-12-19 17:17:04 +01:00
Stefan Dösinger 20189eb4f8 wined3d: Make use of ps_compile_args in arb shader. 2008-12-19 17:16:56 +01:00
Stefan Dösinger 30d542c3dd wined3d: Make use of the ps_compile_args structure in glsl_shader.
Only a first step, many more occasions need fixing. This is an easy
one though.
2008-12-19 17:16:50 +01:00
Stefan Dösinger 61e581abb4 wined3d: Pass the ps_compile_args structures to the shader generation code. 2008-12-19 17:16:39 +01:00
Henri Verbeet d099dde7a9 wined3d: Track shader constants in the shader backend. 2008-12-18 13:17:02 +01:00
Henri Verbeet a14dab4937 wined3d: Don't mark shader constants dirty when we're recording a stateblock. 2008-12-18 13:16:52 +01:00
Henri Verbeet 0968cb9b6c wined3d: Fix constant setting for the ARB backend. 2008-12-18 13:16:46 +01:00
Francois Gouget cf7c8a2425 wined3d: Fix double const. 2008-12-17 15:28:39 +01:00
Henri Verbeet 73823ef5f6 wined3d: Remove the shader_cleanup() method from the shader backend. 2008-12-17 14:02:24 +01:00
Henri Verbeet 78ad5de8da wined3d: Record floating point pixel shader constants in EndStateBlock() as well. 2008-12-17 14:02:09 +01:00