Stefan Dösinger
6f2f73a456
wined3d: Improve the unsigned emulation of WINED3DFMT_R5G5_SNORM_L6_UNORM.
2015-03-10 21:43:11 +09:00
Stefan Dösinger
ce836bf651
wined3d: Properly up-scale WINED3DFMT_R5G5_SNORM_L6_UNORM.
2015-03-10 21:43:07 +09:00
Stefan Dösinger
52ab9e382e
wined3d: Read WINED3D_TEXTURE_COLOR_KEY and gl_color_key to find format conversions.
...
The idea is to make it clear that wined3d_texture_load is responsible
for checking the color key for changes. Once we can do color keying in
the shader we also have one place where we can disable the surface
conversion.
2015-02-18 22:02:39 +09:00
Henri Verbeet
ca06f960ed
wined3d: Use the same flags for wined3d_texture_set_color_key() and the "color_key_flags" field it sets.
...
This fixes a regression introduced by commit a8ab569415
.
2015-01-19 14:31:51 +01:00
Henri Verbeet
2e5abc156a
wined3d: Implement WINED3DSIH_SAMPLE in the GLSL shader backend.
2015-01-19 14:31:32 +01:00
Henri Verbeet
af9ccb490a
ddraw: Use wined3d_log2i() to calculate the level count in ddraw_surface_create().
2014-12-10 19:32:08 +01:00
Henri Verbeet
f5939399f0
wined3d: Use __builtin_clz() in wined3d_log2i() when available.
2014-12-10 13:40:47 +01:00
Matteo Bruni
ea85db2a3f
wined3d: Add ATI1N texture format support.
2014-11-04 21:15:56 +09:00
Matteo Bruni
dd923c3029
wined3d: Check ARB_TEXTURE_COMPRESSION_RGTC for applying the correct fixup.
2014-10-30 23:08:47 +09:00
Henri Verbeet
77646173a0
wined3d: Move the color key conversion helpers to util.c.
2014-10-08 13:13:37 +02:00
Henri Verbeet
429d72965d
wined3d: Allow sRGB read/write and VTF on WINED3DFMT_R8G8B8A8_UNORM.
2014-09-01 13:12:44 +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
80bca9bc9c
wined3d: Add constant buffer support to the GLSL shader backend.
2014-08-04 14:23:29 +02:00
Henri Verbeet
fa312a32b2
wined3d: Add format information for WINED3DFMT_R8_UNORM.
2014-06-13 10:11:59 +02:00
Stefan Dösinger
3cd83f4d56
wined3d: Use GL_ALPHA8 for WINED3DFMT_P8_UINT surfaces.
2014-05-14 13:30:19 +02:00
Stefan Dösinger
7b049245f5
wined3d: Always provide P8 GL texture information.
2014-05-14 13:30:08 +02:00
Stefan Dösinger
c1cca63e5d
wined3d: Always store the palette index in the alpha component.
2014-05-14 13:29:52 +02:00
Stefan Dösinger
1558391a11
wined3d: Store RGBQUADs in palettes.
2014-05-07 20:21:56 +02:00
Henri Verbeet
81fb749ecf
wined3d: Introduce a separate function to calculate the pitch for a given format and width.
2014-04-23 15:00:14 +02:00
Martin Storsjo
171529106b
wined3d: Add support for NV12 textures.
2014-02-17 20:16:29 +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
2b8e900ac4
wined3d: Give buffers their own location.
2014-01-15 20:03:53 +01:00
Stefan Dösinger
adf0ab2ad8
wined3d: Give the DIB section its own location.
2014-01-14 20:18:24 +01:00
Jonathan Liu
91c5cf33ad
wined3d: Avoid wined3d_ftoa buffer overflow.
2014-01-14 12:31:37 +01:00
Stefan Dösinger
965d00f4b6
wined3d: Give user memory its own location.
2014-01-10 17:59:16 +01:00
Henri Verbeet
4710c4b51a
wined3d: Store color keys in textures instead of in surfaces.
2014-01-09 15:50:39 +01:00
Henri Verbeet
12f16f2127
wined3d: Reimplement wined3d_ftoa().
...
The current implementation is not precise enough when the FPU is in REAL4
mode, which also happens to be the mode d3d9 sets by default. Doing the same
thing with integer math is a huge pain, so just replace the decimal separator
instead.
2013-11-22 11:37:02 +01:00
Henri Verbeet
3ad8989614
wined3d: Introduce a function for safely releasing a DC.
2013-11-04 11:05:43 +01: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
Henri Verbeet
991e47e3c9
wined3d: Allow WINED3DFMT_R8G8B8A8_UNORM render targets.
2013-09-25 11:49:01 +02:00
Henri Verbeet
8eb73cd0e9
wined3d: Add fallback depth format info for when ARB_depth_texture is not available.
...
These use the generic GL_DEPTH_COMPONENT internal format, and can't be used
for texturing.
2013-09-24 12:57:21 +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
112617f00b
wined3d: Move tex_unit_map and friends into the context.
2013-09-16 13:05:58 +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
f5f7a4e457
wined3d: Get rid of GL_EXT_paletted_texture support.
...
No current drivers support this, and it's probably broken. Also note that
since we removed paletted texture support from wined3d, this would only be
used for WINED3DFMT_P8_UINT blits.
2013-08-28 11:17:09 +02:00
Stefan Dösinger
6bc3cbf1c5
wined3d: Implement sRGB for volumes.
2013-08-26 19:02:16 +02:00
Stefan Dösinger
8c708486c3
wined3d: Use PBOs for dynamic volumes.
2013-08-26 19:01:39 +02:00
Stefan Dösinger
52fb1cc245
wined3d: Implement basic volume location management.
2013-08-22 20:16:01 +02:00
Stefan Dösinger
9d75a517c2
wined3d: Improve volume size calculation.
2013-08-21 19:53:15 +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
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
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
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
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
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
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
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
Henri Verbeet
42208d083c
wined3d: Get rid of the unused WINED3DFMT_FLAG_FOURCC flag.
2013-04-17 11:36:19 +02:00
Matteo Bruni
3e564b1e93
wined3d: Use 0 as GL internal format for WINED3DFMT_NULL.
2013-04-11 17:38:18 +02:00
Matteo Bruni
50a91e11c6
wined3d: Update comment on top of format_texture_info[].
2013-04-10 15:46:30 +02:00
Matteo Bruni
0d563a69dd
wined3d: Fix typo, really check whether color fixups are supported.
2013-04-10 15:46:22 +02:00
Matteo Bruni
5e28b0c974
wined3d: Add RESZ support.
2013-02-19 10:39:47 +01:00
Henri Verbeet
c37594d3a9
wined3d: Add WINED3DFMT_INST to the format table.
...
We need the format to exist in apply_format_fixups() in particular.
2013-02-08 19:31:18 +01:00
Francois Gouget
68b22623b2
wined3d: debug_{d3dbasis, d3ddegree}() are not used anymore so remove them.
2013-01-29 11:48:46 +01:00
Matteo Bruni
59171c06ce
wined3d: Rebind texture before checking for its content in check_fbo_compat().
2013-01-29 11:48:26 +01:00
Henri Verbeet
7c8dab24e6
wined3d: Introduce a format flag for texturing.
2013-01-28 14:05:34 +01:00
Henri Verbeet
6c6565dea0
wined3d: Get rid of a superfluous texture copy in check_fbo_compat().
2013-01-25 11:18:19 +01:00
Henri Verbeet
b882a70282
wined3d: Properly set WINED3DFMT_FLAG_VTF in init_format_texture_info().
2013-01-24 14:32:58 +01:00
Henri Verbeet
6527277a58
wined3d: Properly set WINED3DFMT_FLAG_FILTERING in init_format_texture_info().
2013-01-23 12:48:41 +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
78984cf46c
wined3d: Get rid of ENTER_GL / LEAVE_GL.
2012-12-11 12:03:39 +01:00
Henri Verbeet
9081f8afb1
d3d10core: Implement d3d10_device_GSSetShader().
2012-11-14 11:27:40 +01:00
Henri Verbeet
b42e02ce9b
wined3d: Use the correct RGTC constant in format_texture_info.
2012-11-08 15:37:47 +01:00
Alexandre Julliard
cf2b981ce0
wined3d: Make use of the generated wgl.h header.
2012-11-07 18:12:04 +01:00
Matteo Bruni
f89f30e0c0
wined3d: Fix blending test expected results.
2012-08-21 11:45:43 +02:00
Matteo Bruni
a488e57449
wined3d: Improve post-pixelshader blending test.
2012-08-15 12:17:48 +02:00
Matteo Bruni
902049c054
wined3d: Fix pixel format masks.
2012-08-15 12:17:46 +02:00
Matteo Bruni
0a37a86f35
wined3d: Dump postblend color.
2012-08-15 12:15:47 +02:00
Matteo Bruni
152a09ce75
wined3d: Use GL_FRAMEBUFFER_SRGB when possible.
2012-08-15 12:15:42 +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
1a93983bd4
wined3d: Use NAN.
2012-05-30 17:17:59 +02:00
Francois Gouget
fac36c55e9
Assorted typo, spelling, wording and case fixes.
2012-05-15 16:26:43 +02:00
Henri Verbeet
6eb5c891ac
wined3d: Use ARB_texture_rg for WINED3DFMT_R16G16_UNORM textures when available.
2012-03-09 11:32:16 +01:00
Henri Verbeet
6d483c2d9d
wined3d: Don't use floating point for surface height scaling.
...
This is the follow-up to commit a4e5bcff4c
.
2012-03-08 17:57:54 +01:00
Henri Verbeet
a4e5bcff4c
wined3d: Use a format flag instead of a floating point comparison to determine if we need to apply heightscale.
2012-02-13 20:20:08 +01:00
Henri Verbeet
bee9adbd05
wined3d: Get rid of the WINED3DDECLUSAGE typedef.
2012-01-19 11:56:47 +01:00
Henri Verbeet
c35c30fa68
wined3d: Get rid of the WINED3DDECLMETHOD typedef.
2012-01-19 11:56:41 +01:00
Henri Verbeet
e53a277305
wined3d: Get rid of the WINED3DPOOL typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
6a5a098b23
wined3d: Get rid of the WINED3DRESOURCETYPE typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
e70990041b
wined3d: Get rid of the WINED3DTEXTUREFILTERTYPE typedef.
2012-01-13 17:34:31 +01:00
Henri Verbeet
7dac3e0921
wined3d: Get rid of the WINED3DBASISTYPE typedef.
2012-01-12 12:37:24 +01:00
Henri Verbeet
f38e94af7c
wined3d: Get rid of the WINED3DTRANSFORMSTATETYPE typedef.
2012-01-12 12:37:18 +01:00
Henri Verbeet
b6431d9493
wined3d: Get rid of the WINED3DTEXTUREOP typedef.
2012-01-11 17:47:22 +01:00
Henri Verbeet
7f7bc520b6
wined3d: Get rid of the WINED3DTEXTURETRANSFORMFLAGS typedef.
2012-01-10 10:47:30 +01:00
Henri Verbeet
43fcbcb36e
wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef.
2012-01-10 10:47:27 +01:00
Henri Verbeet
08545dc739
wined3d: Get rid of the WINED3DSAMPLERSTATETYPE typedef.
2012-01-09 12:22:12 +01:00
Henri Verbeet
de807eb21c
wined3d: Allow 10-bpc formats as render targets.
2012-01-09 12:21:53 +01:00
Henri Verbeet
fd8597b2bf
wined3d: Get rid of the WINED3DSTENCILOP typedef.
2012-01-03 23:40:50 +01:00
Matteo Bruni
fb38bad0c4
wined3d: Improve projection TEXTURETRANSFORMFLAGS handling in the ARB fragment ffp implementation.
2011-12-28 18:55:18 +01:00