Stefan Dösinger
5a63b79a66
wined3d: Untie culling and offscreen rendering.
2007-09-19 11:39:55 +02:00
Stefan Dösinger
c5410a6f22
wined3d: Use GL_NV_depth_clamp to implement clipping disable.
2007-09-17 12:08:40 +02:00
Stefan Dösinger
9e340f0fdb
wined3d: Add a fixme for D3DCMP_NOTEQUAL and D3DCMP_EQUAL.
2007-09-17 12:08:28 +02:00
Stefan Dösinger
5ab9d85c39
wined3d: Implement texbeml.
2007-09-12 12:10:03 +02:00
Stefan Dösinger
a305af0b30
wined3d: Fix the z range.
2007-09-11 13:47:36 +02:00
Stefan Dösinger
8c9c084004
wined3d: Use 0/0/0 as normal if no normal is supplied.
2007-08-30 11:57:18 +02:00
Stefan Dösinger
322b55e29a
wined3d: Fix the half pixel correction.
2007-08-28 11:55:27 +02:00
Stefan Dösinger
fe0f0eb48a
wined3d: Some texture transform fixes.
2007-08-27 18:28:43 +02:00
Stefan Dösinger
a8e21d0692
wined3d: Texture transforms are disabled when drawing rhw vertices.
2007-08-27 18:28:38 +02:00
Stefan Dösinger
98bc83be7c
wined3d: Fall back to drawStridedSlow if fog coords are used.
2007-08-23 13:33:22 +02:00
Stefan Dösinger
0dade7207f
wined3d: Implement range based fog and advertize it correctly.
2007-08-21 13:35:57 +02:00
Stefan Dösinger
04d62b4322
wined3d: fogstart == fogend means full fog.
2007-08-21 13:35:48 +02:00
Stefan Dösinger
306fcfeee7
wined3d: FIX D3DBLEND_BOTHSRCALPHA and BLEND_BOTHINVSRCALPHA.
2007-08-20 22:32:02 +02:00
Stefan Dösinger
06cc0fa95f
wined3d: GL_SRC_ALPHA_SATURATE is supported as src blend param only.
2007-08-17 12:01:38 +02:00
Stefan Dösinger
e7cbb340dc
wined3d: Remove stateblock::set.*.
2007-08-13 11:36:43 +02:00
Stefan Dösinger
8de07265a6
wined3d: Downgrade an ERR.
2007-08-03 12:30:12 +02:00
Roderick Colenbrander
2c12c17ab6
wined3d: Compile against standard GL headers.
2007-07-31 21:36:56 +02:00
Stefan Dösinger
d2016ff892
wined3d: Store the gl format table in the gl info structure.
2007-07-30 12:49:50 +02:00
Stefan Dösinger
a0131a3272
wined3d: Split up the format table.
2007-07-30 12:49:39 +02:00
H. Verbeet
b4e596e70e
wined3d: Flip the scissor rect when rendering offscreen.
2007-07-26 11:51:34 +02:00
H. Verbeet
be8226593c
wined3d: Don't modify the blending parameters in state_blend().
2007-07-24 11:25:45 +02:00
H. Verbeet
6421d45f53
wined3d: In tex_colorop() & tex_alphaop(), only check the mapped stage against GL_LIMITS(textures) if the texture is used.
2007-07-02 13:36:15 +02:00
H. Verbeet
25c673225b
wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for supported units.
2007-07-02 13:36:07 +02:00
H. Verbeet
9ed84211c1
wined3d: Only call activate_dimensions() if the texture is used.
2007-07-02 13:35:59 +02:00
H. Verbeet
5b7758f80c
wined3d: Increase the sizes of texturing related arrays, in order to support vertex textures.
2007-06-26 11:57:17 +02:00
H. Verbeet
9c44b67d28
wined3d: Add max_vertex_samplers and max_combined_samplers to WineD3D_GL_Info.
2007-06-26 11:57:05 +02:00
H. Verbeet
3ad03206ab
wined3d: Rename max_samplers to max_fragment_samplers.
2007-06-26 11:56:57 +02:00
Stefan Dösinger
a3854be0b3
wined3d: Some point sprite fixes.
2007-06-25 20:04:58 +02:00
Stefan Dösinger
4f8eb6a32e
wined3d: Clamp material power to 128.0.
2007-06-25 20:03:26 +02:00
Stefan Dösinger
2f4b9e42bc
wined3d: Move material applying to the state table.
2007-06-25 11:35:59 +02:00
Stefan Dösinger
b081cbaf40
wined3d: Emulate tracking of multiple material properties.
2007-06-21 13:09:30 +02:00
Stefan Dösinger
35ee1e9693
wined3d: Unload texture coords for all supported texture stages.
2007-06-21 13:09:17 +02:00
Stefan Dösinger
030b92a2f6
wined3d: Remove the FVF codepath from drawprim.
2007-06-21 13:09:08 +02:00
H. Verbeet
9f8083c646
wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for mapped stages.
2007-06-18 12:33:55 +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
Francois Gouget
96c337f0a1
Assorted spelling fixes.
2007-06-07 19:24:32 +02:00
Francois Gouget
7d55f09e75
wined3d: Fix spelling of the state_separateblend() function.
2007-06-07 19:24:04 +02:00
Stefan Dösinger
2854c54201
wined3d: Keep GL_TEXTURE_2D enabled when using dummy textures.
2007-05-31 13:08:09 +02:00
Stefan Dösinger
b6e87d47d5
wined3d: Don't mess with nv texture shaders if its not supported.
2007-05-31 13:08:01 +02:00
H. Verbeet
79ca4e022d
wined3d: Load texture coordinates even if no texture is bound to that stage at this time.
2007-05-10 12:24:52 +02:00
H. Verbeet
cde60c0b94
wined3d: Split texture coordinate loading from loadVertexData().
2007-05-10 12:24:39 +02:00
H. Verbeet
5188ab4efa
wined3d: Calling glDisableClientState() from loadVertexData() is redundant.
...
unloadVertexData() will already have done this if necessary.
2007-05-10 12:24:19 +02:00
H. Verbeet
f8714d771a
wined3d: Unload vertex weight data in case of EXT_VERTEX_WEIGHTING as well.
2007-05-10 12:24:07 +02:00
Stefan Dösinger
81504d6a2d
wined3d: Support bump environment mapping using GL_NV_texture_shader.
2007-05-10 11:40:27 +02:00
Stefan Dösinger
4a8b55d456
wined3d: Unload vertex weight data in unloadVertexData.
2007-05-10 11:40:15 +02:00
Stefan Dösinger
28170f0474
wined3d: Implement environment bump mapping with GL_ATI_envmap_bumpmap.
2007-05-09 12:07:32 +02:00
Stefan Dösinger
adb9b13b81
wined3d: Implement vertex blending using GL_ARB_vertex_blend.
2007-05-03 14:24:46 +02:00
Fabian Bieler
e28630bc32
wined3d: Remove usesFog flag from IWineD3DVertexShaderImpl.
2007-04-23 13:55:45 +02:00
Stefan Dösinger
725057da47
d3d: Remove dependency on ddraw.h header.
2007-04-16 13:20:15 +02:00
Felix Nawothnig
e3d3d1823d
wined3d: Only issue state_patchsegments FIXME once.
2007-04-04 12:45:57 +02:00
Felix Nawothnig
413b9b2ad2
wined3d: Downgrade some ERRs to FIXMEs.
2007-04-04 12:45:49 +02:00
Francois Gouget
0081b430e1
Assorted spelling and English fixes.
2007-04-03 11:23:12 +02:00
Felix Nawothnig
18c9e5d5d0
wined3d: Use GL_TEXTURE_2D for dummy textures.
2007-03-30 11:25:23 +02:00
Felix Nawothnig
6760ccac1c
wined3d: Fix broken ERR() message.
2007-03-30 11:25:02 +02:00
Felix Nawothnig
335f978e91
wined3d: Only disable GL_TEXTURE_CUBE_MAP_ARB if supported.
2007-03-30 11:24:56 +02:00
Jan Zerebecki
09e7791cba
wined3d: Print lastpixel state fixme only once.
2007-03-28 12:43:14 +02:00
Stefan Dösinger
5e405d3b26
wined3d: Disable texture coordinate arrays on the correct unit.
2007-03-27 12:30:50 +02:00
Fabian Bieler
7cedd56d24
wined3d: Implement linear fog with pixel shader.
2007-03-23 12:30:23 +01:00
Stefan Dösinger
65c447082a
wined3d: Fix client gl unit selection.
...
I forgot that when re-enabling register combiners during the state
management rewrite.
2007-03-19 12:18:07 +01:00
Stefan Dösinger
4b445124d3
direct3d: Add a fixed function fog test.
2007-03-15 12:14:50 +01:00
Stefan Huehner
4d1d01f266
Mark several functions as static.
2007-03-13 13:35:12 +01:00
H. Verbeet
6998d0d472
wined3d: Remove a redundant check in handleStreams().
2007-03-13 11:56:10 +01:00
H. Verbeet
05d461aee9
wined3d: Remove some redundant checks in the vertexdeclaration() state handler.
2007-03-13 11:56:02 +01:00
H. Verbeet
30ee071eb9
wined3d: Disable vertex shaders when transformed vertices are used.
2007-03-13 11:55:55 +01:00
H. Verbeet
23cd4475f6
wined3d: Correct various texture limits checks.
2007-03-13 11:53:28 +01:00
Stefan Dösinger
81aeae3249
wined3d: Do not specify the viewport origin upside down when doing offscreen rendering.
...
The gl viewport origin is the lower left corner of the window, in d3d
it is the upper right corner. This is corrected when setting the
viewport. However, when we are doing offscreen rendering, this is
reversed. So do not flip the viewport origin when rendering offscreen.
2007-03-06 22:17:28 +01:00
Stefan Dösinger
6886b237ad
wined3d: Disable depth stencil related states without a depth stencil buffer.
...
Except with fbos, it is not possible to remove the depth stencil
buffer from the opengl frame buffer, so when the d3d app sets a NULL
depth stencil disable all states that work with the depth stencil
buffer.
2007-03-06 22:17:15 +01:00
Stefan Dösinger
e0a271ee0c
wined3d: Adjust the rhw transformation for offscreen rendering.
2007-03-06 22:15:57 +01:00
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