Henri Verbeet
c1a42ff024
wined3d: Simplify remove_vbos().
2009-03-26 14:47:58 +01:00
Henri Verbeet
6afd97cc9f
wined3d: Remove unused attributes from WineDirect3DVertexStridedData.
...
These are essentially unused, and mostly just complicate the code.
2009-03-26 14:47:52 +01:00
Henri Verbeet
25b60e168a
wined3d: Do the ffp_valid check before even trying to use the element.
2009-03-25 11:12:55 +01:00
Henri Verbeet
aa3027a604
wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
...
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet
702eeb6b0c
wined3d: Add separate methods for setting the primitive type.
2009-03-05 16:16:25 +01:00
Henri Verbeet
3b07e7059e
wined3d: Add d3d10 primitive types.
2009-03-05 16:16:24 +01:00
Henri Verbeet
17e12611b8
wined3d: Fix some prototypes.
2009-03-05 16:16:24 +01:00
Henri Verbeet
602bb1f551
wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods.
2009-03-05 16:16:24 +01:00
Michael Stefaniuc
118c75a8c7
wined3d: Remove superfluous pointer casts.
2009-02-03 12:40:14 +01:00
Henri Verbeet
e82eef28f9
wined3d: Take EXT_vertex_array_bgra into account in send_attribute() and loadNumberedArrays().
2009-01-23 13:12:47 +01:00
Henri Verbeet
5d875906c1
wined3d: Remove some superfluous pointer casts.
2009-01-20 12:34:05 +01:00
Henri Verbeet
9d8c6326c0
wined3d: Remove stray tabs.
2009-01-09 14:06:14 +01:00
Henri Verbeet
9d523ebd8f
wined3d: Remove a silly check in drawStridedInstanced().
2009-01-09 14:06:14 +01:00
Henri Verbeet
b1812c690c
wined3d: Add support for EXT_vertex_array_bgra.
...
This allows us to skip BGRA->RGBA color conversion for vertex attributes if
this extension is present.
2009-01-08 13:21:51 +01:00
Henri Verbeet
6791e6b752
wined3d: Simplify handling of swizzled attributes.
...
This should also be a little bit faster.
2009-01-08 13:21:43 +01:00
Henri Verbeet
cc447eac55
wined3d: Move position_transformed out of u.s in struct WineDirect3DVertexStridedData.
2009-01-08 13:21:31 +01:00
Henri Verbeet
1a1f5ec69d
wined3d: Cleanup drawStridedFast().
...
Remove some uncessary code and use more descriptive parameter names. Note that
max_vertex_idx isn't the same as "minIndex + calculatedNumberOfindices - 1"
but rather "minIndex + numberOfVertices - 1". calculatedNumberOfindices just
specifies the number of vertices that's drawn, while numberOfVertices
specifies the range of vertices that's drawn.
2009-01-08 13:21:23 +01:00
Henri Verbeet
5f8c62e45d
wined3d: Remove a redundant parameter to drawPrimitive().
...
startIdx should be the first index to draw, either from the vertex
array or the index array, depending on if the draw is indexed or
not. Having both at the same time wouldn't make sense.
2009-01-07 12:22:12 +01:00
Henri Verbeet
2b926db50d
wined3d: Make use_vs() and use_ps() work on a stateblock instead of a device.
...
Most callers work on a stateblock rather than a device, and the main fields
we check (vertexShader and pixelShader) are part of the stateblock as well.
2008-12-31 12:25:56 +01:00
Stefan Dösinger
199a3468bf
wined3d: Fake GL_ARB_multitexture.
2008-12-16 14:31:25 +01:00
Henri Verbeet
b409061337
wined3d: Make some constant arrays also static.
...
As pointed out by Dan Kegel.
2008-12-10 10:50:37 +01:00
Henri Verbeet
afd5a53bd0
wined3d: Load texture coordinates from the correct streams.
...
This fixes a regression introduced by commit
a2febdd200
.
2008-12-08 12:28:11 +01:00
Henri Verbeet
a2febdd200
wined3d: Slightly improve drawStridedSlow() performance.
...
This moves a couple of checks outside of the main drawing loop, since
they're not going to change anyway.
2008-12-05 11:58:53 +01:00
Henri Verbeet
fec9820e56
wined3d: Handle a few "silent" FIXMEs more consistent with the rest of the code.
...
Also avoids needlessly initializing static variables.
2008-12-02 14:04:00 +01:00
Henri Verbeet
6f98f19703
wined3d: Const correctness fixes for drawprim.c.
2008-12-01 12:45:29 +01:00
Henri Verbeet
21b8535902
wined3d: Make the lpData member of WineDirect3DStridedData const.
2008-12-01 12:45:23 +01:00
Andrew Talbot
f40afa87c6
wined3d: Sign-compare warnings fix.
2008-11-28 12:57:25 +01:00
Henri Verbeet
b4f0b5bdd0
wined3d: Const correctness fixes.
2008-11-25 13:37:39 +01:00
Henri Verbeet
6e1b7333e6
wined3d: Print an error when drawStridedSlowVs() is called with 0 idxSize and non-NULL idxData (LLVM/Clang).
2008-10-31 12:58:43 +01:00
Henri Verbeet
4034a29f19
wined3d: Move depth_blt to surface.c.
2008-10-28 12:33:13 +01:00
Alexandre Julliard
6cfef95ce7
wined3d: Convert source files to utf-8.
2008-10-18 19:21:20 +02:00
Henri Verbeet
c777f962a2
wined3d: We only need to enable texturing for a target if we're going to draw with it (without a shader).
...
Also, these enables cause problems if they're done while the context
is setup for blitting.
2008-10-15 15:22:06 +02:00
Henri Verbeet
cb472a3be7
wined3d: Declare diffuseColor and specularColor inside their respective blocks (LLVM/Clang).
2008-10-10 12:27:17 +02:00
Henri Verbeet
d8c40f7641
wined3d: Print an error when drawStridedSlow() is called with 0 idxSize and non-NULL idxData (CID 509).
2008-10-08 12:16:35 +02:00
Henri Verbeet
3a7fcec4d7
wined3d: Handle texture coordinates the same way we handle other vertex attributes.
2008-09-25 11:53:10 +02:00
Henri Verbeet
2c1e4602a3
wined3d: If a stage isn't mapped to a texture unit, we can't set default coordinates either.
2008-09-25 11:53:03 +02:00
Henri Verbeet
f84680e66c
wined3d: Don't try to draw with unsupported attribute data types.
2008-09-22 12:20:34 +02:00
Tobias Jakobi
36cf25b598
wined3d: Fix long int warnings.
2008-09-12 13:33:00 +02:00
Tobias Jakobi
6e1194f06e
wined3d: Fix SHOW_FRAME_MAKEUP debug dump code.
2008-09-12 13:30:02 +02:00
Henri Verbeet
81effcf30d
wined3d: Set the viewport to the texture size in depth_blt().
2008-09-05 10:50:55 +02:00
Henri Verbeet
632102cd14
wined3d: Correct a TRACE and remove an incorrect comment.
2008-09-04 11:15:24 +02:00
Henri Verbeet
4b354e8e62
wined3d: Fix a variable name inside a VTRACE.
2008-09-04 11:15:17 +02:00
Henri Verbeet
d37c6fc0a9
wined3d: Depth stencil tracking depends on the value of This->render_offscreen.
2008-09-04 11:15:01 +02:00
Stefan Dösinger
43fe6b0bcf
wined3d: Remove some junk.
2008-08-27 13:21:24 +02:00
H. Verbeet
2f99bcdde2
wined3d: Move depth stencil location handling code up a couple of lines.
...
This is just for clarity, so that render targets and the depth stencil are
handled in the same place.
2008-08-22 10:38:30 +02:00
H. Verbeet
b685b84e66
wined3d: Apply FBO state in ActivateContext().
...
Fixes some GL errors due to calling glDrawBuffer(GL_BACK) when an FBO
is still active.
2008-08-05 14:09:34 +02:00
H. Verbeet
daa59e00be
wined3d: Call LoadLocation() on higher render targets as well, simplify some code in drawPrimitive.
...
It's probably rare for higher render targets to get locked or updated
from sysmem, but this should still be more correct. It also makes the
code simpler.
2008-07-31 13:04:08 +02:00
H. Verbeet
c7da79ded3
wined3d: FBO texture == drawable handling is already handled in LoadLocation().
2008-07-30 12:44:18 +02:00
H. Verbeet
9b47996b41
wined3d: Container dirtification is already handled in ModifyLocation().
2008-07-30 12:44:12 +02:00
H. Verbeet
b37cc08721
wined3d: Don't call shader_select() in depth_blt().
...
Calling shader_select() from inside depth_blt() isn't necessarily
safe. shader_select() assumes CompileShader() has been called for the
current shaders, but that depends on STATE_VSHADER / STATE_PIXELSHADER
being applied. That isn't always true when depth_blt() gets called,
with the result that sometimes GLSL programs could be created with no
shader objects attached.
2008-07-10 20:33:29 +02:00
H. Verbeet
4f77c29bcf
wined3d: Track depth stencil location per-surface.
...
This gets rid of depth_copy_state in the device, and instead tracks
the most up to date location per-surface. This makes things a lot
easier to follow, and allows us to make a copy when switching depth
stencils in SetDepthStencilSurface().
2008-07-03 11:50:52 +02:00
H. Verbeet
e7d0ef72ba
wined3d: Use dst_fbo to do the depth blit.
...
This makes the depth copy independent of the currently attached render
targets. This is important for the next patch because it might do a
depth copy when the render targets aren't in a valid configuration
(SetDepthStencilSurface()).
2008-07-03 11:50:51 +02:00
H. Verbeet
c433562a68
wined3d: Explicitly enable depth buffer writing in depth_blt().
...
This prevents conflicts with WINED3DRS_ZWRITEENABLE.
2008-06-25 10:43:08 +02:00
Ben Mayhew
a3f503f876
wined3d: Only display Missing vbo streams fixme once.
2008-05-12 11:41:59 +02:00
Andrew Talbot
0de14c37e5
wined3d: Remove unused variables.
2008-04-30 10:25:47 +02:00
Austin English
6e59cd2c34
Spelling fixes.
2008-04-22 12:20:12 +02:00
Alexander Dorofeyev
35979b920a
wined3d: Prevent console spamming in drawPrimitive.
2008-04-21 14:22:42 +02:00
Alexander Dorofeyev
7c8b8e0a93
wined3d: Set isInDraw later in drawPrimitive.
...
This should fix the problem that in LoadLocation SFLAG_INTEXTURE path gl calls
can be made without activating context, due to isInDraw checks.
2008-04-08 13:20:34 +02:00
Rico Schüller
a44da70d63
wined3d: Improve drawStridedInstanced().
2008-04-07 21:20:07 +02:00
Alexander Dorofeyev
5ccf91b705
wined3d: LEAVE_GL when exiting with error in tesselate_rectpatch.
2008-04-07 21:17:49 +02:00
Stefan Dösinger
b1d8af7926
wined3d: Update copyright lines.
2008-04-02 20:22:42 +02:00
Alexander Dorofeyev
3d2bdf52cd
wined3d: Handle zero primitive count.
2008-03-24 20:40:13 +01:00
Stefan Dösinger
1424e7fd09
wined3d: Make Clear aware of the depth stencil sharing.
2008-02-05 12:37:01 +01:00
Stefan Dösinger
3d2aa7afa0
wined3d: De-Statify depth blit opengl resources.
2008-02-05 12:33:15 +01:00
Andrew Talbot
b3a58a2486
wined3d: Remove unneeded casts.
2008-01-24 11:41:36 +01:00
Austin English
3471f841a1
wined3d: Spelling fixes.
2008-01-18 12:53:33 +01:00
Stefan Dösinger
b5f925cae0
wined3d: Implement half float vertex buffer conversion.
2007-12-21 13:13:56 +01:00
Stefan Dösinger
aaa0e5090a
wined3d: Add a test for 16 bit floats.
2007-12-20 12:10:16 +01:00
Stefan Dösinger
2d90449500
wined3d: Fixed function vertex attribute types are flexible.
2007-12-20 10:49:42 +01:00
Stefan Dösinger
a3c2fb9e64
wined3d: Store if half float conversion is needed in the decl.
2007-12-20 10:48:16 +01:00
Stefan Dösinger
7a1d35e513
wined3d: Emulate half float vertices if GL_NV_half_float is not there.
2007-12-19 12:19:27 +01:00
Michael Stefaniuc
a526ad6cbc
wined3d: Fix a "ordered comparison of pointer with integer zero".
2007-12-11 14:59:54 +01:00
Gerald Pfeifer
f4ec0a209b
wined3d: Fix error handling in fixed_get_input().
2007-12-05 13:47:10 +01:00
Stefan Dösinger
e4f8a2da2b
wined3d: Depth stencil fixes.
2007-11-14 11:58:36 +01:00
Stefan Dösinger
948292dbc3
wined3d: Move texture -> drawable blits to LoadLocation.
2007-11-01 12:37:43 +01:00
Stefan Dösinger
dcff7dc213
wined3d: Begin centralizing surface location management.
2007-10-26 15:17:19 +02:00
Stefan Dösinger
4c51db896c
wined3d: Check for NULL streams.
2007-09-20 15:53:19 +02:00
Stefan Dösinger
282696b4f6
wined3d: Supply texture coords even if no texture is bound and pshaders are used.
2007-08-31 19:32:46 +02:00
Stefan Dösinger
643d1e8847
wined3d: Tidy up the vbo removal from the strided data.
2007-08-30 11:57:18 +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
4779a27eed
wined3d: Remove the D3DTTFF_PROJECTED handling from drawStridedSlow.
2007-08-28 11:55:33 +02:00
Stefan Dösinger
fe0f0eb48a
wined3d: Some texture transform fixes.
2007-08-27 18:28:43 +02:00
Stefan Dösinger
6ec6c941fa
wined3d: BaseVertexIndex can be negative.
2007-08-27 12:00:42 +02:00
Stefan Dösinger
98bc83be7c
wined3d: Fall back to drawStridedSlow if fog coords are used.
2007-08-23 13:33:22 +02:00
H. Verbeet
3c609c11e7
wined3d: UBYTE4 data shouldn't be normalized.
2007-08-20 22:24:48 +02:00
Hernan Rajchert
6aead911fb
wined3d: Fixed error message when glDrawElement fails.
2007-08-13 11:32:07 +02:00
Stefan Dösinger
b8dd5839ef
wined3d: Store the position_transformed flag in the vdecl.
2007-08-08 15:32:00 +02:00
Stefan Dösinger
06e51c21e1
wined3d: Determine used streams at vdecl creation.
2007-08-08 15:32:00 +02:00
Roderick Colenbrander
e77da5ef8a
wined3d: Don't call ActivateContext between ENTER_GL/LEAVE_GL.
2007-08-07 12:36:32 +02:00
H. Verbeet
82245cb5d7
wined3d: Properly load FLOAT16_2 and FLOAT16_4 vertex data.
2007-08-02 12:18:41 +02:00
Francois Gouget
5266e57975
Assorted spelling fixes.
2007-07-31 21:37:50 +02:00
H. Verbeet
e652128fdf
wined3d: Pass the correct target to glMultiTexCoord.
2007-07-25 13:02:44 +02:00
H. Verbeet
fc4c73902a
wined3d: Trace the declaration element type in primitiveDeclarationConvertToStridedData().
2007-07-24 11:25:52 +02:00
Stefan Dösinger
97cd8bab1b
wined3d: Print the fixed and unfixed vertex warning only when needed.
2007-07-10 13:30:42 +02:00
Stefan Dösinger
26ebe396c3
wined3d: Implement high order patches.
2007-07-06 19:32:47 +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
440ca84680
wined3d: Fix various incorrect uses of GL_LIMITS(texture_stages) and GL_LIMITS(sampler_stages).
2007-06-22 12:19:10 +02:00
H. Verbeet
c60bdca5b0
wined3d: Make use of the texUnitMap in drawStridedSlow as well.
2007-06-21 13:10:40 +02:00
Stefan Dösinger
b081cbaf40
wined3d: Emulate tracking of multiple material properties.
2007-06-21 13:09:30 +02:00
Stefan Dösinger
030b92a2f6
wined3d: Remove the FVF codepath from drawprim.
2007-06-21 13:09:08 +02:00