Commit Graph

262 Commits

Author SHA1 Message Date
Stefan Dösinger 3d2aa7afa0 wined3d: De-Statify depth blit opengl resources. 2008-02-05 12:33:15 +01:00
Stefan Dösinger 4d0a609452 wined3d: Reset the shader state on shader_*_destroy. 2008-01-14 15:20:51 +01:00
Alexandre Julliard 9636c7fa0e wined3d: Use unsigned int instead of size_t for the glsl mask size. 2008-01-07 17:17:27 +01:00
Stefan Dösinger 88f746ab0e wined3d: Filter out some shader compilation spam. 2007-12-18 14:07:12 +01:00
Stefan Dösinger 8e036d6487 wined3d: Correct a pixel shader version comparison. 2007-12-18 13:23:09 +01:00
Francois Gouget 5f7a9cea38 Assorted spelling fixes. 2007-12-07 16:35:32 +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 0f39b29da0 wined3d: mov to a0.x does a floor(), not a round to nearest. 2007-12-03 13:43:54 +01:00
Stefan Dösinger 3fd0916654 wined3d: Make the code aware of GL_ARB_texture_rectangle. 2007-11-29 13:36:37 +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 c66a3be49b wined3d: Work around nvidia beta driver bug. 2007-11-28 13:40:28 +01:00
Stefan Dösinger afb06a1184 wined3d: Bool constants aren't vectors. 2007-11-21 12:18:09 +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 9f41a359b6 wined3d: Partially revert "Get rid of the conditionals in shader_glsl". 2007-11-14 11:58:22 +01:00
Stefan Dösinger ed7e520926 wined3d: Get rid of a few Nvidiaisms in glsl shaders. 2007-11-14 11:51:38 +01:00
Stefan Dösinger edb78187a9 wined3d: Hardcode local constants into the shader if possible. 2007-11-14 11:51:26 +01:00
Francois Gouget 81a5701ca9 Assorted spelling fixes. 2007-11-09 13:07:12 +01:00
Stefan Dösinger 9fb70b99db wined3d: Load GLSL sampler uniforms at shader link time. 2007-11-09 12:32:11 +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 98b291192f wined3d: Get rid of the conditionals in shader_glsl_compare. 2007-11-08 12:17:54 +01:00
Stefan Dösinger 0183f3e305 wined3d: Avoid NOP additions. 2007-11-08 12:03:46 +01:00
Stefan Dösinger 6209b36acb wined3d: mov to a0.x does a floor(), not a round to nearest. 2007-11-08 11:55:31 +01:00
Stefan Dösinger 468309e055 wined3d: Get rid of the conditionals in the glsl lit implementation. 2007-11-08 11:55:08 +01:00
Stefan Dösinger aafcae4752 wined3d: Remove the conditional from texdepth. 2007-11-08 11:54:28 +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
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 0615c8e454 wined3d: Pixel Shader varying indexing. 2007-11-06 13:34:40 +01:00
Stefan Dösinger 9a9dfc76cb wined3d: Make pixel shader input an array. 2007-11-06 13:34:32 +01:00
Stefan Dösinger 672ed031ce wined3d: Only glBindAttribLocation used attributes. 2007-11-06 13:34:26 +01:00
Stefan Dösinger 8f3accc718 wined3d: Care for the inverted y coords in dsy. 2007-10-22 15:59:04 +02:00
Stefan Dösinger 3f16f02940 wined3d: Nested loop support. 2007-10-04 12:03:59 +02:00
Stefan Dösinger 3c6d97278f wined3d: Implement the vFace register. 2007-10-04 12:03:51 +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 6dc11616d5 wined3d: Take care against overwriting a source register in cmp. 2007-10-03 11:02:56 +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
Francois Gouget b2bc712323 Assorted spelling fixes. 2007-09-27 20:12:53 +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 10f25e0104 wined3d: Add signed format conversion for glsl. 2007-09-24 13:29:54 +02:00
Stefan Dösinger d684c9c1a5 wined3d: Fix a typo in shader_glsl_cross. 2007-09-20 15:52:54 +02:00
Stefan Dösinger 02114ac21f wined3d: The D3DSI_COISSUE flag changes the behavior of cnd. 2007-09-14 14:26:26 +02:00
Stefan Dösinger 8273cfdf01 wined3d: Fix texdp3tex in glsl. 2007-09-14 14:26:17 +02:00
Stefan Dösinger 7248354067 wined3d: Pixel shader 1.x constants are clamped to [-1;1]. 2007-09-14 14:23:45 +02:00
Stefan Dösinger bc69315f78 wined3d: texm3x3(v)spec normalizes the normal vector. 2007-09-13 11:38:46 +02:00
Stefan Dösinger 5ab9d85c39 wined3d: Implement texbeml. 2007-09-12 12:10:03 +02:00
Stefan Dösinger 422e0ba1cc wined3d: texkill ignores the .w only in ps 1.x. 2007-09-11 13:48:08 +02:00
Stefan Dösinger 8656713366 wined3d: Implement texldb. 2007-09-11 13:47:58 +02:00
Stefan Dösinger a006d2568b wined3d: Fix texdepth instruction. 2007-09-11 13:47:49 +02:00
Stefan Dösinger 33ecb1db1a wined3d: The temp vars are tmp0 and tmp1. 2007-08-31 12:08:57 +02:00
Stefan Dösinger e7cbb340dc wined3d: Remove stateblock::set.*. 2007-08-13 11:36:43 +02:00
H. Verbeet 1c14c180b7 wined3d: Implement dsx & dsy shader instructions. 2007-07-03 12:32:52 +02:00
Stefan Dösinger a1f83aae8e wined3d: rsq and rcp use the .w component if no swizzle is given. 2007-07-03 12:29:34 +02:00
H. Verbeet 973496d5e4 wined3d: Cleanup shader_glsl_load_psamplers(). 2007-07-02 13:36:26 +02:00
H. Verbeet 1d4042cee1 wined3d: Implement texldl. 2007-06-28 11:01:15 +02:00
Michael Stefaniuc 0326da9dd5 wined3d: Remove superfluous casts of void pointers to other pointer types. 2007-06-27 12:53:37 +02:00
H. Verbeet 3ad03206ab wined3d: Rename max_samplers to max_fragment_samplers. 2007-06-26 11:56:57 +02:00
H. Verbeet 2e786e09bb wined3d: Use texture2D to sample in pshader_glsl_texdp3tex(). 2007-06-21 13:10:32 +02:00
H. Verbeet 8311ff32a3 wined3d: Take the texUnitMap into account when loading shader_glsl_load_psamplers(). 2007-06-13 11:23:06 +02:00
Stefan Dösinger a460a2df43 wined3d: Store the gl information in a per adapter structure and initialize it only once. 2007-06-11 13:51:06 +02:00
H. Verbeet c3c5724789 wined3d: WINED3DSIO_POW should use the absolute value of the first source register. 2007-05-11 13:24:15 +02:00
H. Verbeet 89245248c7 wined3d: Handle the ps_3_0 vPos field. 2007-05-04 13:41:54 +02:00
H. Verbeet a79654d339 wined3d: Fix some swizzles on scalars. 2007-04-13 12:56:06 +02:00
Fabian Bieler 0ce39d5869 wined3d: Fix GLSL cnd instruction.
According to MSDN the cnd instruction should translate:
dst = src0 > 0.5 ? src1 : src2;
2007-04-05 10:55:00 +02:00
Fabian Bieler 91df230624 wined3d: Fix GLSL cnd instruction for INF and NAN arguments. 2007-04-04 21:26:30 +02:00
Fabian Bieler 2843b0f929 wined3d: Fix GLSL cmp instruction for INF and NAN arguments. 2007-04-04 21:26:23 +02:00
Fabian Bieler 333de16fb6 wined3d: Implement support for projective textures in ps 2.0 and later. 2007-03-29 21:15:29 +02:00
Stefan Dösinger bee084503b wined3d: Implement bem shader instruction. 2007-03-27 12:30:38 +02:00
Fabian Bieler 97967d3671 wined3d: Fix glsl texbem instruction for projective textures. 2007-03-23 12:31:35 +01:00
Fabian Bieler 4b3ac837aa wined3d: Implemented bump map transform for texbem in GLSL with native signed textures. 2007-03-23 12:31:27 +01:00
Stefan Huehner 4d1d01f266 Mark several functions as static. 2007-03-13 13:35:12 +01:00
H. Verbeet 30ee071eb9 wined3d: Disable vertex shaders when transformed vertices are used. 2007-03-13 11:55:55 +01:00
H. Verbeet 25cd1c4d28 wined3d: gl_FogFragCoord is a scalar. 2007-03-05 12:06:45 +01:00
H. Verbeet 19d223cade wined3d: Store multiple constant indices per list entry. 2007-02-28 13:35:34 +01:00
H. Verbeet 2c85e5e8a3 wined3d: Store GLSL programs in a hash table rather than a linked list. 2007-02-28 13:35:23 +01:00
Stefan Dösinger 99576ea24e wined3d: Implement texbem in arb, improve it in glsl. 2007-02-15 11:36:14 +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
Francois Gouget 536e738552 Assorted spelling fixes. 2007-02-14 21:03:57 +01:00
H. Verbeet efed9aea1f d3d8: Move loading local d3d8 vertex shader constants from wined3d to d3d8. 2007-02-14 13:54:55 +01:00
H. Verbeet 32e5cac2be wined3d: Get rid of the vertexDeclaration field in IWineD3DVertexShaderImpl. 2007-02-14 13:54:29 +01:00
H. Verbeet 8f0884066f wined3d: Add WINED3DDECLUSAGE, use it. 2007-02-14 13:50:22 +01:00
H. Verbeet 2d9540cab7 wined3d: Don't use WINED3DSHADERDECLUSAGE_PSIZE / WINED3DSHADERDECLUSAGE_FOG. 2007-02-14 13:50:01 +01:00
Chris Robinson 5f1a1bbc84 wined3d: Properly round negative values in shader_glsl_mov. 2007-02-12 14:12:29 +01:00
Stefan Dösinger fa97fbdcad wined3d: Make shader_cleanup more useful. 2007-02-12 12:37:48 +01:00
H. Verbeet efed4c33c2 wined3d: gl_FragDepth is a float, so fixup the write mask. 2007-01-19 12:29:11 +01:00
H. Verbeet 955fb95eb6 wined3d: Give shader constants their own debug channel. 2007-01-18 12:09:09 +01:00
H. Verbeet 79c7aeab00 wined3d: Fix a typo. 2007-01-18 12:09:03 +01:00
H. Verbeet e3cc00cf47 wined3d: Add a glsl_src_param_t type, pass it to shader_glsl_add_src_param() instead of three separate character arrays. 2007-01-16 16:14:21 +01:00
H. Verbeet 04e6250c87 wined3d: Add a glsl_dst_param_t type, pass it to shader_glsl_add_dst_param() instead of three separate character arrays. 2007-01-16 16:13:58 +01:00
H. Verbeet 6f3fae4e04 wined3d: Simplify shader_glsl_get_write_mask(). 2007-01-16 16:13:29 +01:00
H. Verbeet c6bccc9278 wined3d: Simplify shader_glsl_get_swizzle(). 2007-01-16 16:13:19 +01:00
H. Verbeet 48f82d3f5e wined3d: Fix pshader_glsl_tex() and pshader_glsl_texcoord(). 2007-01-16 16:13:10 +01:00
H. Verbeet c3bfef8d7e wined3d: Pass the correct mask to shader_glsl_add_src_param() in shader_glsl_callnz(). 2007-01-16 16:12:46 +01:00
H. Verbeet 50e0deafca wined3d: Pass the correct mask to shader_glsl_add_src_param() in shader_glsl_breakc(). 2007-01-16 16:12:37 +01:00
H. Verbeet f593cd0de8 wined3d: Pass the correct mask to shader_glsl_add_src_param() in shader_glsl_ifc(). 2007-01-16 16:12:26 +01:00
H. Verbeet a89edf1be9 wined3d: Pass the correct mask to shader_glsl_add_src_param() in shader_glsl_if(). 2007-01-16 16:12:18 +01:00
H. Verbeet 9f22df26ef wined3d: Pass the correct mask to shader_glsl_add_src_param() in shader_glsl_rep(). 2007-01-16 16:12:11 +01:00
H. Verbeet 2cb49c67db wined3d: Pass the correct mask to shader_glsl_add_src_param() in shader_glsl_loop().
Fix the comment.
2007-01-16 16:12:02 +01:00