Henri Verbeet
390543dd02
wined3d: Use the "adapter" local variable in swapchain_init().
2013-08-19 12:53:21 +02:00
Henri Verbeet
b2721d5f9c
wined3d: Store the immediate mode fixed function attribute submission function pointers in struct wined3d_d3d_info.
2013-08-19 12:53:21 +02:00
Henri Verbeet
c1a7323fac
wined3d: Avoid some redundant state_pscale() calls.
2013-08-19 12:53:21 +02:00
Henri Verbeet
ad147d638c
wined3d: Just update a range of constants in walk_constant_heap().
...
The call overhead from separate calls typically ends up being more expensive
than just updating a few more constants.
2013-08-16 11:55:24 +02:00
Henri Verbeet
37d1e8b79c
wined3d: Try to avoid redundant constant updates.
...
This gives a minor performance improvement. For example, in 3DMark03 Game Test
1 this gives about a 4% improvement, in the Counter Strike: Source stress test
it's about 1%. (NVIDIA GF9600M, Intel T9550, 1024x768).
2013-08-16 11:55:24 +02:00
Henri Verbeet
c1af405054
wined3d: Only set fragment pipe uniforms if they're needed by the shader.
...
In principle the GL driver also checks the location, but it turns out to be
slightly faster to do it ourselves.
2013-08-16 11:55:24 +02:00
Henri Verbeet
cbaa17d3cf
wined3d: Assume the buffer has a buffer object in buffer_add_dirty_area().
2013-08-15 16:24:09 +02:00
Henri Verbeet
4eb39ec5f4
wined3d: Make buffer_add_dirty_area() never fail.
2013-08-15 16:24:07 +02:00
Henri Verbeet
5e64fd7049
wined3d: Don't bother downloading buffer contents on destruction.
2013-08-15 16:24:04 +02:00
Stefan Dösinger
ba61730daa
wined3d: Avoid calculating 1 / (fog_end - fog_start) in the shader.
2013-08-01 20:43:42 +02:00
Rico Schüller
55c190d396
wined3d: Fix typo.
2013-07-24 11:12:45 -05:00
Matteo Bruni
42cfbb825c
wined3d: Add a missing destroy_dummy_textures() call.
2013-07-24 11:09:39 -05:00
Matteo Bruni
e2cf98eb76
wined3d: Implement special fog behavior for orthogonal projection matrices.
2013-07-24 11:09:31 -05:00
Matteo Bruni
c9458882a0
wined3d: Fix handling of cnd instruction with coissue flag.
2013-06-26 18:45:37 +02:00
Stefan Dösinger
248f4b7415
wined3d: Fix the TMP_COLOR optimization with custom fog.
2013-06-21 17:35:07 +02:00
Matteo Bruni
5649746b60
wined3d: Fix NP2 surface repacking in surface_download_data.
2013-06-20 22:14:35 +02:00
Stefan Dösinger
22319c7f9e
wined3d: Work around broken FFP fog with ARB shaders.
2013-06-19 20:09:53 +02:00
Stefan Dösinger
b648b74191
wined3d: Pass fogstart==fogend to GL in fog table mode.
2013-06-19 20:09:53 +02:00
Henri Verbeet
4272d92f93
wined3d: Avoid the position_float4() fixup if the vertex pipe can handle pre-transformed vertices itself.
2013-06-17 13:34:40 +02:00
Karol Herbst
627aebf774
wined3d: Add Nvidia GeForce GTX 770M.
2013-06-14 13:51:37 +02:00
Maxime Lombard
214d6ed0ba
wined3d: Add Nvidia GeForce GTX 670MX.
2013-06-14 13:51:35 +02:00
Henri Verbeet
ffc9f535eb
wined3d: Handle pre-transformed vertices in the GLSL vertex pipe.
...
This also avoids a fallback to drawStridedSlow().
2013-06-14 11:46:31 +02:00
Henri Verbeet
8a7ddfbb53
wined3d: Don't use state_colormat() with the GLSL vertex pipe.
...
None of the code in there should be needed for the GLSL vertex pipe, and the
"untracked materials" counter in particular will trigger an unnecessary
fallback to drawStridedSlow().
2013-06-14 11:46:27 +02:00
Henri Verbeet
4de77fa23f
wined3d: Allow a custom pitch to be specified in wined3d_surface_set_mem().
2013-06-14 11:46:20 +02:00
Henri Verbeet
e0494afa00
wined3d: Introduce a helper function for printing floats in GLSL shaders.
2013-06-11 11:33:15 +02:00
Henri Verbeet
e8905e360f
wined3d: Don't modify the texcoord mask for "projected" cube textures in shader_glsl_tex().
2013-06-07 11:58:22 +02:00
Henri Verbeet
f52d4044eb
wined3d: Fix a typo in shader_glsl_generate_ffp_fragment_shader().
2013-06-07 11:58:20 +02:00
Henri Verbeet
d6bc4fe71a
wined3d: Allow surface flags to be passed to texture creation functions.
2013-06-06 11:47:19 +02:00
Henri Verbeet
91096dd7ad
wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_create_3d().
2013-06-06 11:47:07 +02:00
Francois Gouget
145c417e98
wined3d: Make state_fog_vertexpart() static.
2013-06-06 11:47:02 +02:00
Henri Verbeet
b23739316c
wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_create_cube().
2013-06-05 17:31:39 +02:00
Henri Verbeet
9d4cbd6195
wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_create_2d().
2013-06-05 17:31:39 +02:00
Henri Verbeet
1366e3a5bf
wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_init().
2013-06-05 17:31:39 +02:00
Henri Verbeet
13a38e8d5e
wined3d: Pass a wined3d_resource_desc structure to device_parent_create_swapchain_surface().
2013-06-04 10:14:28 +02:00
Henri Verbeet
a4d2660c9b
wined3d: Pass a wined3d_resource_desc structure to device_parent_create_texture_surface().
2013-06-04 10:14:26 +02:00
Henri Verbeet
1276a3db04
wined3d: Properly set resource dimensions in wined3d_texture_init().
2013-06-04 10:14:24 +02:00
Henri Verbeet
a3f59cf618
wined3d: Allow textures as swapchain surfaces.
2013-06-03 11:30:43 +02:00
Henri Verbeet
48d470f60c
wined3d: Add base format info for some typeless formats.
2013-06-03 11:30:34 +02:00
Henri Verbeet
51bbfa5ced
wined3d: Allow 32 bpc UINT formats in vertex declarations.
2013-06-03 11:30:31 +02:00
Kyle Luna
7f5f166a19
wined3d: Add Mobility Radeon HD 4200.
2013-05-31 18:25:01 +02:00
Henri Verbeet
e4f50de336
wined3d: Get rid of the unused "half" GLSL variable in shader_glsl_ffp_vertex_lighting().
2013-05-31 11:57:40 +02:00
Francois Gouget
49dbf2464f
wined3d: Add a trailing '\n' to a shader_addline() call.
2013-05-30 20:19:33 +02:00
Henri Verbeet
8352d45da5
wined3d: Rename "fogmode" to "wined3d_ffp_ps_fog_mode".
...
This is mostly for consistency with wined3d_ffp_vs_fog_mode.
2013-05-30 10:57:15 +02:00
Henri Verbeet
e4816996c3
ddraw: Handle the "DirectDrawRenderer" registry key in wined3d.
2013-05-30 10:57:08 +02:00
Henri Verbeet
74c5a22daa
wined3d: Only invalidate the current ffp vertex shader if the light type changed.
...
As opposed to any time a light parameter changed.
2013-05-29 12:12:33 +02:00
Henri Verbeet
bdd97858bf
wined3d: Only write gl_ClipVertex if clipping is enabled in shader_glsl_generate_ffp_vertex_shader().
2013-05-29 12:12:32 +02:00
Henri Verbeet
1c2392ddb0
wined3d: Only write gl_PointSize for point primitives in shader_glsl_generate_ffp_vertex_shader().
2013-05-29 12:12:32 +02:00
Henri Verbeet
2014141a25
wined3d: Add support for GLSL based fixed function vertex shaders.
2013-05-29 12:12:32 +02:00
Henri Verbeet
50a3864515
wined3d: Just remove the D3DCMP_NOTEQUAL / D3DCMP_EQUAL FIXME in state_zfunc().
...
As far as I'm aware this just works, I'm not aware of any open issues related
to it.
2013-05-28 14:55:08 +02:00
Henri Verbeet
97b6299eaf
wined3d: Expose WINED3DVTXPCAPS_TEXGEN_SPHEREMAP.
...
Since we already implement it. Tweening will likely never work with fixed
function GL.
2013-05-28 14:55:00 +02:00
Henri Verbeet
b5df8bd4f5
wined3d: Use debug_d3dstate() in compile_state_table() as well.
2013-05-28 14:54:54 +02:00
Henri Verbeet
273dcbf564
wined3d: Get rid of the unused "streams" field from struct wined3d_vertex_declaration.
2013-05-27 19:28:57 +02:00
Henri Verbeet
b35045ba25
wined3d: Don't create FBOs in context_bind_fbo().
...
We can just do this in context_create_fbo_entry() now.
2013-05-27 19:28:52 +02:00
Henri Verbeet
7ca6839c94
wined3d: Also clear context->current_fbo in context_apply_blit_state().
...
The draw buffer handling code depends on this being current. This fixes a bug
exposed by commit 075fa6547c
.
2013-05-27 19:28:47 +02:00
Marcus Meissner
589b48e495
wined3d: Remove now useless NULL check (Coverity).
2013-05-27 19:02:43 +02:00
Stefan Dösinger
10929cbe43
wined3d: Correct an ERR/FIXME.
2013-05-21 19:41:12 +02:00
Stefan Dösinger
9287bb80dc
d3d: d3d9ex does not do video memory accounting for D3DPOOL_DEFAULT resources.
2013-05-20 19:08:28 +02:00
Stefan Dösinger
6621b11ad1
wined3d: Don't pass the device to atifs_free_ffpshader.
2013-05-15 19:04:19 +02:00
Stefan Dösinger
121bd9d201
wined3d: Initialize the gl_info pointer from the context.
2013-05-15 19:04:16 +02:00
Stefan Dösinger
b12ec91c09
wined3d: Don't log the device pointer in shader_arb_select.
2013-05-15 19:04:04 +02:00
Stefan Dösinger
71723ad086
wined3d: Disable the fixed function vertex pipeline when ARB vertex programs are used.
2013-05-14 18:37:13 +02:00
Stefan Dösinger
6fce4d4547
wined3d: Pass the state and private data to shader_select.
2013-05-14 18:37:08 +02:00
Stefan Dösinger
47f385adf0
wined3d: Add a separate function for disabling shaders.
2013-05-14 18:37:04 +02:00
Stefan Dösinger
036a62a245
wined3d: Explicitly pass the state to shader_load_constants.
2013-05-14 18:36:59 +02:00
Stefan Dösinger
5d138799ea
wined3d: Don't access the stateblock from shader_arb_load_constants_internal.
2013-05-14 18:36:53 +02:00
Alexandre Julliard
02d56bd3a2
wined3d: Don't bother to unregister classes at process exit.
2013-05-14 11:33:29 +02:00
Stefan Dösinger
260e1cb0b3
wined3d: Pass the pixel shader input signature to shader_arb_generate_vshader.
2013-05-13 19:57:11 +02:00
Stefan Dösinger
e25b968499
wined3d: Fix a ~0U assignment.
2013-05-13 19:57:09 +02:00
Austin English
c012b1a13c
wined3d: Add NVidia GeForce GT 630.
2013-05-08 12:39:55 +02:00
Matteo Bruni
58dc0346d6
wined3d: Remove some, now unnecessary, glReadBuffer(GL_NONE) calls.
...
This reverts parts of e4efcea223
and
8e12b2e61e
.
2013-04-26 16:28:22 +02:00
Matteo Bruni
bda63dd4a9
wined3d: Set GL_NONE for glReadBuffer / glDrawBuffer on FBO initialization.
2013-04-26 16:28:19 +02:00
Stefan Dösinger
76941eff00
wined3d: Move gl_info->limits.max_texture_stages to d3d_info.
2013-04-25 20:25:10 +02:00
Stefan Dösinger
ac99d53991
wined3d: Move valid_rt_mask to wined3d_d3d_info.
2013-04-25 20:25:10 +02:00
Stefan Dösinger
cb01fb27b1
wined3d: Move max_ffp_textures to wined3d_d3d_info.
2013-04-25 20:25:09 +02:00
Stefan Dösinger
768e8c098c
wined3d: Move shader limits to wined3d_d3d_info.
2013-04-25 20:25:09 +02:00
Stefan Dösinger
f7580726b0
wined3d: Don't pass the device to gen_ffp_frag_op.
2013-04-25 20:25:08 +02:00
Stefan Dösinger
820c12c98f
wined3d: Access gl_info and d3d_info from the context in find_arb_*_compile_args.
2013-04-25 20:25:08 +02:00
Stefan Dösinger
16e862ba9d
wined3d: Add a new structure for d3d limits and other info.
2013-04-25 20:25:07 +02:00
Henri Verbeet
471991eb9a
wined3d: Introduce a wined3d_vertex_pipe_ops structure.
2013-04-25 13:39:56 +02:00
Stefan Dösinger
c371af0d5c
wined3d: Get rid of device->view_ident.
2013-04-24 18:26:56 +02:00
Henri Verbeet
6fe9e0f033
wined3d: Disable occlusion query support if the implementation has 0 counter bits.
2013-04-23 15:35:08 +02:00
Stefan Dösinger
f663683980
wined3d: Remove leftover texture accesses in GLSL shader generation.
2013-04-22 17:56:05 +02:00
Matteo Bruni
197cdcc9ae
wined3d: Use ARB_internalformat_query2 for the other texture format caps too.
2013-04-22 17:55:38 +02:00
Matteo Bruni
6fa87980ca
wined3d: Use ARB_internalformat_query2 to check for texture format rendering and blending support, where available.
2013-04-22 17:55:36 +02:00
Matteo Bruni
1d17176a0d
wined3d: Add ARB_internalformat_query2 GL extension.
2013-04-22 17:55:33 +02:00
Henri Verbeet
c756496326
wined3d: Rename the device "strided_streams" field to "stream_info".
...
The "strided" in there is mostly historic, it hasn't really been accurate for
a while now.
2013-04-22 15:26:11 +02:00
Henri Verbeet
82a06a0a36
wined3d: Get rid of the unused TRACE_STRIDED macro.
2013-04-22 15:26:04 +02:00
Henri Verbeet
ee6d17cd54
wined3d: Add support for GL_ARB_debug_output.
2013-04-19 10:43:40 +02:00
Henri Verbeet
5115f55eeb
wined3d: Use WGL_ARB_create_context when available.
2013-04-19 10:43:37 +02:00
Henri Verbeet
3004baeb62
wined3d: Simplify wined3d_check_device_format().
2013-04-18 11:42:57 +02:00
Henri Verbeet
ff48c3ba58
wined3d: Properly check if a format has a conversion function in wined3d_check_device_format().
2013-04-18 11:42:50 +02:00
Henri Verbeet
0e32c9a247
wined3d: Add a performance warning for mapping a dynamic surface without WINED3D_MAP_DISCARD.
2013-04-18 11:42:47 +02:00
Henri Verbeet
c0a84454c4
wined3d: Introduce a separate debug channel for performance warnings.
2013-04-17 11:36:22 +02:00
Henri Verbeet
42208d083c
wined3d: Get rid of the unused WINED3DFMT_FLAG_FOURCC flag.
2013-04-17 11:36:19 +02:00
Henri Verbeet
84219f1964
wined3d: Immediate constants should always have a valid location in shader_glsl_load_constantsF().
2013-04-17 11:36:17 +02:00
Stefan Dösinger
ea69fa943f
wined3d: Enable GL_ARB_texture_rectangle in GLSL ffp fragment shaders.
2013-04-16 17:49:11 +02:00
Stefan Dösinger
c6ed62735d
wined3d: Refuse to create NPOT textures without GL support.
2013-04-16 17:48:20 +02:00
Henri Verbeet
1a551fe5f9
wined3d: Immediate constants should always have a valid location in shader_glsl_load_constantsB().
2013-04-16 12:14:03 +02:00
Henri Verbeet
302ad29742
wined3d: Constants in constants_set should always have a valid location in shader_glsl_load_constantsB().
2013-04-16 12:14:01 +02:00
Henri Verbeet
00cc81dc69
wined3d: Simplify DISCARD / READONLY handling in wined3d_buffer_map() a bit.
2013-04-16 12:13:59 +02:00