Commit graph

1564 commits

Author SHA1 Message Date
Phil Costin
622f62d352 wined3d: Enable the loading and reloading of gamma corrected textures. 2007-06-07 13:02:04 +02:00
Phil Costin
e7578dca36 wined3d: Add support for loading gamma corrected textures. 2007-06-07 13:01:49 +02:00
Phil Costin
08ae3d6f67 wined3d: Extend the D3DFMT table to include gamma corrected formats. 2007-06-07 13:01:36 +02:00
Phil Costin
3650e31e85 wined3d: Add GL_EXT_texture_sRGB constants and corresponding CheckDeviceFormat query. 2007-06-07 13:01:23 +02:00
Andrew Talbot
2e16552327 wined3d: Void functions should not return a value. 2007-06-07 13:00:08 +02:00
H. Verbeet
6ee356fca0 wined3d: Get rid of the pBaseVertexIndex parameter to IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead. 2007-06-07 11:20:48 +02:00
H. Verbeet
262240adce wined3d: Add IWineD3DDevice_GetBaseVertexIndex to retrieve the base vertex index. 2007-06-07 11:20:48 +02:00
Lei Zhang
f00670df61 wined3d: Various spelling fixes. 2007-06-06 13:40:01 +02:00
H. Verbeet
785771272a wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead. 2007-06-06 12:10:47 +02:00
H. Verbeet
45b531fcea wined3d: Make sure the color buffer is not modified by depth_blt(). 2007-06-06 12:10:39 +02:00
Chris Robinson
1e64bb93a4 wined3d: Add a few missing checkGLcall calls. 2007-06-05 12:19:10 +02:00
H. Verbeet
7de83c18bd wined3d: Rename IWineD3DDeviceImpl_SetBasevertexIndex to IWineD3DDeviceImpl_SetBaseVertexIndex. 2007-06-05 10:57:45 +02:00
H. Verbeet
c4a0a2b918 wined3d: TRACE the Color parameter in IWineD3DDeviceImpl_Clear. 2007-06-05 10:57:37 +02:00
H. Verbeet
93dcfe350d wined3d: Return WINED3DERR_INVALIDCALL in DrawIndexedPrimitive if no index buffer is set. 2007-06-04 12:58:37 +02:00
Stefan Dösinger
cd7ed61cfa wined3d: Do not enable GL_APPLE_client_storage for the dummy textures. 2007-06-04 12:52:10 +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
Kolbjoern Fredheim
cb8a8182d1 wined3d: Implemented converting X1R5G5B5 format to R5G5B5A1 to emulate color-keying. 2007-05-22 12:26:49 +02:00
Andrew Riedi
a9c2e15cf6 wined3d: Add hardware cursor support. 2007-05-16 14:27:39 +02:00
Francois Gouget
0acb5810bf Assorted spelling fixes. 2007-05-15 18:09:16 +02:00
Marcus Meissner
4b9fedbb06 wined3d: Fixed swapchain context NULL ptr checks. 2007-05-14 14:24:27 +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
Stefan Dösinger
e40af7d3fa wined3d: Prevent wrong bumpenvmap warnings. 2007-05-11 11:28:20 +02:00
Stefan Dösinger
093261b729 wined3d: Only addref clippers if one exists. 2007-05-11 11:26:40 +02:00
Stefan Dösinger
a90f650fd2 wined3d: Implement DDBLT_DEPTHFILL on the active depth stencil target. 2007-05-11 11:25:41 +02:00
Stefan Dösinger
5c48d504fc wined3d: Destroying the resource frees all private data.
Also adds a test for ddraw, d3d8 and d3d9.
2007-05-11 11:22:31 +02:00
Stefan Dösinger
e7b68eec34 ddraw: Use point filter for blit operations.
D3DTEXF_NONE is a special value for mipmapping which disabled
mipmapping, but it is not a valid mag / min filter parameter.
D3DTEXF_POINT is what we want
2007-05-11 11:21:29 +02:00
Francois Gouget
f999a9e433 wined3d: Add a missing '\n' to a trace. 2007-05-11 11:20:34 +02:00
H. Verbeet
d7596086bc wined3d: Trace the VBO and stream number as well in drawPrimitiveTraceDataLocations. 2007-05-10 12:24:59 +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
d08585e6ec wined3d: Manage private data in a wine linked list. 2007-05-10 12:10:20 +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
ca52d34189 wined3d: Some more ProcessVertices fixes.
Remove vbos from the input strided data from the fixed function
attributes explicitly and avoid writing beyond the end of a temporary
buffer when cloning a windows bug.
2007-05-09 12:08:12 +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
992834016a wined3d: Report only D16, D24S8 and D24X8 depth stencil formats as supported. 2007-05-09 12:07:09 +02:00
Stefan Dösinger
f2e30a0a1c wined3d: Unset the StreamIsUP flag in ProcessVertices. 2007-05-08 18:29:15 +02:00
Stefan Dösinger
7538f8d620 wined3d: Fix front buffer coords for gdi surfaces. 2007-05-08 18:28:48 +02:00
Stefan Dösinger
c9bc4ee760 wined3d: Handle DDPCAPS_ALPHA. 2007-05-08 18:28:38 +02:00
Stefan Dösinger
0fb41a8845 wined3d: Make the blit -> flip work for windowed rendering. 2007-05-08 18:28:08 +02:00
Stefan Dösinger
d93e161b1f d3d: Move clippers from DDraw to wined3d. 2007-05-08 18:27:44 +02:00
Stefan Dösinger
c87d5352a5 wined3d: Full surface DXTn copy.
Height * Pitch is not a valid way to calculate the surface size for
DXTn surfaces. Instead of messing with format specific formulas just
use the size stored in the destination surface.
2007-05-07 21:42:45 +02:00
H. Verbeet
89245248c7 wined3d: Handle the ps_3_0 vPos field. 2007-05-04 13:41:54 +02:00
H. Verbeet
5d00923017 wined3d: Remove some redundant fields from IWineD3DBaseTextureImpl. 2007-05-04 13:41:45 +02:00
H. Verbeet
7b48db196f d3d: Fix the surface locking rectangle validation. 2007-05-04 13:41:13 +02:00
H. Verbeet
1fca7eccb0 wined3d: Improve a few VBO traces. 2007-05-04 13:40:53 +02:00
H. Verbeet
81edcea020 wined3d: Bind GL_FRAMEBUFFER_EXT rather than GL_DRAW_FRAMEBUFFER_EXT in color_fill_fbo. 2007-05-04 13:40:45 +02:00
H. Verbeet
b66791118e wined3d: Make the IWineD3DDeviceImpl_ColorFill TRACE a bit more useful. 2007-05-04 13:40:36 +02:00
H. Verbeet
d9b7369255 wined3d: Flip the coordinate system rather than the coordinates itself for onscreen surfaces in stretch_rect_fbo. 2007-05-04 13:40:28 +02:00
Stefan Dösinger
adb9b13b81 wined3d: Implement vertex blending using GL_ARB_vertex_blend. 2007-05-03 14:24:46 +02:00
Stefan Dösinger
d913744f1e d3d: Calculate the size of WINED3DFVF_XYZBx FVFs. 2007-05-03 14:24:16 +02:00
Stefan Dösinger
94b3fddec8 d3d: Pass the cube face to Create*Texture's surface creation callback. 2007-05-01 11:42:25 +02:00
H. Verbeet
3226ad451f wined3d: Fix the return value for IWineD3DDeviceImpl_ColorFill. 2007-04-27 11:13:54 +02:00
Jesse Allen
00a84b0cb2 wined3d: Remove fake nvidia card in GetAdapterIdentifier. 2007-04-26 14:59:14 +02:00
Stefan Dösinger
460f71dcf8 d3d: Fix ProcessVertices.
IDirect3DDevice9::ProcessVertices takes a vertex declaration, not a
vertex buffer. The source for ProcessVertices is taken from the
stateblock, not the vertex declaration.
2007-04-26 14:54:29 +02:00
Stefan Dösinger
32cfbd127c wined3d: Implement CreateVertexDeclarationFromFVF. 2007-04-26 14:53:48 +02:00
Stefan Dösinger
aec1553e50 wined3d: Add a method to create a declaration from a fvf. 2007-04-26 14:53:07 +02:00
Stefan Dösinger
61d1abb1c1 wined3d: Do not allocate surfaces unless needed. 2007-04-26 14:51:56 +02:00
H. Verbeet
2100b9dce9 wined3d: The second parameter to glTexImage3DEXT isn't a GLenum. 2007-04-24 10:20:39 +02:00
H. Verbeet
950014b41f wined3d: Improve IWineD3DVolumeImpl_LoadTexture TRACE output. 2007-04-24 10:20:25 +02:00
H. Verbeet
af8e6ed14a wined3d: Actually use the calculated mipmap surface sizes in IWineD3DDeviceImpl_CreateVolumeTexture. 2007-04-24 10:20:11 +02:00
H. Verbeet
b643ab3620 wined3d: Output pretty GL errors in checkGLcall and vcheckGLcall. 2007-04-24 10:19:51 +02:00
Fabian Bieler
e28630bc32 wined3d: Remove usesFog flag from IWineD3DVertexShaderImpl. 2007-04-23 13:55:45 +02:00
Stefan Dösinger
c42a1dc226 wined3d: The cursor texture doesn't have GL_APPLE_client_storage backing. 2007-04-20 13:09:09 +02:00
Stefan Dösinger
fe3ebb3c42 wined3d: Do not upload to the vbo if there's nothing to do. 2007-04-20 13:04:25 +02:00
H. Verbeet
a7638ac5a2 wined3d: Remove GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT from debug_fbostatus(). 2007-04-19 11:56:23 +02:00
Bernd Buschinski
aff22d0472 wined3d: Fix drawStridedSlow typo. 2007-04-18 13:13:17 +02:00
H. Verbeet
e0a94b906c wined3d: Implement ColorFill using FBOs, if they're being used. 2007-04-17 11:13:14 +02:00
H. Verbeet
e49c480820 wined3d: Don't try to clear the depth stencil if there is none. 2007-04-17 11:13:03 +02:00
H. Verbeet
deeeda6802 wined3d: Properly handle the difference between GL_BACK and GL_FRONT for onscreen surfaces. 2007-04-17 11:12:52 +02:00
H. Verbeet
5fddfd5bbc wined3d: Use surface_get_gl_buffer where appropriate. 2007-04-17 11:12:43 +02:00
H. Verbeet
1b9a5ba682 wined3d: Add a function to determine if a surface is the front or the backbuffer for a swapchain, and return the corresponding GLenum. 2007-04-17 11:12:34 +02:00
H. Verbeet
74b5c87ebd wined3d: Set the FBO drawbuffer using glDrawBuffer when ARB_DRAW_BUFFERS is not supported. 2007-04-17 11:12:22 +02:00
H. Verbeet
863a0bfe33 wined3d: Ignore SetTextureStageState on unsupported texture stages. 2007-04-17 11:12:09 +02:00
H. Verbeet
b154081356 wined3d: Use GL_UNSIGNED_BYTE as data type for WINED3DFMT_A8. 2007-04-17 11:11:55 +02:00
H. Verbeet
3777ef3a71 wined3d: Dump the FBO's attachments when its status is GL_FRAMEBUFFER_UNSUPPORTED_EXT. 2007-04-17 11:11:41 +02:00
H. Verbeet
c4cc10a595 wined3d: Add a function for dumping FBO status codes. 2007-04-17 11:11:31 +02:00
Jan Zerebecki
58c7c51485 wined3d: Remove resourceStoreCriticalSection. 2007-04-16 13:51:56 +02:00
Stefan Dösinger
725057da47 d3d: Remove dependency on ddraw.h header. 2007-04-16 13:20:15 +02:00
Stefan Dösinger
8a5b6df483 d3d: Enumerate palettized formats for ddraw. 2007-04-16 12:12:34 +02:00
Fabian Bieler
c4bbed4854 wined3d: Mark vertex shader 3.0 as foggy shaders if they write out the fog coord. 2007-04-13 12:58:12 +02:00
H. Verbeet
a79654d339 wined3d: Fix some swizzles on scalars. 2007-04-13 12:56:06 +02:00
Stefan Dösinger
0d88a38238 wined3d: Dirtify the shader and declaration states if the bound interface is destroyed. 2007-04-12 16:09:12 +02:00
H. Verbeet
2423c9f003 wined3d: Dirtify the sampler used by IWineD3DSurface_PreLoad in IWineD3DSurfaceImpl_BltOverride. 2007-04-10 21:39:43 +02:00
H. Verbeet
8d3c078e6c wined3d: Disable the scissor test for depth blits. 2007-04-10 21:39:32 +02:00
H. Verbeet
384ad311f3 wined3d: Disable the scissor test in stretch_rect_fbo. 2007-04-10 21:39:24 +02:00
H. Verbeet
f0fcf7e133 wined3d: Remove some redundant IWineD3DSurface_PreLoad calls from stretch_rect_fbo. 2007-04-10 21:39:09 +02:00
H. Verbeet
112c3bf1c3 wined3d: Add some traces to stretch_rect_fbo. 2007-04-10 21:38:55 +02:00
H. Verbeet
c9f82b9817 wined3d: Set the stream offset to 0 in DrawPrimitiveUP/DrawIndexedPrimitiveUP. 2007-04-09 12:41:35 +02:00
H. Verbeet
38082f2964 wined3d: Display the stream offset in GetStreamSource/SetStreamSource traces. 2007-04-09 12:41:26 +02:00
H. Verbeet
6fd820206a wined3d: Don't report render target formats we don't support as supported. 2007-04-09 12:41:17 +02:00
H. Verbeet
31663b9eca wined3d: Add some StretchRectFilterCaps. 2007-04-09 12:41:04 +02:00
H. Verbeet
75e91fa409 wined3d: Use the framebuffer blit extension to implement StretchRect. 2007-04-09 12:40:52 +02:00
H. Verbeet
70dd7ced99 wined3d: Separate attaching a surface to an FBO from set_render_target_fbo. 2007-04-09 12:39:59 +02:00
H. Verbeet
2e1e3d48f2 wined3d: Make bind_fbo a bit more generic. 2007-04-09 12:39:48 +02:00
H. Verbeet
75108443ff wined3d: Add a function to dump WINED3DTEXTUREFILTERTYPE values. 2007-04-09 12:39:35 +02:00
H. Verbeet
c9b178b594 wined3d: Fixup FBO depth attachments when the depth attachment is larger than the render target. 2007-04-09 12:39:23 +02:00
H. Verbeet
3d4e054b55 wined3d: Handle FBO attachments slightly more efficiently. 2007-04-09 12:38:53 +02:00
Felix Nawothnig
e600f7d082 wined3d: Issue an error when the render target is read back without SFLAG_INDRAWABLE being set. 2007-04-09 12:17:17 +02:00
Felix Nawothnig
2d0016c5bc wined3d: Preload target in ActivateContext() for ORM_BACKBUFFER/ORM_PBUFFER. 2007-04-09 12:17:07 +02:00
Felix Nawothnig
c0782603d0 wined3d: Allow np2 textures to be loaded for SFLAG_INDRAWABLE. 2007-04-09 12:15:56 +02:00
Stefan Dösinger
a9e04dd87f wined3d: Index buffer data is unsigned. 2007-04-07 10:58:25 +02:00
Stefan Dösinger
0899d85757 wined3d: Set WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD caps3 cap. 2007-04-07 10:58:17 +02:00
Stefan Dösinger
290f2eb146 wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
This is to allow StretchRect to pass the texture filter to WineD3D.
DirectDraw sets the texture filter to WINED3DTEXF_NONE, simmilar to all
other functions which do not need filtering.
2007-04-07 10:58:10 +02:00
Fabian Bieler
dcd416edbe wined3d: Add GL_EXT_framebuffer_blit to extension handler. 2007-04-06 12:31:09 +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
fd6395f0c7 wined3d: Fix UpdateSurface for sourceRect != sourceWidth. 2007-04-05 10:54:24 +02:00
Fabian Bieler
7df5deab23 wined3d: Add support for float texture formats back in. 2007-04-04 21:26:36 +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
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
Michael Ploujnikov
56391a3a85 wined3d: Remove DDBLT_WAIT fixme. 2007-04-02 12:05:24 +02:00
Stefan Dösinger
4f5d33311b wined3d: Use GL_APPLE_client_storage if available. 2007-04-02 11:34:12 +02:00
Stefan Dösinger
f9ee2355d0 wined3d: Add GL_APPLE_client_storage to our extension list. 2007-04-02 11:30:04 +02:00
Felix Nawothnig
c343fb1cdf wined3d: Make CreateCubeTexture fail when not supported. 2007-04-02 11:28:39 +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
Fabian Bieler
333de16fb6 wined3d: Implement support for projective textures in ps 2.0 and later. 2007-03-29 21:15:29 +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
Stefan Dösinger
bee084503b wined3d: Implement bem shader instruction. 2007-03-27 12:30:38 +02:00
Stefan Dösinger
929116f23c wined3d: Handle input modifiers in texcrd with arb shaders. 2007-03-27 12:30:26 +02:00
Fabian Bieler
e617c91f22 wined3d: Fix arb texbem instruction for projective textures. 2007-03-23 12:32:10 +01: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
Fabian Bieler
878e02538e wined3d: Remove fog coordinate clamping in the vertex shader. 2007-03-23 12:30:58 +01:00
Fabian Bieler
7cedd56d24 wined3d: Implement linear fog with pixel shader. 2007-03-23 12:30:23 +01:00
Stefan Dösinger
e25a16fda5 wined3d: General signed format correction without native signed formats.
Implement signed d3d formats for D3DFMT_V8U8 and D3DFMT_Q8W8V8U8 if no
suitable opengl signed format is supported.
2007-03-21 22:51:19 +01:00
Stefan Dösinger
2cdbd9a53d wined3d: Store the pixel format in the texture. 2007-03-21 22:50:49 +01:00
Stefan Dösinger
ede01abee2 wined3d: Support GL_ATI_envmap_bumpmap for D3DFMT_V8U8. 2007-03-21 22:50:41 +01:00
Stefan Dösinger
e213d7eff5 wined3d: Add GL_ATI_envmap_bumpmap to our gl extension header. 2007-03-21 22:50:30 +01:00
Vitaly Budovski
f7b565e2ca wined3d: Check for float texture formats correctly.
Move the checks for float texture formats into the correct location.
This allows some Direct3D sample applications which check for any of
the float formats together with D3DUSAGE_RENDERTARGET to start.
2007-03-21 12:33:17 +01:00
Phil Costin
1f03896e00 wined3d: Ensure all states affected by a change in render_offscreen are marked dirty in ActivateContext. 2007-03-21 11:55:52 +01:00
Stefan Dösinger
90fe64cee0 wined3d: Store an array of contexts in the swapchain.
This is a preparation for using multiple contexts on one drawable to
handle multithreading.
2007-03-19 12:23:16 +01:00
Stefan Dösinger
fcb83e7111 wined3d: Activate a context before doing opengl calls. 2007-03-19 12:22:57 +01:00
Stefan Dösinger
9789f993ce wined3d: Remove some old stuff. 2007-03-19 12:18:20 +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
022e884342 wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d. 2007-03-19 12:17:18 +01:00
Andrew Talbot
2f5f3825c6 wined3d: Replace inline static with static inline. 2007-03-17 20:04:46 +01:00
Erich Hoover
01199072dd wined3d: Fix LockRect memory location calculation for WINED3DFMT_DXT*. 2007-03-17 19:51:34 +01:00
Stefan Dösinger
4b445124d3 direct3d: Add a fixed function fog test. 2007-03-15 12:14:50 +01:00
Stefan Dösinger
0b46254b57 wined3d: Blitting to offscreen target.
Fix the NULL deref that occured when blitting to offscreen targets and
select the proper gl drawing buffer instead.
2007-03-15 12:14:39 +01:00
Erich Hoover
9795e6839f wined3d: Allow SetCursorProperties on existing cursor. 2007-03-14 13:14:08 +01:00
Francois Gouget
e11ca0a7fd wined3d: Remove space before '\n' in trace. 2007-03-14 12:10:47 +01:00