Stefan Dösinger
844c4efb47
wined3d: Give tex_type and its values a better name.
2015-04-03 00:33:28 +09:00
Stefan Dösinger
239e8cad7c
wined3d: Add per-context private data for fragment pipelines.
2015-03-24 20:06:15 +09:00
Henri Verbeet
002713de6d
wined3d: Store shader input signatures as a wined3d_shader_signature structure.
2015-03-23 22:59:08 +09:00
Henri Verbeet
2e5ad1b6e3
wined3d: Store shader output signatures as a wined3d_shader_signature structure.
...
Instead of a fixed array of wined3d_shader_signature_element structures.
Shader model 4 shaders can have different semantics in a single
register, e.g. v1.xy TEXCOORD0 and v1.zw TEXCOORD1, so having a single
wined3d_shader_signature_element structure per register isn't
necessarily sufficient.
2015-03-23 22:59:07 +09:00
Francois Gouget
f505e6fb4a
Assorted spelling fixes.
2015-03-19 21:54:14 +09:00
Stefan Dösinger
406cfefc2f
wined3d: Initialize WINED3DTA_TEMP.
2015-03-11 22:09:42 +09:00
Henri Verbeet
e4cb3b5081
wined3d: Recognize the SM4 or opcode.
2015-02-11 23:05:17 +09:00
Henri Verbeet
3225fea30c
wined3d: Recognize the SM4 ne opcode.
2015-02-11 23:05:13 +09:00
Stefan Dösinger
e178b7ec9a
wined3d: Don't use TXP for rectangle P8 textures.
...
This was probably taken from the YUV shaders, incorrectly and in reverse
logic. It did happen to work though because fragment.texcoord[0].w is 1.0.
2015-02-04 23:15:03 +09:00
Matteo Bruni
993075cdb3
wined3d: Prefer the core glActiveTexture function.
2015-01-09 11:49:33 +01:00
Henri Verbeet
3aa9fe6bef
wined3d: Record the data type of shader resources.
2014-12-03 11:14:25 +01:00
Henri Verbeet
f5cef43738
wined3d: Store resource types instead of sampler types in struct wined3d_shader_reg_maps.
...
The difference doesn't really matter for SM1-3 since resources and samplers
are always tied together, but in SM4 they're separate.
2014-12-03 11:14:21 +01:00
Stefan Dösinger
7b5bf3d4d6
wined3d: Update fragment program constants when switching from arb ffp draws.
2014-11-28 17:05:12 +01:00
Henri Verbeet
8c18ebf66a
wined3d: Recognize the SM4 uge opcode.
2014-11-17 19:30:37 +09:00
Michael Stefaniuc
00c25959d1
wined3d: Remove no-op min() with magic number (PVS_Studio).
2014-10-30 12:00:31 +09:00
Matteo Bruni
e789fadd56
wined3d: Don't replicate shader limits values for each shader.
2014-10-16 21:23:26 +09:00
Henri Verbeet
710694d9ca
wined3d: Track format conversion per-texture.
2014-10-08 13:13:37 +02:00
Henri Verbeet
4f2110b0ce
wined3d: Never pass a surface to wined3d_resource_is_offscreen().
2014-09-19 10:49:27 +02:00
Henri Verbeet
b005ad6f90
wined3d: Use rendertarget views for color output instead of surfaces.
2014-08-21 12:24:42 +02:00
Henri Verbeet
3a160432f8
wined3d: Pass a texture instead of a surface to upload_palette().
2014-08-21 12:24:16 +02:00
Henri Verbeet
ec87407e7c
wined3d: Keep a reference to the frontbuffer texture instead of the surface in the swapchain.
2014-08-20 13:29:52 +02:00
Henri Verbeet
415b803720
wined3d: Use the texture draw binding instead of the surface draw binding.
2014-08-20 13:29:50 +02:00
Henri Verbeet
aa7016054a
wined3d: Move the "swapchain" field from struct wined3d_surface to struct wined3d_texture.
2014-08-20 13:29:47 +02:00
Henri Verbeet
f753ff90be
wined3d: Replace surface_is_offscreen() with wined3d_resource_is_offscreen().
...
Introducing rendertarget views will (eventually) allow rendering to 3D
textures and buffers.
2014-08-19 14:49:39 +02:00
Henri Verbeet
5ef8e97414
wined3d: Move the "draw_binding" field from struct wined3d_surface to struct wined3d_resource.
2014-08-04 14:23:52 +02:00
Henri Verbeet
8b8af4bee0
wined3d: Make wined3d_arbfp_blit_rb_functions static.
2014-07-14 19:26:19 +02:00
Stefan Dösinger
9d49b7a9be
wined3d: Set palettes on the swapchain.
2014-06-30 22:04:53 +02:00
Stefan Dösinger
3909215773
wined3d: Remove d3dfmt_p8_init_palette.
2014-06-11 16:14:38 +02:00
Henri Verbeet
7b8aa8606c
wined3d: Recognize the SM4 ishl opcode.
2014-05-20 09:44:25 +02:00
Henri Verbeet
3555eab8b9
wined3d: Recognize the SM4 dp2 opcode.
2014-05-20 09:44:21 +02:00
Stefan Dösinger
bfb5be0f4b
wined3d: Remove WINED3D_CT_PALETTED_CK.
...
There's no difference between WINED3D_CT_PALETTED_CK and
WINED3D_CT_PALETTED with the palette index in the alpha channel.
2014-05-14 13:29:58 +02:00
Henri Verbeet
0eebe0515f
wined3d: Fix a couple of string declarations.
2014-05-02 13:45:10 +02:00
Stefan Dösinger
f3488d0fea
wined3d: Translate shader model 2.0+ EXPP to EX2.
2014-03-27 18:57:50 +01:00
Stefan Dösinger
9ccaacf60d
wined3d: Translate LOGP to LG2 in the ARB shader backend.
2014-03-27 18:57:46 +01:00
Stefan Dösinger
c2541a5887
wined3d: Handle RCP in shader_hw_scalar_op.
2014-03-27 18:57:40 +01:00
Stefan Dösinger
5114507f19
wined3d: Handle LOG and LOGP in shader_hw_scalar_op.
2014-03-27 18:57:37 +01:00
Stefan Dösinger
f20173e51b
wined3d: Select the component by editing the swizzle.
2014-03-27 18:57:33 +01:00
Henri Verbeet
a05dcd911e
wined3d: Handle shader_arb_free_context_data() during context creation.
2014-03-11 19:39:38 +01:00
Martin Storsjo
1275525789
wined3d: Use an rbtree for storing shaders for texture format conversion/blitting.
2014-02-17 20:16:30 +01:00
Martin Storsjo
171529106b
wined3d: Add support for NV12 textures.
2014-02-17 20:16:29 +01:00
Martin Storsjo
fd21351947
wined3d: Fix the YV12 illustration.
2014-02-12 19:15:30 +01:00
Martin Storsjo
963c26b36f
wined3d: Fix clamping in reading rectangular YV12 textures.
...
The lower bound for chroma components is size.y + 1/2, not
size.y - 1/2.
2014-02-11 19:20:08 +01:00
Stefan Dösinger
b81e560531
wined3d: Migrate surfaces to the new location flags.
2014-01-17 18:10:10 +01:00
Stefan Dösinger
beb64c9998
wined3d: Separate surface locations and flags.
2014-01-17 18:10:08 +01:00
Jonathan Liu
91c5cf33ad
wined3d: Avoid wined3d_ftoa buffer overflow.
2014-01-14 12:31:37 +01:00
Stefan Dösinger
bffd536213
wined3d: GL_NV_vertex_program2_option supports relative offsets > 63.
...
The ARR codepath used if ctx->target_version >= NV2 does not account for
the correction offset, but the indirect addressing reads do, which
ultimately results in incorrect offsets. Since the limitation goes away
as soon as we enable GL_NV_vertex_program_2_option ignoring the offset
is the best thing to do. I don't set shader_data->rel_offset to zero in
the pre-compilation analysis because enablding NV_vertex_program2 is in
theory a decision that is taken later during code generation.
2014-01-09 17:39:55 +01:00
Henri Verbeet
4710c4b51a
wined3d: Store color keys in textures instead of in surfaces.
2014-01-09 15:50:39 +01:00
Frédéric Delanoy
cc6f9c36cd
wined3d: Use BOOL type where appropriate.
2013-12-12 19:21:36 +01:00
Frédéric Delanoy
5ba7f79bad
Assorted spelling fixes.
2013-12-03 19:41:53 +01:00
Henri Verbeet
f6b5dc246a
wined3d: Get rid of the WINED3DSRGB enum.
2013-11-22 11:37:29 +01:00
Henri Verbeet
7427b72250
wined3d: Get rid of surface_internal_preload().
2013-11-22 11:37:24 +01:00
Henri Verbeet
e64b19387b
wined3d: Surfaces always have a container in arbfp_blit_set().
2013-11-20 11:28:20 +01:00
Henri Verbeet
c228ffbaf0
wined3d: Unify shader binding points.
2013-10-10 10:44:53 +02:00
Henri Verbeet
079b6d4c11
wined3d: Unify the shader state IDs.
2013-10-09 11:11:07 +02:00
Henri Verbeet
8644b62726
wined3d: Move lowest_disabled_stage to the context.
2013-10-07 14:44:35 +02:00
Stefan Dösinger
723e518312
wined3d: Don't invert blits from offscreen surfaces.
2013-10-01 17:32:16 +02:00
Marcus Meissner
0c9ce583bc
wined3d: Fixed sizeof() to HeapAlloc (Coverity).
2013-09-30 11:37:46 +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
d8c43aabf7
wined3d: Move the decoded stream info into the context.
2013-09-12 17:48:14 +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
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
Stefan Dösinger
37c4f3a88c
wined3d: Don't clamp texture lookups in the ARB fixed function fragment pipe.
2013-09-05 17:55:11 +02:00
Henri Verbeet
b5e0c5d052
wined3d: Get rid of some leftover comments referring to the GL lock.
2013-09-02 18:02:26 +02:00
Henri Verbeet
74faebd68d
wined3d: Store the current GLSL program per-context.
2013-08-23 10:41:28 +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
Stefan Dösinger
a4f009d847
wined3d: Keep GL_UNPACK_CLIENT_STORAGE_APPLE off by default.
...
This is cleaner than the other way around and avoids side effects in
code that wasn't written with client storage in mind. Contrary to the
original intention, it also means fewer client storage toggle calls.
2013-08-19 18:07:45 +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
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
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
e0494afa00
wined3d: Introduce a helper function for printing floats in GLSL shaders.
2013-06-11 11:33:15 +02:00
Henri Verbeet
a3f59cf618
wined3d: Allow textures as swapchain surfaces.
2013-06-03 11:30:43 +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
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
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
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
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
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
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
547be26d90
wined3d: Use the np2_fixup to find out if a RECT texture is used.
2013-04-15 17:45:54 +02:00
Stefan Dösinger
8c2874ee99
wined3d: Put local constants into the shader code in ARB shaders.
2013-04-09 16:33:31 +02: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
Michael Stefaniuc
b28aff0dd7
wined3d: Use assignment instead of memcpy to copy structs.
2013-01-28 14:00:18 +01:00
Henri Verbeet
dc21460397
wined3d: Replace "VertexShaderMode" and "PixelShaderMode" with shader model limits.
2013-01-25 11:18:13 +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
Andrew Talbot
c61b14cbcc
wined3d: Indentation fix.
2012-12-24 13:30:20 +01:00
Henri Verbeet
78984cf46c
wined3d: Get rid of ENTER_GL / LEAVE_GL.
2012-12-11 12:03:39 +01:00
Stefan Dösinger
e53aa8c9e2
wined3d: Test the correct program for native limits.
2012-12-05 12:47:55 +01:00
Henri Verbeet
10d46bc042
wined3d: Add support for GLSL based fixed function fragment shaders.
2012-11-12 12:15:25 +01:00
Matteo Bruni
a7956c4c4f
wined3d: Pop control frames in disabled if branches (ARB shader backend).
2012-11-09 16:42:56 +01:00
Matteo Bruni
b532284a9e
wined3d: Ensure GL_FRAGMENT_PROGRAM_ARB is enabled when using ARB shaders.
2012-11-09 16:42:53 +01:00
Henri Verbeet
0e856abf6d
wined3d: Enable or disable the fragment pipe in shader_select().
2012-11-05 11:30:33 +01:00
Henri Verbeet
d74cb4571b
wined3d: Simplify shader selection.
2012-11-05 11:30:32 +01:00
Henri Verbeet
5059da9e32
wined3d: Don't depend on device internals in fragment_pipeline.alloc_private().
...
In particular, device->shader_backend and device->shader_priv aren't
initialized yet when the fragment pipe is initialized.
2012-10-29 10:47:03 +01:00
Henri Verbeet
17e33e9b27
wined3d: Make the shader backend responsible for controlling the fixed function fragment pipe.
2012-10-25 11:48:31 +02:00
Henri Verbeet
41c8f1ef8a
wined3d: Remove some dead code from gen_ffp_instr().
2012-10-24 11:24:25 +02:00
Henri Verbeet
672ad06108
wined3d: Get rid of the mostly unused "num_textures_used" field from arbfp_ffp_desc.
2012-10-23 12:11:26 +02:00
Henri Verbeet
6f025deba6
wined3d: Move shader_is_pshader_version() and shader_is_vshader_version() to the ARB program shader backend.
2012-10-23 12:11:18 +02:00
Henri Verbeet
5626e165ff
wined3d: Introduce a structure for shader register indices.
2012-10-15 13:31:07 +02:00
Henri Verbeet
6d948e1a8c
wined3d: Recognize the SM4 dcl_constantBuffer opcode.
2012-10-01 23:08:00 +02:00
Henri Verbeet
fb989f1d1e
wined3d: Implement version checks for geometry shaders.
2012-09-19 13:04:56 +02:00
Henri Verbeet
a67ee02a48
wined3d: Recognize the SM4 dcl_outputTopology opcode.
2012-09-17 12:28:40 +02:00
Henri Verbeet
0fbb98424c
wined3d: Recognize the SM4 dcl_inputPrimitive opcode.
2012-09-17 12:28:36 +02:00
Henri Verbeet
d574d639a4
wined3d: Recognize the SM4 dcl_maxOutputVertexCount opcode.
2012-09-17 12:28:28 +02:00
Henri Verbeet
a7bad0bde5
wined3d: Just handle all instructions in the shader backend.
2012-09-14 15:43:28 +02:00
Matteo Bruni
d37f8ea866
wined3d: Use BOOL instead of char in shader_load_constants().
2012-08-21 11:45:55 +02:00
Matteo Bruni
7cc4f47afe
wined3d: Force ARB shader programs reselection on bool/int constant changes.
...
The ARB shader backend hardcodes some constant-dependent state in the shader
itself (e.g. branch taken/not taken). So, we have to make sure to update the
selected ARB shader when the application modifies non-float constants.
2012-08-21 11:45:47 +02:00
Matteo Bruni
152a09ce75
wined3d: Use GL_FRAMEBUFFER_SRGB when possible.
2012-08-15 12:15:42 +02:00
Michael Stefaniuc
4ddfcc2cf1
wined3d: Avoid TRUE-FALSE conditional expressions.
2012-07-26 12:11:29 +02:00
Henri Verbeet
894d161891
wined3d: Call core GL functions through gl_info.gl_ops as well.
2012-07-25 20:10:08 +02:00
Henri Verbeet
af1ba676c8
wined3d: Pass a gl_info structure to fragment_pipeline.enable_extension().
2012-07-25 20:01:31 +02:00
Alexandre Julliard
d7250e97ed
wined3d: Fetch GL functions from the WGL driver table, including glFinish and glFlush.
2012-07-20 13:21:27 +02:00
Henri Verbeet
86db5b601f
wined3d: Use the proper texture target in arbfp_blit_set().
...
For cube maps, texture->target is GL_TEXTURE_CUBE_MAP and would be used for
calls that apply to the entire texture, like glTexParameter().
surface->texture_target refers to individual faces like
GL_TEXTURE_CUBE_MAP_POSITIVE_X, etc., and would be used for calls like
glTexImage2D(). What makes this a bit ugly is the fact that surfaces don't
always have an associated texture.
2012-07-17 12:50:21 +02:00
Henri Verbeet
c11c2e2dbb
wined3d: Get rid of the d3d_caps debug channel.
2012-06-22 16:14:26 +02:00
Francois Gouget
19ba80e7c2
wined3d: We must include Wine's port.h before using NAN.
2012-06-01 17:41:52 +02:00
Francois Gouget
fac36c55e9
Assorted typo, spelling, wording and case fixes.
2012-05-15 16:26:43 +02:00
Matteo Bruni
7e3c7840e3
wined3d: Support WINED3D_TTFF_COUNT3 texture projection in the ARB backend.
2012-03-28 15:09:18 +02:00
Matteo Bruni
4ed605f081
wined3d: Clamp fog coordinate in the ARB backend too.
2012-03-09 17:26:01 +01:00
Henri Verbeet
bee9adbd05
wined3d: Get rid of the WINED3DDECLUSAGE typedef.
2012-01-19 11:56:47 +01:00
Henri Verbeet
e53a277305
wined3d: Get rid of the WINED3DPOOL typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
b6431d9493
wined3d: Get rid of the WINED3DTEXTUREOP typedef.
2012-01-11 17:47:22 +01:00
Henri Verbeet
43fcbcb36e
wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef.
2012-01-10 10:47:27 +01:00
Henri Verbeet
6623a8cfa9
wined3d: Get rid of the WINED3DFOGMODE typedef.
2011-12-22 10:08:52 +01:00
Henri Verbeet
3082c1a9de
wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef.
2011-12-20 10:11:47 +01:00
Matteo Bruni
fdd4df446f
wined3d: Fix some flag checks.
2011-12-13 14:00:24 +01:00
Henri Verbeet
107369d018
wined3d: Disable client storage in upload_palette().
...
Stack pointers don't work so well with client storage.
2011-12-06 15:50:58 +01:00
Francois Gouget
51a256e65f
Assorted spelling fixes and wording tweaks.
2011-11-28 16:40:50 +01:00
Henri Verbeet
24775459c8
wined3d: Don't apply fixups to converted surfaces.
2011-11-25 16:21:56 +01:00
Henri Verbeet
14cf780fde
wined3d: Recognize the SM4 xor opcode.
2011-11-22 10:52:33 +01:00
Henri Verbeet
d695dd3af4
wined3d: Recognize the SM4 ushr opcode.
2011-11-22 10:52:29 +01:00
Henri Verbeet
9afff037e5
wined3d: Recognize the SM4 udiv opcode.
2011-11-22 10:52:25 +01:00
Henri Verbeet
e2d099a14d
wined3d: Recognize the SM4 round_ni opcode.
2011-11-21 11:00:50 +01:00
Henri Verbeet
829e28cb4d
wined3d: Recognize the SM4 ge opcode.
2011-11-21 11:00:46 +01:00
Henri Verbeet
af11214562
wined3d: Recognize the SM4 eq opcode.
2011-11-21 11:00:42 +01:00
Henri Verbeet
7459180a51
wined3d: Get rid of the WINED3DCOLORVALUE typedef.
2011-11-16 09:41:50 +01:00
Henri Verbeet
563edce2fa
wined3d: Get rid of the WINED3DSHADER_PARAM_SRCMOD_TYPE typedef.
2011-11-15 16:09:09 +01:00
Henri Verbeet
adf7c33023
wined3d: Get rid of the COMPARISON_TYPE typedef.
2011-11-09 11:34:32 +01:00
Henri Verbeet
a64271c07e
wined3d: Make the surface parameter to blit_shader.set_shader() const.
2011-11-07 11:32:47 +01:00
Henri Verbeet
12268879a2
wined3d: Make the surface parameter to upload_palette() const.
2011-11-07 11:32:42 +01:00
Andrew Talbot
a89584415b
wined3d: Remove unneeded address-of operators from array names.
2011-11-04 14:44:56 +01:00
Henri Verbeet
55d8063e67
wined3d: Make the shader parameter to shader_arb_generate_pshader() const.
2011-11-04 10:44:54 +01:00
Henri Verbeet
e3a105a626
wined3d: Make the shader parameter to shader_arb_generate_vshader() const.
2011-11-04 10:44:49 +01:00
Henri Verbeet
3a9001fbb6
wined3d: Make the shader parameter to init_output_registers() const.
2011-11-04 10:44:42 +01:00
Henri Verbeet
e718306255
wined3d: Make some parameters to shader_generate_arb_declarations() const.
2011-11-04 10:44:37 +01:00
Henri Verbeet
3bfecd58d2
wined3d: Avoid a drawable -> texture transfer through sysmem in arbfp_blit_surface() with backbuffer ORM.
2011-11-04 10:44:14 +01:00
Henri Verbeet
78bd84cc12
wined3d: Make the shader parameter to shader_arb_load_constantsF() const.
2011-11-02 12:27:59 +01:00
Henri Verbeet
b49e08aa8d
wined3d: Get rid of the local_constant typedef.
2011-10-31 23:52:59 +01:00
Matteo Bruni
7254f5e661
wined3d: Return only the shader major version.
2011-10-26 12:41:34 +02:00
Henri Verbeet
7aac0159a9
wined3d: Move the ARB shader program constant handling to the backend where it belongs.
2011-10-26 12:41:33 +02:00
Stefan Dösinger
eb79a26493
wined3d: Only the ARBfp fragement pipeline reads emulated clip coords.
2011-09-15 15:41:41 +02:00
Matteo Bruni
0386b44bad
wined3d: Keep track of the current texture type for each texture unit.
2011-08-29 12:08:19 +02:00
Matteo Bruni
f47f9f7c74
wined3d: Store currently active texture in the wined3d context.
2011-08-25 11:31:55 +02:00
Matteo Bruni
e53ae83d74
wined3d: Pass around the context instead of gl_info.
2011-08-25 11:31:55 +02:00
Henri Verbeet
317d76abb4
wined3d: Use draw_binding in arbfp_blit_surface().
2011-08-24 11:58:14 +02:00
Henri Verbeet
c592d553f0
wined3d: Reject color blits on sysmem surfaces in arbfp_blit_supported().
2011-08-23 16:53:51 +02:00
Henri Verbeet
e74d1358ac
wined3d: Remove the unused blit_op parameter to arbfp_blit_surface().
2011-08-04 09:04:20 +02:00
Frédéric Delanoy
7e309601f3
dlls: Assorted spelling fixes.
2011-08-03 14:15:50 +02:00
Henri Verbeet
b09b7e323c
wined3d: Store a pointer to the state table in the context.
2011-07-25 11:59:15 +02:00
Henri Verbeet
e4d2d78500
wined3d: Pass a wined3d_state pointer to state handlers.
...
Instead of an entire stateblock. This is mainly useful is we ever want to call
state handlers on state not stored in a stateblock.
2011-07-14 14:11:25 +02:00
Henri Verbeet
fcf4303e1a
wined3d: Store a pointer to the framebuffer state in struct wined3d_state.
2011-07-14 14:11:07 +02:00
Henri Verbeet
d1b650e959
wined3d: Explicitly pass gl_info to gen_arbfp_ffp_shader().
2011-07-12 11:34:58 +02:00
Henri Verbeet
1f6f94675e
wined3d: Only use state contained in the ffp_frag_settings structure in gen_arbfp_ffp_shader().
...
Note that the actual check looks off by one too.
2011-07-12 11:34:55 +02:00
Henri Verbeet
0df3db37ac
wined3d: Explicitly pass device and state to gen_ffp_frag_op().
2011-07-06 11:14:29 +02:00
André Hentschel
a7c1b5f02e
wined3d: Remove dead code (clang).
2011-07-04 19:06:51 +02:00
Stefan Dösinger
1bc01f8f87
wined3d: Get rid of the has_signature_idx field in the ARB ps private data.
2011-06-24 11:58:11 -05:00
Stefan Dösinger
3a3b482864
wined3d: Fix a typo in compare_sig in the arb backend.
2011-06-24 11:58:04 -05:00
Henri Verbeet
5a26da1d19
wined3d: Make the wined3d_shader_context shader pointer const.
2011-06-23 09:47:34 +02:00
Stefan Dösinger
dda91ac02a
wined3d: Call frag_pipe->enable_extension under the GL lock.
2011-05-26 16:41:14 +02:00
Stefan Dösinger
dbd8786394
wined3d: CMP supports _SAT.
...
This is a partial revert of c9ef1ed28c
. I don't know where I got the
idea that CMP does not support _SAT, but I suspect that my driver at the time was broken.
2011-05-25 12:23:10 +02:00
Henri Verbeet
019f6a8534
wined3d: Mask out writes to unused render targets.
...
Outputs not written by the pixel shader are undefined in GL, but in D3D the
render target is unmodified.
2011-05-25 11:49:23 +02:00
Henri Verbeet
aba42d1fa5
wined3d: Introduce a separate structure for framebuffer state.
2011-05-19 10:07:57 +02:00
Henri Verbeet
0e0e5c3e38
wined3d: Get rid of the IWineD3DDevice typedefs.
2011-05-17 10:06:23 +02:00
Stefan Dösinger
e4038ebab9
wined3d: Fix a copypaste typo.
2011-05-16 16:35:30 +02:00
Stefan Dösinger
c2aab4258a
wined3d: Separate two unrelated variables.
2011-05-13 17:05:27 +02:00
Stefan Dösinger
560c63d64e
wined3d: Pass the render target height as UINT.
2011-05-13 17:05:27 +02:00
Matteo Bruni
4f96f4f467
wined3d: Fix pow handling with special values in ARB backend.
2011-05-05 17:26:12 +02:00
Henri Verbeet
86b0c6bd7b
wined3d: Rename "shader_backend_t" to "wined3d_shader_backend_ops".
...
This makes it more consistent with the other call table names in wined3d.
2011-05-05 11:45:22 +02:00
Henri Verbeet
c4b73c4550
wined3d: Get rid of the IWineD3DSurface typedefs.
2011-04-29 16:52:13 +02:00
Matteo Bruni
9da924039f
wined3d: Split pow instruction handling in the ARB backend.
2011-04-28 12:12:18 +02:00
Matteo Bruni
db8d681a5b
wined3d: Remove rcp special handling of 0 from the ARB shader backend.
2011-04-28 12:11:55 +02:00
Matteo Bruni
0210a8384a
wined3d: Add missing temporary variable declaration to ARB shader backend.
2011-04-28 12:11:53 +02:00
Henri Verbeet
a05841bd1a
wined3d: Rename "pCaps" to "caps".
2011-04-27 11:50:29 +02:00
Henri Verbeet
66875c6dc7
wined3d: Don't flush just because a swapchain has multiple contexts.
...
If you really have e.g. multiple draws to the same drawable, this is not
enough, and you should use the StrictDrawOrdering registry setting. In the
other cases it just slows things down unnecessarily.
2011-04-15 10:07:58 +02:00
Henri Verbeet
d30da7ae39
wined3d: Get rid of the IWineD3DSwapChain typedefs.
2011-04-14 17:13:57 +02:00
Henri Verbeet
519a3a9162
wined3d: Add depth fills to the blitter interface.
2011-04-06 12:05:07 +02:00
Henri Verbeet
90da00927e
wined3d: Make "blit_operation" naming a bit more consistent.
2011-04-06 12:05:06 +02:00
Henri Verbeet
6aa02f11ea
wined3d: Fix ARB_0001 with pixel shaders in arb_get_helper_value().
2011-04-04 11:53:45 +02:00
Henri Verbeet
8fe80e18b2
wined3d: Get rid of the IWineD3DBaseShader typedefs.
2011-03-31 12:37:47 +02:00
Henri Verbeet
f8f83ff2f7
wined3d: Remove COM from the shader implementation.
2011-03-31 12:37:46 +02:00
Henri Verbeet
5555d904be
wined3d: Get rid of IWineD3DBaseShaderClass.
2011-03-31 12:37:46 +02:00
Henri Verbeet
99bed5d41d
wined3d: Get rid of IWineD3DPixelShaderImpl.
2011-03-30 12:18:20 +02:00
Henri Verbeet
dab01d435e
wined3d: Get rid of IWineD3DVertexShaderImpl.
2011-03-30 12:18:09 +02:00
Henri Verbeet
c5bf96c951
wined3d: Get rid of IWineD3DBaseTextureClass.
2011-03-29 12:34:40 +02:00
Maarten Lankhorst
d19f840361
wined3d: Fix a clipping issue with D3DSPSM_SIGNNEG.
2011-03-28 18:42:37 +02:00
Roderick Colenbrander
b2132202c7
wined3d: Check for ARB_fragment_program in arbfp_blit_supported.
2011-03-28 18:35:28 +02:00
Marcus Meissner
14d246665b
wined3d: Mark up fallthrough breaks (Coverity).
2011-03-28 17:11:06 +02:00
Henri Verbeet
eb5bfad18d
wined3d: Get rid of the IWineD3DBaseTexture typedefs.
2011-03-28 17:08:52 +02:00
Henri Verbeet
ac9c592ca9
wined3d: Store all the resource desc information in struct wined3d_resource.
2011-03-09 12:29:17 +01:00
Matteo Bruni
75386a99b4
wined3d: Make clip planes independent from offscreen/onscreen drawing.
2011-02-15 17:24:26 +01:00
Henri Verbeet
96d225d4dd
wined3d: Get rid of the IWineD3DStateBlockImpl typedef.
2011-01-31 12:25:05 +01:00
Henri Verbeet
7bc7caf423
wined3d: Pass an IWineD3DBaseTextureImpl array to pixelshader_update_samplers().
2010-12-16 11:50:09 +01:00
Henri Verbeet
bd2e7aedcf
wined3d: Store an IWineD3DBaseShaderImpl pointer in wined3d_shader_context.
2010-12-15 11:55:22 +01:00
Henri Verbeet
2f36d600ef
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_generate_main().
2010-12-15 11:55:19 +01:00
Henri Verbeet
fe2ffe1e6a
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_destroy().
2010-12-13 16:24:23 +01:00
Henri Verbeet
8ea7d1ef71
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_generate_arb_declarations().
2010-12-13 16:24:15 +01:00
Henri Verbeet
0e3c60786e
wined3d: Explicitly pass gl_info to unset_shader().
2010-12-10 13:02:26 +01:00
Henri Verbeet
ae7a20af2f
wined3d: Explicitly pass blit_priv and gl_info to set_shader().
2010-12-10 13:02:24 +01:00
Henri Verbeet
0caed0a771
wined3d: Explicitly pass blit_priv and gl_info to gen_p8_shader().
2010-12-10 13:02:22 +01:00
Henri Verbeet
fa75517155
wined3d: Explicitly pass blit_priv and gl_info to gen_yuv_shader().
2010-12-10 13:02:19 +01:00
Henri Verbeet
7f09eb6a7a
wined3d: Pass an IWineD3DDeviceImpl pointer to free_private().
2010-12-09 12:14:31 +01:00
Henri Verbeet
4ba3b64c57
wined3d: Pass an IWineD3DDeviceImpl pointer to alloc_private().
2010-12-09 12:14:25 +01:00
Henri Verbeet
b5637a934e
wined3d: Store an IWineD3DDeviceImpl pointer in IWineD3DBaseShaderClass.
2010-12-08 11:27:49 +01:00
Henri Verbeet
cd30e9562c
wined3d: Explicitly pass gl_info to shader_arb_generate_pshader().
2010-12-07 11:33:27 +01:00
Henri Verbeet
202a60c489
wined3d: Explicitly pass gl_info to shader_arb_generate_vshader().
2010-12-07 11:33:25 +01:00
Henri Verbeet
db164a990c
wined3d: Rename shader_reg_maps to wined3d_shader_reg_maps.
...
For consistency with other shader translation structures.
2010-12-07 11:33:23 +01:00
Henri Verbeet
78652a5fe8
wined3d: Explicitly pass shader_data, reg_maps and gl_info to vshader_add_footer().
2010-12-06 12:21:35 +01:00
Henri Verbeet
e9ff40d918
wined3d: Use local reg_maps variables where possible.
2010-12-06 12:21:31 +01:00
Henri Verbeet
0405733ff7
wined3d: Explicitly pass shader_data and reg_maps to reserved_vs_const().
2010-12-06 12:21:27 +01:00
Henri Verbeet
a564101630
wined3d: Explicitly pass shader_data and reg_maps to need_helper_const().
2010-12-06 12:21:24 +01:00
Henri Verbeet
8c1e326e3c
wined3d: Explicitly pass shader_data and reg_maps to need_rel_addr_const().
2010-12-03 11:04:36 +01:00
Henri Verbeet
e43cd744b6
wined3d: need_rel_addr_const() is only ever called for vertex shaders.
2010-12-03 11:04:32 +01:00
Henri Verbeet
fe47ba8fa2
wined3d: Move the rel_offset vertex shader field to the ARB shader backend.
2010-12-03 11:04:28 +01:00
Henri Verbeet
a4477fea4a
wined3d: Pass an IWineD3DDeviceImpl pointer to free_private().
2010-12-02 11:54:15 +01:00
Henri Verbeet
6b9118e462
wined3d: Pass an IWineD3DDeviceImpl pointer to alloc_private().
2010-12-02 11:54:10 +01:00
Henri Verbeet
00550613e7
wined3d: Remove a redundant parameter to enable_extension().
2010-12-02 11:54:03 +01:00
Henri Verbeet
f92a0667d7
wined3d: Remove a unused parameter to shader_dirtifyable_constants().
2010-12-02 11:53:57 +01:00
Henri Verbeet
f45aeb4abe
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_free_private().
2010-12-01 11:09:08 +01:00
Henri Verbeet
4a69874938
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_alloc_private().
2010-12-01 11:09:02 +01:00
Henri Verbeet
77923346da
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_pixel_constants().
2010-12-01 11:08:57 +01:00
Henri Verbeet
4a6d0da207
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_vertex_constants().
2010-12-01 11:08:51 +01:00
Henri Verbeet
7363b0e98a
wined3d: Explicitly pass data and gl_info to shader_deselect_depth_blt().
2010-11-30 10:57:23 +01:00