Henri Verbeet
079b6d4c11
wined3d: Unify the shader state IDs.
2013-10-09 11:11:07 +02:00
Henri Verbeet
1f22246b84
wined3d: Send material updates through the command stream.
2013-10-09 11:11:00 +02:00
Henri Verbeet
db68c43678
wined3d: Send clip plane updates through the command stream.
2013-10-09 11:10:58 +02:00
Stefan Dösinger
e4a0767e2d
wined3d: Get rid of SFLAG_LOCKABLE.
2013-10-08 15:39:02 +02:00
Henri Verbeet
c6f8404bb6
wined3d: Send transformation matrix updates through the command stream.
2013-10-08 09:09:01 +02:00
Henri Verbeet
b2e75e27f3
wined3d: Send sampler state updates through the command stream.
2013-10-08 09:08:59 +02:00
Henri Verbeet
8cf6d1a429
wined3d: Send texture state updates through the command stream.
2013-10-08 09:08:56 +02:00
Henri Verbeet
8644b62726
wined3d: Move lowest_disabled_stage to the context.
2013-10-07 14:44:35 +02:00
Henri Verbeet
3f6d45bf14
wined3d: Send render state updates through the command stream.
2013-10-07 14:44:35 +02:00
Henri Verbeet
82cf8b2066
wined3d: Send pixel shader binding updates through the command stream.
2013-10-04 12:45:22 +02:00
Henri Verbeet
819e9dda28
wined3d: Send geometry shader binding updates through the command stream.
2013-10-04 12:45:21 +02:00
Henri Verbeet
368fcab2e8
wined3d: Send vertex shader binding updates through the command stream.
2013-10-04 12:45:18 +02:00
Henri Verbeet
052a863010
wined3d: Send texture binding updates through the command stream.
2013-10-03 12:55:09 +02:00
Henri Verbeet
d61b14371a
wined3d: Send index buffer binding updates through the command stream.
2013-10-03 12:55:04 +02:00
Henri Verbeet
264256970b
wined3d: Send stream frequency updates through the command stream.
2013-10-03 12:54:59 +02:00
Henri Verbeet
57ec706dde
wined3d: Send vertex buffer binding updates through the command stream.
2013-10-02 11:05:41 +02:00
Henri Verbeet
1f864bc9c3
wined3d: Send vertex declaration binding updates through the command stream.
2013-10-01 10:57:32 +02:00
Henri Verbeet
fd5fc51bc5
wined3d: Send depth stencil binding updates through the command stream.
2013-10-01 10:57:29 +02:00
Henri Verbeet
438b672660
wined3d: Send render target binding updates through the command stream.
2013-10-01 10:57:27 +02:00
Henri Verbeet
0776060439
wined3d: Send scissor rect updates through the command stream.
2013-09-30 20:34:52 +02:00
Henri Verbeet
8a7744b06e
wined3d: Call state_init_default() from state_init() when the appropriate flag is set.
2013-09-30 20:34:52 +02:00
Henri Verbeet
bc0f990b44
wined3d: Send viewport updates through the command stream.
2013-09-30 20:34:52 +02:00
Henri Verbeet
baf285d46a
wined3d: Send draw operation through the command stream.
2013-09-27 10:33:36 +02:00
Henri Verbeet
708b938f64
wined3d: Send clear operations through the command stream.
2013-09-27 10:33:34 +02:00
Henri Verbeet
602c82bce8
wined3d: Send present operations through a command stream.
...
The eventual goal is to have a multithreaded implementation of wined3d_cs_ops
and offload some processing to a different thread.
2013-09-27 10:33:15 +02:00
Henri Verbeet
4a9da034ab
wined3d: Explicitly pass gl_info to state_init_default().
2013-09-26 10:45:52 +02:00
Henri Verbeet
abbc595fc1
wined3d: Initialize the fb state pointer in state_init().
2013-09-26 10:45:50 +02:00
Stefan Dösinger
556e3e0c76
wined3d: Use GL_APPLE_client_storage for volumes if available.
2013-09-23 20:32:36 +02:00
Stefan Dösinger
5e89689bcd
wined3d: Make format conversion functions work on volumes.
2013-09-23 20:32:32 +02:00
Stefan Dösinger
24fbe9f2ec
wined3d: Pass the destination pitch to format conversion functions.
...
The relation between src and dst pitches is not correct if the source
pitch is padded to match pitch alignment requirements.
2013-09-20 17:04:04 +02:00
Stefan Dösinger
d15042837a
wined3d: Pass a correct access flag to glMapBufferARB.
2013-09-19 19:49:49 +02:00
Stefan Dösinger
83b404879c
wined3d: Mapping a mapped volume is an error.
2013-09-18 15:46:49 +02:00
Stefan Dösinger
bbfca4863c
wined3d: Store the instance count in the context structure.
2013-09-16 13:06:03 +02:00
Stefan Dösinger
59e0b841c7
wined3d: Move device_preload_textures into context.c.
2013-09-16 13:06:01 +02:00
Stefan Dösinger
112617f00b
wined3d: Move tex_unit_map and friends into the context.
2013-09-16 13:05:58 +02:00
Stefan Dösinger
f29c24f2de
wined3d: Pass the context to surface_internal_preload.
2013-09-16 13:05:55 +02:00
Stefan Dösinger
fe44be5fde
wined3d: Pass the context to the internal texture_preload function.
2013-09-16 13:05:52 +02:00
Henri Verbeet
d1e44ff775
wined3d: Pass a resource to wined3d_resource_free_sysmem().
2013-09-16 12:51:13 +02:00
Henri Verbeet
261246ef21
wined3d: Pass a resource to wined3d_resource_allocate_sysmem().
2013-09-16 12:51:13 +02:00
Stefan Dösinger
b8eb171b6b
wined3d: Explicitly pass the state information to buffer_internal_preload.
2013-09-12 17:48:20 +02:00
Stefan Dösinger
d8c43aabf7
wined3d: Move the decoded stream info into the context.
2013-09-12 17:48:14 +02:00
Henri Verbeet
1b53cbd8de
wined3d: Make primary_render_target_is_p8() work on a swapchain.
2013-09-12 10:59:11 +02:00
Stefan Dösinger
b4d8b52fa7
wined3d: Pass position_transformed and gl_info to find_ps_compile_args.
2013-09-11 17:09:59 +02:00
Stefan Dösinger
dfeee9077c
wined3d: Pass the swizzle map to find_vs_compile_args.
2013-09-11 17:09:56 +02:00
Henri Verbeet
d21c26e4f6
wined3d: Get rid of surface_modify_location().
2013-09-10 11:09:53 +02:00
Henri Verbeet
b62915dabb
wined3d: Replace surface_modify_location(surface, location, FALSE) calls with surface_invalidate_location().
2013-09-10 11:09:51 +02:00
Stefan Dösinger
cd203b38a6
wined3d: Pass the context to the main buffer preload function.
2013-09-09 22:10:01 +02:00
Stefan Dösinger
87f931dc64
wined3d: Only invalidate STATE_INDEXBUFFER for the current context in buffer_get_sysmem().
2013-09-09 22:10:00 +02:00
Stefan Dösinger
1cf192172e
wined3d: Only invalidate STATE_INDEXBUFFER for the current context in buffer_create_buffer_object().
2013-09-09 22:10:00 +02:00
Henri Verbeet
59e2f52ff8
wined3d: Replace the "dirty" field in struct gl_texture with WINED3D_TEXTURE_ flags.
2013-09-09 22:09:58 +02:00
Henri Verbeet
c44012f0c1
wined3d: Get rid of the "dirty" flag to wined3d_texture_set_dirty().
2013-09-09 22:09:57 +02:00
Stefan Dösinger
df5a0976e9
wined3d: Check the format block size before creating textures.
...
Sizes of textures and stand-alone surfaces must be multiples of the
format's block size for DXTN formats. Since we create a texture for
everything (except in ddraw), this check also takes care of stand-alone
surfaces.
2013-09-06 17:25:08 +02:00
Stefan Dösinger
b73464a413
wined3d: Use the ftoa helper function in the ARB shader backend.
...
This is the ARB equivalent to e0494afa00
.
2013-09-05 17:55:48 +02:00
Henri Verbeet
36dcb77f6e
wined3d: Get rid of some leftover references to IWineD3D.
2013-09-03 16:58:16 +02:00
Henri Verbeet
2d23913186
wined3d: Move the MAXLOCKCOUNT constant to surface.c.
2013-09-02 18:02:23 +02:00
Henri Verbeet
f7b84fe755
wined3d: Move the DEFAULT_REFRESH_RATE constant to directx.c.
2013-08-30 11:18:49 +02:00
Henri Verbeet
53f747de1b
wined3d: Move the WINED3D_MAX_FBO_ENTRIES constant to context.c.
2013-08-30 11:18:46 +02:00
Henri Verbeet
35a8bf0e1e
wined3d: Move the buffer flags to buffer.c.
2013-08-30 11:18:43 +02:00
Henri Verbeet
805fc64198
wined3d: Get rid of the unused WINED3D_BUFFER_OPTIMIZED flag.
2013-08-29 19:56:17 +02:00
Henri Verbeet
43ecaf29c3
wined3d: Get rid of the DDRAW_PITCH_ALIGNMENT and D3D8_PITCH_ALIGNMENT constants.
2013-08-29 19:56:17 +02:00
Henri Verbeet
605136ab04
wined3d: Get rid of the SHADER_PGMSIZE constant.
2013-08-29 19:56:17 +02:00
Henri Verbeet
ac54753e7c
wined3d: Get rid of RTL_READDRAW.
...
I don't think we ever want to use glDrawPixels().
2013-08-28 11:17:09 +02:00
Henri Verbeet
00ffc0c24b
wined3d: Get rid of the unused MAX_PALETTES constant.
2013-08-28 11:17:08 +02:00
Henri Verbeet
b85c2a74bb
wined3d: Replace the "stateBlock" wined3d_device field with a wined3d_state structure.
2013-08-27 11:50:53 +02:00
Henri Verbeet
fc5f9d4709
wined3d: Make stateblock_init_default_state() work with a wined3d_state structure instead.
2013-08-27 11:50:53 +02:00
Stefan Dösinger
6bc3cbf1c5
wined3d: Implement sRGB for volumes.
2013-08-26 19:02:16 +02:00
Stefan Dösinger
bd866c0294
wined3d: Implement NOOVERWRITE and DISCARD volume maps.
2013-08-26 19:01:53 +02:00
Stefan Dösinger
8c708486c3
wined3d: Use PBOs for dynamic volumes.
2013-08-26 19:01:39 +02:00
Henri Verbeet
4e755d263f
wined3d: Make stateblock_unbind_resources() work with a wined3d_state structure instead.
2013-08-26 10:50:46 +02:00
Henri Verbeet
f02a5f45d4
wined3d: Replace the "updateStateBlock" wined3d_device field with a "update_state" field.
2013-08-26 10:50:43 +02:00
Stefan Dösinger
aa3a43f769
wined3d: Don't lock the dst volume in device_update_volume.
2013-08-23 19:26:43 +02:00
Stefan Dösinger
5ff1237563
wined3d: Free volume sysmem after upload.
2013-08-23 19:26:38 +02:00
Gediminas Jakutis
6ca8b274bb
wined3d: Recognize Nvidia GeForce GTX 770.
2013-08-23 18:28:47 +02:00
Henri Verbeet
74faebd68d
wined3d: Store the current GLSL program per-context.
2013-08-23 10:41:28 +02:00
Stefan Dösinger
52fb1cc245
wined3d: Implement basic volume location management.
2013-08-22 20:16:01 +02:00
Stefan Dösinger
bcb651ca80
wined3d: Remove WINED3D_RESOURCE_ACCESS_SCRATCH.
2013-08-22 20:15:45 +02:00
Stefan Dösinger
07079d1109
wined3d: Remove locked and dirty boxes from volumes.
2013-08-22 20:15:39 +02:00
Stefan Dösinger
e08e2b2ade
wined3d: Separate volume allocation and loading.
2013-08-22 20:15:27 +02:00
Stefan Dösinger
ac871305f8
wined3d: Store the mipmap level in the volume.
2013-08-22 20:15:18 +02:00
Stefan Dösinger
7e7ee52486
wined3d: Move volume booleans into a flags field.
2013-08-21 19:53:38 +02:00
Stefan Dösinger
4dd4a6913b
wined3d: Add a function for allocating aligned resource memory.
2013-08-21 19:53:20 +02:00
Stefan Dösinger
9d75a517c2
wined3d: Improve volume size calculation.
2013-08-21 19:53:15 +02:00
Henri Verbeet
69e1100c0c
wined3d: Handle NP2 fixup updates in shader_load_constants().
2013-08-21 12:13:56 +02:00
Henri Verbeet
62859daf0b
wined3d: Avoid looking up shaders for shader stages that didn't change.
2013-08-21 12:13:56 +02:00
Henri Verbeet
7e7bd87b2c
wined3d: Store the original display mode in the swapchain.
2013-08-20 11:50:28 +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
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
Matteo Bruni
e2cf98eb76
wined3d: Implement special fog behavior for orthogonal projection matrices.
2013-07-24 11:09:31 -05:00
Stefan Dösinger
22319c7f9e
wined3d: Work around broken FFP fog with ARB shaders.
2013-06-19 20:09:53 +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
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
Francois Gouget
145c417e98
wined3d: Make state_fog_vertexpart() static.
2013-06-06 11:47:02 +02:00
Henri Verbeet
a3f59cf618
wined3d: Allow textures as swapchain surfaces.
2013-06-03 11:30:43 +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
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
273dcbf564
wined3d: Get rid of the unused "streams" field from struct wined3d_vertex_declaration.
2013-05-27 19:28:57 +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
Austin English
c012b1a13c
wined3d: Add NVidia GeForce GT 630.
2013-05-08 12:39:55 +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
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
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
42208d083c
wined3d: Get rid of the unused WINED3DFMT_FLAG_FOURCC flag.
2013-04-17 11:36:19 +02:00
Stefan Dösinger
0680b1758d
wined3d: Store ps 1.4 texture types in ps_compile_args.
2013-04-15 17:45:58 +02:00
Stefan Dösinger
822bcfdf74
wined3d: Remove the unused idx_data parameter from draw_primitive.
2013-04-10 16:16:44 +02:00
Stefan Dösinger
667f4225b5
wined3d: Put local constants into the shader code again.
...
This is essentially a revert of cd7825c893
,
with proper precision.
2013-04-09 16:33:25 +02:00
Frédéric Delanoy
8e9af2869c
wined3d: Add NVIDIA GeForce 410M.
2013-03-27 12:03:49 +01:00
Daniel Jelinski
d8a86da66e
wined3d: Add NVidia GeForce 315M.
2013-03-26 12:07:59 +01:00
Ričardas Barkauskas
cf12f51b15
wined3d: Make shader buffer dynamic.
2013-02-26 11:28:44 +01:00
Ričardas Barkauskas
b5ff0a6983
wined3d: Rename bsize to content_size to reflect usage.
2013-02-26 11:27:39 +01:00
Stefan Dösinger
3221e7fdd0
wined3d: Reserve one vs constant on r200.
2013-02-11 11:24:35 +01:00
Francois Gouget
68b22623b2
wined3d: debug_{d3dbasis, d3ddegree}() are not used anymore so remove them.
2013-01-29 11:48:46 +01:00
Francois Gouget
e7adf7fbf7
wined3d: Make device_stream_info_from_declaration() static.
2013-01-29 11:48:42 +01:00
Henri Verbeet
7c8dab24e6
wined3d: Introduce a format flag for texturing.
2013-01-28 14:05:34 +01:00
Stefan Dösinger
1a3f741643
wined3d: Remove draw_primitive_strided.
2013-01-25 11:30:33 +01:00
Stefan Dösinger
149a85c2e7
d3d: Remove high level patch support.
...
No Windows driver ever exposed this, and no game uses this. The
only application that used this feature is a DirectX 8 SDK sample.
2013-01-25 11:29:41 +01:00
Henri Verbeet
dc21460397
wined3d: Replace "VertexShaderMode" and "PixelShaderMode" with shader model limits.
2013-01-25 11:18:13 +01:00
Henri Verbeet
3f21757702
wined3d: Get rid of select_shader_mode().
2013-01-23 12:48:34 +01:00
Henri Verbeet
9307327ede
wined3d: Properly set WINED3DFMT_FLAG_SRGB_WRITE in init_format_texture_info().
2013-01-22 12:13:46 +01:00
Henri Verbeet
5ce220eb2f
wined3d: Add sRGB writes to the shader backend and fragment pipe caps.
2013-01-22 12:13:42 +01:00
Henri Verbeet
c525cf381d
wined3d: Move "vs_clipping" to the shader caps.
2013-01-21 12:51:22 +01:00
Henri Verbeet
0e0e3b76f5
wined3d: Move "ffp_proj_control" to the fragment caps.
2013-01-21 12:51:21 +01:00
Henri Verbeet
e73aa3e83d
wined3d: Get rid of vs_selected_mode / ps_selected_mode from struct wined3d_device.
...
These are only used by wined3d_shader_create_vs() /
wined3d_shader_create_ps(), but they're redundant there since the "none"
shader backend doesn't support any shader version.
2013-01-18 13:29:04 +01:00
Henri Verbeet
6c7cce55a7
wined3d: Get rid of the "opengl" field in struct wined3d_adapter.
2013-01-17 12:22:05 +01:00
Henri Verbeet
ce912d5149
wined3d: Get rid of the surface_type parameter to wined3d_surface_create().
2013-01-17 12:21:55 +01:00
Henri Verbeet
f3dbbba48e
wined3d: Initialize the various backends in wined3d_adapter_init_nogl() as well.
2013-01-16 12:22:43 +01:00
Henri Verbeet
3e7c800e9c
wined3d: Get rid of the user_stream field from wined3d_state.
...
All remaining uses are equivalent to "device->up_strided". (Which should of
course eventually go away as well.)
2013-01-07 11:12:23 +01:00
Jiang Yike
44d5d3951b
wined3d: Add recognition for NVIDIA GeForce GTX 660 Ti, 660, 650 Ti and 650.
2012-12-19 14:38:59 +01:00
Piotr Caban
b71af96b9c
wined3d: Recognize Nvidia GT610 card.
2012-12-18 12:37:59 +01:00
Caron Jensen
86cb15b235
wined3d: Recognize Nvidia GT520 cards.
2012-12-14 18:58:10 +01:00
Henri Verbeet
78984cf46c
wined3d: Get rid of ENTER_GL / LEAVE_GL.
2012-12-11 12:03:39 +01:00