Francois Gouget
19ba80e7c2
wined3d: We must include Wine's port.h before using NAN.
2012-06-01 17:41:52 +02:00
Matteo Bruni
f69f2aa347
wined3d: SM1 texture projection always divides by w when there is a vertex shader set.
2012-01-24 11:55:47 +01:00
Henri Verbeet
bee9adbd05
wined3d: Get rid of the WINED3DDECLUSAGE typedef.
2012-01-19 11:56:47 +01:00
Henri Verbeet
7f7bc520b6
wined3d: Get rid of the WINED3DTEXTURETRANSFORMFLAGS typedef.
2012-01-10 10:47:30 +01:00
Henri Verbeet
43fcbcb36e
wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef.
2012-01-10 10:47:27 +01:00
Henri Verbeet
40e8d85426
wined3d: Simplify transform flag handling in find_ps_compile_args().
2012-01-10 10:47:17 +01:00
Matteo Bruni
472fed41dd
wined3d: Improve invalid TEXTURETRANSFORMFLAGS handling.
2011-12-28 18:55:15 +01:00
Henri Verbeet
6623a8cfa9
wined3d: Get rid of the WINED3DFOGMODE typedef.
2011-12-22 10:08:52 +01:00
Henri Verbeet
3082c1a9de
wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef.
2011-12-20 10:11:47 +01:00
Matteo Bruni
68e0cd430f
wined3d: Ignore invalid texture transform flags.
2011-12-13 14:00:24 +01:00
Henri Verbeet
a8504f4f57
wined3d: Remove the special case for loop and rep in shader_get_registers_used().
...
SM4 loops don't have control parameters.
2011-11-23 09:13:33 +01:00
Henri Verbeet
14cf780fde
wined3d: Recognize the SM4 xor opcode.
2011-11-22 10:52:33 +01:00
Henri Verbeet
d695dd3af4
wined3d: Recognize the SM4 ushr opcode.
2011-11-22 10:52:29 +01:00
Henri Verbeet
9afff037e5
wined3d: Recognize the SM4 udiv opcode.
2011-11-22 10:52:25 +01:00
Henri Verbeet
e2d099a14d
wined3d: Recognize the SM4 round_ni opcode.
2011-11-21 11:00:50 +01:00
Henri Verbeet
829e28cb4d
wined3d: Recognize the SM4 ge opcode.
2011-11-21 11:00:46 +01:00
Henri Verbeet
af11214562
wined3d: Recognize the SM4 eq opcode.
2011-11-21 11:00:42 +01:00
Henri Verbeet
563edce2fa
wined3d: Get rid of the WINED3DSHADER_PARAM_SRCMOD_TYPE typedef.
2011-11-15 16:09:09 +01:00
Henri Verbeet
66cb4a8ca9
wined3d: Get rid of the WINED3DSHADER_PARAM_REGISTER_TYPE typedef.
2011-11-14 15:25:22 +01:00
Henri Verbeet
adf7c33023
wined3d: Get rid of the COMPARISON_TYPE typedef.
2011-11-09 11:34:32 +01:00
Henri Verbeet
323a95418e
wined3d: Get rid of the WINED3DSAMPLER_TEXTURE_TYPE typedef.
2011-11-09 11:34:24 +01:00
Henri Verbeet
b49e08aa8d
wined3d: Get rid of the local_constant typedef.
2011-10-31 23:52:59 +01:00
Matteo Bruni
095a9a6893
wined3d: Refuse to create a shader unsupported by the backend.
2011-10-26 12:41:35 +02:00
Henri Verbeet
7aac0159a9
wined3d: Move the ARB shader program constant handling to the backend where it belongs.
2011-10-26 12:41:33 +02:00
Matteo Bruni
2a146448f4
wined3d: When creating a new shader, check shader type and version.
2011-09-26 17:57:48 +02:00
Henri Verbeet
fcf4303e1a
wined3d: Store a pointer to the framebuffer state in struct wined3d_state.
2011-07-14 14:11:07 +02:00
Henri Verbeet
d67d7ebbcb
wined3d: Make the shader parameter to shader_generate_main() const.
2011-07-12 11:35:12 +02:00
Henri Verbeet
48881c0792
wined3d: Make the shader parameter to vshader_get_input() const.
2011-07-12 11:35:08 +02:00
Henri Verbeet
019f6a8534
wined3d: Mask out writes to unused render targets.
...
Outputs not written by the pixel shader are undefined in GL, but in D3D the
render target is unmodified.
2011-05-25 11:49:23 +02:00
Henri Verbeet
aba42d1fa5
wined3d: Introduce a separate structure for framebuffer state.
2011-05-19 10:07:57 +02:00
Stefan Dösinger
1133991e85
wined3d: Make two variables unsigned.
2011-05-18 16:41:42 +02:00
Henri Verbeet
0e0e5c3e38
wined3d: Get rid of the IWineD3DDevice typedefs.
2011-05-17 10:06:23 +02:00
Henri Verbeet
00a5f38595
wined3d: Remove object creation methods from the IWineD3DDevice interface.
2011-05-11 14:56:48 +02:00
Matteo Bruni
4f96f4f467
wined3d: Fix pow handling with special values in ARB backend.
2011-05-05 17:26:12 +02:00
Henri Verbeet
86b0c6bd7b
wined3d: Rename "shader_backend_t" to "wined3d_shader_backend_ops".
...
This makes it more consistent with the other call table names in wined3d.
2011-05-05 11:45:22 +02:00
Henri Verbeet
c4b73c4550
wined3d: Get rid of the IWineD3DSurface typedefs.
2011-04-29 16:52:13 +02:00
Matteo Bruni
db8d681a5b
wined3d: Remove rcp special handling of 0 from the ARB shader backend.
2011-04-28 12:11:55 +02:00
Henri Verbeet
8fe80e18b2
wined3d: Get rid of the IWineD3DBaseShader typedefs.
2011-03-31 12:37:47 +02:00
Henri Verbeet
f8f83ff2f7
wined3d: Remove COM from the shader implementation.
2011-03-31 12:37:46 +02:00
Henri Verbeet
5555d904be
wined3d: Get rid of IWineD3DBaseShaderClass.
2011-03-31 12:37:46 +02:00
Henri Verbeet
45fd0d4e7a
wined3d: Merge the IWineD3DBaseShader implementations.
2011-03-31 12:37:46 +02:00
Henri Verbeet
99bed5d41d
wined3d: Get rid of IWineD3DPixelShaderImpl.
2011-03-30 12:18:20 +02:00
Henri Verbeet
4674b94d23
wined3d: Get rid of struct wined3d_geometryshader.
2011-03-30 12:18:14 +02:00
Henri Verbeet
dab01d435e
wined3d: Get rid of IWineD3DVertexShaderImpl.
2011-03-30 12:18:09 +02:00
Henri Verbeet
3d4fe0b750
wined3d: Get rid of IWineD3DPixelShader.
2011-03-30 12:18:03 +02:00
Henri Verbeet
9ea2ee5f4e
wined3d: Get rid of IWineD3DGeometryShader.
2011-03-30 12:17:56 +02:00
Henri Verbeet
49725ba583
wined3d: Get rid of IWineD3DVertexShader.
2011-03-30 12:17:51 +02:00
Henri Verbeet
57d70bfdda
wined3d: Move IWineD3DVertexShader::SetLocalConstantsF() to IWineD3DBaseShader.
2011-03-29 12:34:59 +02:00
Henri Verbeet
0e22aea01e
wined3d: Replace "pow2_matrix_identity" in wined3d_texture with a flag.
2011-03-29 12:34:49 +02:00
Henri Verbeet
c5bf96c951
wined3d: Get rid of IWineD3DBaseTextureClass.
2011-03-29 12:34:40 +02:00
Henri Verbeet
eb5bfad18d
wined3d: Get rid of the IWineD3DBaseTexture typedefs.
2011-03-28 17:08:52 +02:00
Henri Verbeet
7bc7caf423
wined3d: Pass an IWineD3DBaseTextureImpl array to pixelshader_update_samplers().
2010-12-16 11:50:09 +01:00
Henri Verbeet
bd2e7aedcf
wined3d: Store an IWineD3DBaseShaderImpl pointer in wined3d_shader_context.
2010-12-15 11:55:22 +01:00
Henri Verbeet
2f36d600ef
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_generate_main().
2010-12-15 11:55:19 +01:00
Henri Verbeet
51f06dcf0c
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_get_registers_used().
2010-12-15 11:55:16 +01:00
Henri Verbeet
bbbab10c8e
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_cleanup().
2010-12-13 16:24:27 +01:00
Henri Verbeet
fe2ffe1e6a
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_destroy().
2010-12-13 16:24:23 +01:00
Henri Verbeet
b5637a934e
wined3d: Store an IWineD3DDeviceImpl pointer in IWineD3DBaseShaderClass.
2010-12-08 11:27:49 +01:00
Henri Verbeet
db164a990c
wined3d: Rename shader_reg_maps to wined3d_shader_reg_maps.
...
For consistency with other shader translation structures.
2010-12-07 11:33:23 +01:00
Henri Verbeet
e9ff40d918
wined3d: Use local reg_maps variables where possible.
2010-12-06 12:21:31 +01:00
Henri Verbeet
6a646ac25d
wined3d: shader_get_registers_used() is only called during shader initialization.
2010-12-03 11:04:39 +01:00
Henri Verbeet
fe47ba8fa2
wined3d: Move the rel_offset vertex shader field to the ARB shader backend.
2010-12-03 11:04:28 +01:00
Henri Verbeet
b72b037128
wined3d: Properly initialize min_rel_offset.
...
This somehow got lost in 14da44aa36
.
2010-12-03 11:04:22 +01:00
Henri Verbeet
03d7f527cf
wined3d: Move min_rel_offset / max_rel_offset to the shader_reg_maps structure.
2010-12-02 11:54:20 +01:00
Henri Verbeet
f92a0667d7
wined3d: Remove a unused parameter to shader_dirtifyable_constants().
2010-12-02 11:53:57 +01:00
Henri Verbeet
f45aeb4abe
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_free_private().
2010-12-01 11:09:08 +01:00
Henri Verbeet
4a69874938
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_alloc_private().
2010-12-01 11:09:02 +01:00
Henri Verbeet
77923346da
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_pixel_constants().
2010-12-01 11:08:57 +01:00
Henri Verbeet
4a6d0da207
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_vertex_constants().
2010-12-01 11:08:51 +01:00
Henri Verbeet
7363b0e98a
wined3d: Explicitly pass data and gl_info to shader_deselect_depth_blt().
2010-11-30 10:57:23 +01:00
Henri Verbeet
93a824d744
wined3d: Explicitly pass data and gl_info to shader_select_depth_blt().
2010-11-30 10:57:17 +01:00
Henri Verbeet
efb185dcd5
wined3d: Rename the wined3d_format "Flags" field to "flags".
2010-11-12 15:43:08 +01:00
Henri Verbeet
e832b57a15
wined3d: Move loop state to wined3d_shader_context.
2010-10-29 14:33:56 +02:00
Henri Verbeet
8a4a76f9a7
wined3d: Move "parse_state" to wined3d_shader_context.
2010-10-29 14:33:56 +02:00
Henri Verbeet
5ef7a8c242
wined3d: Explicitly pass parameters to shader_load_np2fixup_constants().
2010-10-25 14:29:37 +02:00
Henri Verbeet
d508a855c1
wined3d: Recognize the SM4 sqrt opcode.
2010-10-20 18:37:07 +02:00
Henri Verbeet
4eb8fd7960
wined3d: Recognize the SM4 sample_d opcode.
2010-10-14 17:54:52 +02:00
Henri Verbeet
50f6fbadb0
wined3d: Recognize the SM4 ld opcode.
2010-10-13 13:00:30 +02:00
Henri Verbeet
7c6658f970
wined3d: Recognize the SM4 ieq opcode.
2010-10-13 13:00:26 +02:00
Henri Verbeet
a9e3058426
wined3d: Recognize the SM4 ftoi opcode.
2010-10-13 13:00:22 +02:00
Henri Verbeet
b53d346d35
wined3d: Recognize the SM4 div opcode.
2010-10-13 13:00:17 +02:00
Henri Verbeet
916167e93a
wined3d: Recognize the SM4 resource register type.
2010-10-12 17:36:30 +02:00
Henri Verbeet
ff9c2fcdb2
wined3d: Recognize the SM4 utof opcode.
2010-10-11 17:11:28 +02:00
Henri Verbeet
18d7a73af8
wined3d: Recognize the SM4 sample_l opcode.
2010-10-11 17:11:28 +02:00
Henri Verbeet
407ed1b875
wined3d: Recognize the SM4 sample opcode.
2010-10-11 17:11:28 +02:00
Henri Verbeet
b2f520b5f0
wined3d: Recognize the SM4 itof opcode.
2010-10-11 17:11:28 +02:00
Henri Verbeet
1fe1676ae9
wined3d: SM4 immediate constants are typeless.
2010-10-08 15:26:42 +02:00
Henri Verbeet
d369136a96
wined3d: Recognize the SM4 imul opcode.
2010-10-08 15:26:33 +02:00
Henri Verbeet
0677a67c7b
wined3d: Recognize the SM4 NULL register type.
2010-10-08 15:26:28 +02:00
Henri Verbeet
7c7205d90a
wined3d: Allow multiple shader instruction destination arguments.
2010-10-08 15:26:19 +02:00
Henri Verbeet
512e6cec2c
wined3d: Recognize the SM4 movc opcode.
2010-10-07 15:58:10 +02:00
Henri Verbeet
1330f844f8
wined3d: Recognize the SM4 and opcode.
2010-10-07 15:58:09 +02:00
Matteo Bruni
20010235ad
wined3d: Keep track of texture transformation states in compiled pixel shaders.
2010-10-04 15:00:08 +02:00
Henri Verbeet
e12f5ff08a
wined3d: Pass a wined3d_state structure to find_ps_compile_args().
2010-09-29 12:22:39 +02:00
Henri Verbeet
8d5a25bbec
wined3d: Pass a wined3d_state structure to find_vs_compile_args().
2010-09-29 12:22:36 +02:00
Henri Verbeet
9224751a13
wined3d: Pass a wined3d_state structure to use_vs().
2010-09-28 17:33:17 +02:00
Henri Verbeet
dd4aea36c9
wined3d: Move the vertex shader to wined3d_state.
2010-09-20 13:48:12 +02:00
Henri Verbeet
d728d5f0ec
wined3d: Move texture bindings to wined3d_state.
2010-09-18 13:05:49 +02:00
Henri Verbeet
5a3a4ac77a
wined3d: Remove IWineD3DBaseTexture::GetTextureDimensions() from the public wined3d interface.
2010-09-18 13:05:44 +02:00
Henri Verbeet
1ef4f075c1
wined3d: Introduce a separate structure for stateblock states.
...
We'd like to not pass an entire stateblock to things like state handlers and
the shader backend, because those then use the stateblock to get to the
device and through there to all the rest of wined3d. This would also be
required for serialization of wined3d draw and state change commands into a
single GL context. Resource updates would be explicitly excluded from
serialization.
2010-09-15 10:33:14 -05:00