Jason Green
08295f4cfc
wined3d: GLSL shader cleanup patch.
...
- Based on comments from H. Verbeet
- Changed the distinction from .rgba & .xyzw masks to only use .xyzw
in GLSL shaders. They are interchangeable, and only served to make
the trace look more intuitive, but they don't always apply as-is, so
we'll just leave everything to .xyzw.
- Got rid of the "UseProgramObjectARB(0)" call in drawprim. If there
is no shader set on the next primitive, then that primitive will
call UseProgramObjectARB(0) when it begins to draw.
2006-06-09 21:09:03 +02:00
Jason Green
d5d4568450
wined3d: Allow drawPrim to create and use the GLSL program.
2006-06-09 15:20:06 +02:00
Jason Green
1f1057fc9b
wined3d: Move constant loading out of DrawPrimDrawStrided() and enable
...
loading float constants for GLSL.
- DrawPrim is just too big of a function. This separates the passing
of constants to the shader into new functions.
- Fixes an off-by-one error when loading vertex declaration constants
(should be <, not <=)
- Adds a function for GLSL loading of constants (aka Uniforms)
- Adds a GLSL program variable to the stateblock and sets it to 0 (a
future patch will actually create this program)
2006-06-09 13:26:51 +02:00
Ivan Gyurdiev
5f5969b3c5
wined3d: Remove constant type field in stateblock.
...
It is wrong to maintain a mapping from a constant index to a type
field, because different constant types do not share an index -
boolean constant 0 is supposed to co-exist with floating point
constant 0, not replace it. Drawprim and other code using the type
array to decide whether to look up a constant in bools, floats, or
ints is wrong - you can't make that decision based on the index.
2006-06-06 11:58:54 +02:00
Stefan Dösinger
2c3adec595
wined3d: Render target locking fixes.
2006-06-05 20:59:41 +02:00
Jason Green
c60f296b70
wined3d: Fix regression introduced by recent multitexture patch.
2006-05-26 20:14:31 +02:00
Roderick Colenbrander
54e5f9c465
wined3d: Dynamicly load GL_ARB_multitexture functions.
2006-05-25 20:17:32 +02:00
Stefan Dösinger
5b8b776431
wined3d: Small rhw vertex fix.
...
Fix the one pixel displacement and move the glOrtho code in a common
function.
2006-05-25 20:09:57 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Ivan Gyurdiev
d59eeb3ee5
wined3d: Allow use of pixel shaders with drawStridedSlow.
2006-05-22 11:40:00 +02:00
Stefan Dösinger
9abdac6aaa
wined3d: Implement IWineD3DDevice::ProcessVertices.
2006-05-15 13:57:17 +02:00
Stefan Dösinger
10ff0d8184
wined3d: rhw vertex fixup.
...
Change the rhw=0 range to ]1e-8,1e-8[ and move the value to a constant
in wined3d_types.h
2006-05-09 20:45:27 +02:00
Stefan Dösinger
a173c8e35a
wined3d: Add IWineD3DDevice::DrawPrimitiveStrided.
2006-05-08 14:51:13 +02:00
Ivan Gyurdiev
dbf5450982
wined3d: Remove dead shader code.
2006-05-07 10:00:24 +02:00
Ivan Gyurdiev
07f4f70487
wined3d: QueryInterface corrections.
2006-05-05 20:23:41 +02:00
Ivan Gyurdiev
74117baa6c
wined3d: Correct vtrace usage.
2006-04-21 11:34:31 +02:00
Stefan Dösinger
bbe490abcc
wined3d: Add WINED3DLOCKED_RECT to wined3d_types.h.
2006-04-06 22:23:31 +02:00
H. Verbeet
59af5c4a62
wined3d: Move fields common to vertex shaders and pixel shaders to IWineD3DBaseShader.
2006-03-30 21:55:15 +02:00
H. Verbeet
1aca53860a
wined3d: Set vertex attribute pointers defined in vertex declarations properly.
2006-03-22 21:41:05 +01:00
Stefan Dösinger
913df5b143
wined3d: Consistently use WINED3DRESOURCETYPE.
2006-03-10 21:43:00 +01:00
H. Verbeet
76c469e5a4
wined3d: Use OpenGL fragment programs when available.
2006-03-09 13:10:42 +01:00
H. Verbeet
86b9041c0c
wined3d: Remove an incorrect FIXME.
2006-03-09 13:10:30 +01:00
Stefan Dösinger
851bdfb5e0
wined3d: Add D3DLOCK_* types to wined3d_types.h.
2006-03-08 11:33:35 +01:00
H. Verbeet
78a43b3dbc
wined3d: Fix a few FIXME's.
2006-03-07 10:56:52 +01:00
Stefan Dösinger
46e8d67787
wined3d: Update the glOrtho between 2 rhw draws if the viewport was changed.
2006-02-13 13:25:21 +01:00
H. Verbeet
bcfa7dcf7d
wined3d: Downgrade a FIXME to a TRACE.
2006-02-06 11:30:27 +01:00
H. Verbeet
4bd8b60bd3
wined3d: A shader isn't guaranteed to have a vertex declaration, so
...
add a NULL check for that.
2006-01-20 16:13:03 +01:00
Oliver Stieber
7c482cb9a1
wined3d: Vertex shader 8 support.
...
Start to add support for DirectX 8 vertex shaders, constants and
registers are now correctly assigned and loaded allowing support for
most basic d3d8 shaders.
2005-12-09 11:23:52 +01:00
Oliver Stieber
aa9ce3577a
Added support for vertex and pixel shader constants that have no type
...
i.e. they haven't been set yet or are clear.
2005-11-29 17:05:54 +01:00
Raphael Junqueira
705aec5a6f
- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
...
- use D3DCOLOR macros instead of using shift + masks
- fix a bug where diffuse.lpData checked instead of specular.lpData
- implement color fixup on ARB VShader compilation code:
-> on input parameters using swizzle
-> add is_color parameter on vshader_program_add_param
2005-11-15 12:03:13 +00:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Oliver Stieber
c62e978d54
Verify that the texture coordinate used in DrawStridedSlow is in range
...
before trying to referencing the associated data.
2005-11-07 11:13:26 +00:00
Oliver Stieber
44b4777972
Add checks for ARB_vertex_program before allowing vertex shaders to
...
use ARB_vertex_program.
2005-10-11 20:27:54 +00:00
Oliver Stieber
c99a3fafef
Change the format of surface_SaveSnapshot to TGA from PPM and add
...
support for compressed textures and an alpha channel.
2005-09-27 10:49:59 +00:00
Oliver Stieber
1be54d8b79
Integrate hardware vertex shaders into the drawing pipeline.
2005-08-19 10:05:00 +00:00
Francois Gouget
fae73a1090
Assorted spelling fixes.
2005-08-17 09:56:24 +00:00
Francois Gouget
bcd56fe0e5
Assorted spelling fixes.
2005-08-12 18:22:06 +00:00
Oliver Stieber
e31bc6cea4
Moved support for non power 2 texture to hardware.
...
Fix for the texture state separation patches, ApplyTextureStates is
now called instead of being commented out.
2005-08-03 19:49:05 +00:00
Oliver Stieber
1f05577395
Improve on a fixup for the difference between opengl and directx pixel
...
centering of vertexes.
2005-08-03 19:14:19 +00:00
Oliver Stieber
d344162f41
Separate the setting of the DirectX texture and sampler states from
...
the setting of OpenGL states (now in applyTextureStateState and
applySamplerState).
2005-08-01 10:58:31 +00:00
Oliver Stieber
5615513877
Separate the management of DirectX states and openGL states.
2005-08-01 09:20:55 +00:00
Oliver Stieber
386470bedc
Tidy up some of the formatting in drawprim and add missing strided
...
data.
2005-07-30 19:06:14 +00:00
Raphael Junqueira
cc8762a91e
- add a new settings for vbo support
...
- use a struct to handle wined3d settings
- prepare VBO using some abstraction APIs
2005-07-24 17:11:33 +00:00
Gerald Pfeifer
8d43d251b7
Remove unused variable in primitiveConvertToStridedData().
2005-07-22 18:27:04 +00:00
Oliver Stieber
f8079b6947
Correct a problem with the way that FVF vertex arrays containing
...
blends or orthographic is calculated.
2005-07-21 11:01:19 +00:00
Oliver Stieber
2125fa9d37
Fixed regression that occurred because changes to texture loading were
...
committed before changes to textures and states to support the change
were committed.
2005-07-21 10:32:48 +00:00
Oliver Stieber
18f3fcb1c2
Set mipmap levels correctly (even with ATI's buggy drivers).
2005-07-18 09:07:17 +00:00
Stefan Huehner
190e1597ff
Fix some missing-declarations warnings.
2005-07-14 12:19:53 +00:00
Oliver Stieber
9253e0e39c
Tidy up some comments and formatting.
2005-07-13 14:15:54 +00:00
Oliver Stieber
9f7e794ca6
Implement UpdateTexture and UpdateSurface in wined3d.
...
Allow NULL members of WINED3DSURFACE_DESC to be set to Surface_GetDesc
so that the whole structure doesn't have to be filled just to get back
one value.
2005-07-12 17:02:47 +00:00