Commit Graph

62 Commits

Author SHA1 Message Date
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
Oliver Stieber 520c2f0870 Implemented basic non-power 2 texture in wined3d.
Also fixed a typo in drawprim that was causing vertex declarations to
crash.
2005-07-11 14:25:54 +00:00