Commit Graph

744 Commits

Author SHA1 Message Date
Stefan Dösinger 2cdced8193 wined3d: Adjust the rhw transformation for offscreen rendering.
When drawing processed vertices with the fixed function pipeline the
projection matrix is set up to map y values from 0 to height to 1.0;
-1.0(gl and d3d coord systems are flipped). This moves the y axis to
the bottom of the drawing area. When later on the y inversion matrix
is applied for offscreen rendering, the coordinate system will get
flipped out of the viewport.

This patch sets the Y range up upside down when using offscreen
rendering, so the invymat will flip it to the correct position. This
has to happen before the 0.375 pixel correction.
2007-03-05 15:31:36 +01:00
H. Verbeet 3aaabf4e27 wined3d: Properly check the clipplane index against the limit. 2007-03-05 12:06:33 +01:00
Stefan Dösinger 5afbfd0359 wined3d: Clip planes with vertex shaders. 2007-02-28 21:09:58 +01:00
Stefan Dösinger 409aa73132 wined3d: Move clip planes to the state table. 2007-02-28 21:09:37 +01:00
Stefan Dösinger 38d961a749 wined3d: Leave the fog state handler after disabling fog. 2007-02-28 21:05:14 +01:00
Vitaliy Margolen 51ee7f4978 wined3d: Use application provided fog range when fog is enabled. 2007-02-26 13:58:09 +01:00
Stefan Dösinger 76b7cac7af wined3d: Light parameter fixes. 2007-02-21 10:55:31 +01:00
Francois Gouget 93494f2ac0 Assorted spelling fixes. 2007-02-20 20:30:51 +01:00
Stefan Dösinger 59ae2a56fb wined3d: Use VBOs for index buffers. 2007-02-20 11:50:10 +01:00
Stefan Dösinger ecfd4cb0e4 wined3d: Move the scissor rectangle to the state table. 2007-02-20 11:49:53 +01:00
Stefan Dösinger 762e227994 wined3d: Only scream about unsupported vertex blending when it is used. 2007-02-19 13:10:24 +01:00
Stefan Dösinger 266fc77cf0 wined3d: Lighting is calculated for vertices without normals.
It still should be disabled for transformed vertices though.
2007-02-19 13:08:35 +01:00
H. Verbeet a2fde7d912 wined3d: Get rid of any remaining d3d9 stuff in state.c. 2007-02-15 14:20:56 +01:00
Stefan Dösinger b3f96f4327 wined3d: alphaop fixes for color keying. 2007-02-15 11:40:57 +01:00
Stefan Dösinger d4c4e5d167 wined3d: Enable color keying only for surfaces without an alpha channel. 2007-02-15 11:40:44 +01:00
Stefan Dösinger 49a49fcfec wined3d: Load one bump mapping environment matrix into pixel shaders if needed. 2007-02-15 11:36:01 +01:00
Stefan Dösinger efbd6d6332 wined3d: Give the bump env matrices their own states. 2007-02-15 11:35:52 +01:00
H. Verbeet 498f9c507a wined3d: Use WINED3DSTREAMSOURCE_INSTANCEDATA rather than D3DSTREAMSOURCE_INSTANCEDATA. 2007-02-15 11:15:25 +01:00
Francois Gouget 536e738552 Assorted spelling fixes. 2007-02-14 21:03:57 +01:00
Stefan Dösinger 0feddccfe3 wined3d: Instancing emulation. 2007-02-14 20:46:25 +01:00
Stefan Dösinger 93cd7ef7ff wined3d: Correctly load vertex attributes with a stride of 0. 2007-02-14 20:46:02 +01:00
Stefan Dösinger 174b6321eb wined3d: Move lights to the state table. 2007-02-14 20:45:15 +01:00
Stefan Dösinger acadf3f241 wined3d: Replace the light chain with a hashmap. 2007-02-14 20:44:58 +01:00
H. Verbeet 32e5cac2be wined3d: Get rid of the vertexDeclaration field in IWineD3DVertexShaderImpl. 2007-02-14 13:54:29 +01:00
Stefan Dösinger b48dfb3c54 wined3d: Always use np2 repacking if no native np2 support is available. 2007-02-14 12:29:01 +01:00
H. Verbeet 2a309f503d wined3d: Cleanup the pixelshader() state handler a little bit. 2007-02-14 12:21:46 +01:00
H. Verbeet 1636bc1aec wined3d: Always select the correct shader pair in the vertexdeclaration() state handler. 2007-02-14 12:21:41 +01:00
Stefan Dösinger 380930dc54 wined3d: Store dirty states per context. 2007-02-13 11:55:07 +01:00
Stefan Dösinger e6c9a073b0 wined3d: Store state optmization members in the context. 2007-02-13 11:50:38 +01:00
Stefan Dösinger c739c387b6 wined3d: Add a per context structure for context management. 2007-02-13 11:50:14 +01:00
Francois Gouget b0bde6b87c Assorted spelling fixes. 2007-01-18 12:56:52 +01:00
H. Verbeet d429ff5b69 wined3d: When switching color material, apply the material we were previously tracking.
This fixes a regression introduced by 329670c7f1.
2007-01-18 12:08:57 +01:00
H. Verbeet 612a74a994 wined3d: Don't set Parm when isDiffuseSupplied is FALSE in state_colormat(), it isn't used anyway. 2007-01-18 12:08:45 +01:00
Stefan Dösinger 354fdae524 wined3d: Implement per stream offsets. 2007-01-17 11:24:04 +01:00
Stefan Dösinger b07c48c499 wined3d: Do not activate / deactivate texture dimensions twice. 2007-01-10 22:03:28 +01:00
Stefan Dösinger 08c7b3947b wined3d: Fix a capital letter in a parameter name. 2007-01-10 22:03:09 +01:00
Stefan Dösinger 7fd246ebe3 wined3d: Add copyright statements to state.c. 2007-01-10 22:02:23 +01:00
Stefan Dösinger fe6165db19 wined3d: Attempt to remove some tabs smuggled in by xcode. 2007-01-10 22:02:10 +01:00
Stefan Dösinger 953f8d7b37 wined3d: Do not warn about unsupported point sizes if the default values are set. 2007-01-10 22:01:57 +01:00
Stefan Dösinger 60ea760945 wined3d: Avoid false resultarg warnings. 2007-01-10 22:01:46 +01:00
Stefan Dösinger 9b4920996e wined3d: Move material applying to the state table. 2007-01-10 22:00:34 +01:00
Michael Stefaniuc 33af3c5c83 janitorial: Use the C standard for multiline strings. 2007-01-10 12:28:19 +01:00
Stefan Dösinger 577f8db7cf wined3d: Fix np2 textures. 2007-01-08 21:00:23 +01:00
Stefan Dösinger 2e55c196ee wined3d: Remove some unneeded context cache members from the device. 2007-01-08 21:00:04 +01:00
Stefan Dösinger fdb62cbaeb wined3d: Do not activate vertex shaders needlessly. 2007-01-08 20:58:21 +01:00
Stefan Dösinger 09ab812e79 wined3d: Avoid negative draw start indices. 2007-01-08 20:58:11 +01:00
Stefan Dösinger 8e37fcd266 wined3d: Move applying shader constants to the state table. 2007-01-08 20:57:57 +01:00
Stefan Dösinger 799770b992 wined3d: Apply shaders in their state handlers. 2007-01-08 20:56:51 +01:00
Stefan Dösinger 7e314011fb wined3d: Move debugging fixmes from drawprim to the stream source handler. 2007-01-08 20:56:36 +01:00
Stefan Dösinger 27bac24acb wined3d: Re-add the fixed function stream source trace. 2007-01-08 20:56:06 +01:00
Stefan Dösinger d5f18e6a63 wined3d: Move applying the gl stream sources to the state table. 2007-01-08 20:55:51 +01:00
Chris Robinson d8c67c3415 wined3d: state_pointsprite should apply to all texture units. 2007-01-04 21:36:59 +01:00
H. Verbeet 7ae71a92a2 wined3d: Skip sampler state application for stages that aren't mapped to a texture unit. 2007-01-04 21:23:42 +01:00
H. Verbeet aced8de853 wined3d: Skip WINED3DTSS_TEXCOORDINDEX state application for stages that aren't mapped to a texture unit. 2007-01-04 21:23:37 +01:00
H. Verbeet c7fad607ba wined3d: Don't do WINED3DTSS_ALPHAOP texture operations for stages that aren't mapped to a texture unit. 2007-01-04 21:23:31 +01:00
H. Verbeet 8c530333cb wined3d: Don't do WINED3DTSS_COLOROP texture operations for stages that aren't mapped to a texture unit. 2007-01-04 21:18:10 +01:00
Francois Gouget bbb2b7fd98 Assorted spelling fixes. 2007-01-04 11:27:31 +01:00
Stefan Dösinger 51a9810693 wined3d: Move decoding the streams to their own inline function. 2007-01-04 10:58:20 +01:00
Stefan Dösinger 0d700bef5d wined3d: Break the viewport out of the vertex declaration state. 2007-01-04 10:57:33 +01:00
Stefan Dösinger e26e3ee5f3 wined3d: Remove d3ddevice_set_ortho. 2007-01-03 11:19:55 +01:00
Stefan Dösinger 82bd0790ed wined3d: Move the projection matrix into its own state. 2007-01-03 11:19:45 +01:00
Stefan Dösinger a0ff9826ad wined3d: Break the lighting state out of the vertex decl. 2007-01-03 11:19:31 +01:00
Stefan Dösinger 5fa0f7f775 wined3d: Move the world matrix to the state table. 2007-01-03 11:19:09 +01:00
Stefan Dösinger 20de200fa3 wined3d: Move the functionality of primitiveInitState to the state table. 2007-01-03 11:17:08 +01:00
Stefan Dösinger a48bbc3611 wined3d: Add a viewport state to the state table. 2007-01-03 11:10:13 +01:00
Stefan Dösinger 438c172841 wined3d: Move decoding the vertex declaration to the vertexshader state handler. 2007-01-03 11:10:01 +01:00
Nick Burns d955715180 wined3d: Fix point handling. 2007-01-02 20:29:53 +01:00
Stefan Dösinger ef1ebb6e4d wined3d: Add emtpy vertex declaration and related states to the state table. 2007-01-02 12:29:18 +01:00
Stefan Dösinger a710f721c3 wined3d: Add stub handlers for world matrices 1-255. 2007-01-02 12:29:11 +01:00
Stefan Dösinger f5fafab663 wined3d: Move WINED3DTS_MODELVIEW to the state table. 2007-01-02 12:25:00 +01:00
Stefan Dösinger 197ec1c179 wined3d: Remove IWineD3DDevice_ApplyStateChanges. 2007-01-02 12:22:04 +01:00
Stefan Dösinger c10efb3492 wined3d: Move WINED3DTS_TEXTURETRANSFORMFLAGS to the state table. 2007-01-02 12:21:50 +01:00
Stefan Dösinger b58715e8ab wined3d: Add empty transform states to the state table. 2006-12-29 12:49:41 +01:00
Alexandre Julliard bbfe120036 Revert "wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4."
This reverts commit 045975b1f4.
2006-12-29 11:35:57 +01:00
H. Verbeet 045975b1f4 wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4. 2006-12-28 12:17:29 +01:00
Stefan Dösinger d6245409de wined3d: D3DRS_BLENDFACTOR should not influence glBlend(TRUE/FALSE). 2006-12-26 12:37:20 +01:00
Stefan Dösinger df97fd3e46 wined3d: Reinstall the nvrc texture unit mapping. 2006-12-20 17:09:40 +01:00
Stefan Dösinger 22e2a5aca5 wined3d: Add pixel shaders to the state table. 2006-12-20 17:09:21 +01:00
Stefan Dösinger 666b507766 wined3d: Move samplers to the state table. 2006-12-20 17:07:56 +01:00
Stefan Dösinger 2d1aeb4382 wined3d: Add empty sampler entries to the state table. 2006-12-20 17:07:47 +01:00
Stefan Dösinger 557b1fa477 wined3d: Make WINED3DTSS_CONSTANT a nogl state. 2006-12-20 17:07:19 +01:00
Stefan Dösinger 63a8c3c408 wined3d: Make a WINED3DTSS_RESULTARG stub. 2006-12-20 17:07:11 +01:00
Stefan Dösinger aec9f1143b wined3d: Make WINED3DTSS_TEXTURETRANSFORMFLAGS a nogl state. 2006-12-20 17:07:02 +01:00
Stefan Dösinger 1021f64474 wined3d: Add a WINED3DTSS_BUMPENVLOFFSET stub. 2006-12-20 17:06:51 +01:00
Stefan Dösinger 72a4f6e1cf wined3d: Add a WINED3DTSS_BUMPENVSCALE stub. 2006-12-20 17:06:35 +01:00
Stefan Dösinger 4e5314011b wined3d: Move WINED3DTSS_TEXCOORDINDEX to the state table. 2006-12-20 17:06:24 +01:00
Stefan Dösinger bd6a6ad2c0 wined3d: Move WINED3DTSS_ALPHAOP to the state table. 2006-12-20 17:06:10 +01:00
Stefan Dösinger 762af471e8 wined3d: Move WINED3DTSS_COLOROP to the state table. 2006-12-20 17:06:00 +01:00
Stefan Dösinger 569a2fa7c0 wined3d: Add empty texture stage states to the state table. 2006-12-20 17:05:40 +01:00
Stefan Dösinger f661a8287c wined3d: Add WINED3DRS_STIPPLEPATTERNxy. 2006-12-19 16:53:44 +01:00
Stefan Dösinger f154f543aa wined3d: Fix a function name. 2006-12-19 16:53:37 +01:00
Stefan Dösinger ff077ec621 wined3d: Add missing render state function. 2006-12-19 16:53:30 +01:00
Stefan Dösinger 92460b98d1 wined3d: Move WINED3DRS_SEPARATEALPHABLENDENABLE to the state table. 2006-12-11 16:27:04 +01:00
Stefan Dösinger 8a5bf91b4e wined3d: Move SRGBWRITEENABLE to the state table. 2006-12-11 16:26:53 +01:00
Stefan Dösinger cd0d0a7041 wined3d: Move tesselation to the state table. 2006-12-11 16:26:39 +01:00
Stefan Dösinger 3bb41771ad wined3d: Move WINED3DRS_NORMALDEGREE to the state table. 2006-12-11 16:26:25 +01:00
Stefan Dösinger 052197acb0 wined3d: Move WINED3DRS_POSITIONDEGREE to the state table. 2006-12-11 16:26:14 +01:00
Stefan Dösinger e25edbfc66 wined3d: Make WINED3DRS_DEBUGMONITORTOKEN a nogl state. 2006-12-11 16:26:05 +01:00
Stefan Dösinger 8197470d67 wined3d: Move WINED3DRS_PATCHSEGMENTS to the state table. 2006-12-11 16:25:48 +01:00
Stefan Dösinger e498a16124 wined3d: Move WINED3DRS_PATCHEDGESTYLE to the state table. 2006-12-11 16:25:13 +01:00
Stefan Dösinger d7b8549963 wined3d: Move WINED3DRS_MULTISAMPLEMASK to the state table. 2006-12-11 16:25:03 +01:00
Stefan Dösinger 55a5b4ca1e wined3d: Move WINED3DRS_ANTIALIAS to the state table. 2006-12-11 16:24:52 +01:00
Stefan Dösinger 2710be0327 wined3d: Move WINED3DRS_STIPPLEDALPHA to the state table. 2006-12-11 16:24:38 +01:00
Stefan Dösinger 312be46415 wined3d: Move WINED3DRS_TEXTUREPERSPECTIVE to the state table. 2006-12-11 16:24:23 +01:00
Stefan Dösinger 30cf5e4e90 wined3d: Move WINED3DRS_DEPTHBIAS to the state table. 2006-12-11 16:24:10 +01:00
Stefan Dösinger d7e55c2841 wined3d: Move WINED3DRS_SCISSORTESTENABLE to the state table. 2006-12-11 16:23:57 +01:00
Stefan Dösinger 0c1aba5fe2 wined3d: Move WINED3DRS_MULTISAMPLEANTIALIAS to the state table. 2006-12-11 16:23:45 +01:00
Stefan Dösinger 81dce7189d wined3d: Move WINED3DRS_WRAPx to the state table. 2006-12-11 16:23:34 +01:00
Stefan Dösinger 920225d4a4 wined3d: Move WINED3DRS_POINTSPRITEENABLE to the state table. 2006-12-11 16:23:18 +01:00
Stefan Dösinger c5344709b1 wined3d: Move WINED3DRS_LASTPIXEL to the state table. 2006-12-11 16:22:48 +01:00
Stefan Dösinger 580b9961f4 wined3d: Move WINED3DRS_LOCALVIEWER to the state table. 2006-12-11 16:22:35 +01:00
Stefan Dösinger 4c64b86f5b wined3d: Move WINED3DRS_COLORWRITEENABLEx to the state table. 2006-12-11 16:22:18 +01:00
Stefan Dösinger caa371a69c wined3d: Move point scale render states to the state table. 2006-12-11 16:22:03 +01:00
Stefan Dösinger 9a0e4b5453 wined3d: Move WINED3DRS_POINTSIZE_MAX to the state table. 2006-12-11 16:21:39 +01:00
Stefan Dösinger 51b41d9981 wined3d: Move WINED3DRS_POINTSIZE_MIN to the state table. 2006-12-11 16:21:23 +01:00
Stefan Dösinger 0ec7c8b55a wined3d: Move WINED3DRS_POINTSIZE to the state table. 2006-12-11 16:20:52 +01:00
Stefan Dösinger 2ea57677d3 wined3d: Move WINED3DRS_NORMALIZENORMALS to the state table. 2006-12-11 16:20:01 +01:00
Stefan Dösinger dd6f5a5437 wined3d: Move WINED3DRS_ZBIAS to the state table. 2006-12-11 16:19:50 +01:00
Stefan Dösinger 6a5d7df74f wined3d: Move WINED3DRS_LINEPATTERN to the state table. 2006-12-11 16:19:36 +01:00
Stefan Dösinger 81a1dce0cb wined3d: Move WINED3DRS_COLORVERTEX to the state table. 2006-12-11 16:19:19 +01:00
Stefan Dösinger 1328da09da wined3d: Set WINED3DRS_INDEXEDVERTEXBLENDENABLE to state_nogl. 2006-12-11 12:47:11 +01:00
Stefan Dösinger e53c2a9c4c wined3d: Move wined3drs_fogdensity to the state table. 2006-12-11 12:46:41 +01:00
Stefan Dösinger af935a2402 wined3d: Move WINED3DRS_FOGCOLOR to the state table. 2006-12-11 12:43:29 +01:00
Stefan Dösinger f260248650 wined3d: Make WINED3DRS_RANGEFOGENABLE a nogl state. 2006-12-11 12:43:13 +01:00
Stefan Dösinger 6175273c28 wined3d: Move fog states to the state table. 2006-12-11 12:42:59 +01:00
Stefan Dösinger 8d7243192a wined3d: Move WINED3DRS_STENCILWRITEMASK to the state table. 2006-12-11 12:42:46 +01:00
Stefan Dösinger 0d9ae20883 wined3d: Move stencil states to the state table. 2006-12-11 12:42:27 +01:00
Stefan Dösinger 0772bb49e4 wined3d: Move WINED3DRS_SPECULARENABLE to the state table. 2006-12-11 12:42:14 +01:00
Stefan Dösinger 287c6247ab wined3d: Move WINED3DRS_TEXTUREFACTOR to the state table. 2006-12-11 12:42:04 +01:00
Stefan Dösinger ac26172c2d wined3d: Move WINED3DRS_BLENDOP to the state table. 2006-12-11 12:41:51 +01:00
Stefan Dösinger 89e999ac71 wined3d: Move clipping states to the state table. 2006-12-11 12:41:21 +01:00
Stefan Dösinger c88efeef05 wined3d: Move alpha states to the state table. 2006-12-11 12:40:27 +01:00
Stefan Dösinger 1f07e4af18 wined3d: Move blending related states to the state table. 2006-12-08 12:25:53 +01:00
Stefan Dösinger 28cc3c8d6b wined3d: Move WINED3DRS_AMBIENT to the state table. 2006-12-08 12:25:28 +01:00
Stefan Dösinger 2ac48e8154 wined3d: Move WINED3DRS_ZFUNCENABLE to the state table. 2006-12-08 12:25:20 +01:00
Stefan Dösinger 8879c7d8dd wined3d: Move WINED3DRS_ZWRITEENABLE to the state table. 2006-12-08 12:25:09 +01:00
Stefan Dösinger bb622e81bd wined3d: Move WINED3DRS_DITHERENABLE to the state table. 2006-12-08 12:24:55 +01:00
Stefan Dösinger 68f1082284 wined3d: Move WINED3DRS_SHADEMODE to the state table. 2006-12-08 12:24:45 +01:00
Stefan Dösinger e4b4c040f0 wined3d: Move WINED3DRS_CULLMODE to the state table. 2006-12-08 12:24:31 +01:00
Stefan Dösinger bb564dc6fa wined3d: Move WINED3DRS_ZENABLE to the state table. 2006-12-08 12:24:21 +01:00
Stefan Dösinger 53e788956a wined3d: Move WINED3DRS_LIGHTNING to the state table. 2006-12-08 12:24:14 +01:00
Stefan Dösinger de96320421 wined3d: Move WINED3DRS_FILLMODE to the state table. 2006-12-07 21:10:54 +01:00
Stefan Dösinger 2a24e84a65 wined3d: Add render states to the state table. 2006-12-07 21:10:26 +01:00
Stefan Dösinger c0268c7840 wined3d: Create the state table. 2006-12-07 21:10:07 +01:00