Matteo Bruni
425dc69fef
wined3d: Use a separate STATE_TRANSFORM(WINED3D_TS_VIEW) state handler in the GLSL pipeline.
2015-03-19 20:56:56 +09:00
Matteo Bruni
99f3e835ac
wined3d: Use a separate STATE_VDECL state handler in the GLSL pipeline.
...
It's mostly a copy of vertexdeclaration() from state.c, with a few
differences due to the new function being private to the GLSL backend
(e.g. d3d_info.vs_clipping is known to be TRUE) and the fragment fog
update part being split out.
2015-03-19 20:56:50 +09:00
Matteo Bruni
50861156e2
wined3d: Introduce a get_modelview_matrix() function.
2015-03-19 20:56:45 +09:00
Matteo Bruni
fe4a226bfa
wined3d: Introduce a get_identity_matrix() function.
2015-03-19 20:56:42 +09:00
Stefan Dösinger
df829de88d
ddraw: Handle DDBLT_ROP in ddraw.
2015-03-18 21:03:22 +09:00
Matteo Bruni
38e4cb29e7
wined3d: Depend on the vertex shader state instead of the vertex declaration state where appropriate.
2015-03-18 21:02:55 +09:00
Matteo Bruni
d8c5e417c2
wined3d: Force stream info update on vertex shader change.
2015-03-18 21:02:41 +09:00
Stefan Dösinger
406cfefc2f
wined3d: Initialize WINED3DTA_TEMP.
2015-03-11 22:09:42 +09:00
Matteo Bruni
f298d30b39
wined3d: Fix a typo in a trace in context_create().
2015-03-11 22:08:34 +09:00
Stefan Dösinger
d4db09d0e9
wined3d: Support WINED3DFMT_R5G5_SNORM_L6_UNORM with EXT_texture_snorm.
...
From: Stefan Dösinger <stefandoesinger@gmx.at>
2015-03-10 21:43:34 +09:00
Stefan Dösinger
6df52ca7e6
wined3d: Add support for GL_EXT_texture_snorm.
2015-03-10 21:43:32 +09:00
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
Bernhard Übelacker
44ddcac6c3
wined3d: Recognize Nvidia GeForce 8100 with Nouveau driver (bug).
2015-03-10 21:42:50 +09:00
Matteo Bruni
db80aba5ad
wined3d: Drop redundant check for instanced rendering from drawStridedFast.
...
We need GL_ARB_instanced_arrays to be able to take the fastest path and
that's already checked in draw_primitive. Note that
GL_ARB_instanced_arrays provides glDrawElementsInstanced if
GL_ARB_draw_instanced is not supported so we don't need to explicitly
check for the latter.
2015-03-02 13:48:00 +09:00
Matteo Bruni
8ed9c2a11b
wined3d: Add a couple checkGLcall() in surface_prepare_rb().
2015-03-02 13:47:56 +09:00
Matteo Bruni
2f804307bd
wined3d: Drop a few unnecessary &x[0].
2015-03-02 13:47:52 +09:00
Matteo Bruni
7f618695c6
wined3d: Remove an obsolete comment.
...
Wined3d doesn't actually require the GLX extension for multisampling
at this point (while it does require FBOs).
2015-03-02 13:47:46 +09:00
Matteo Bruni
67d2b52c27
wined3d: Remove ARB_/EXT_TEXTURE_ENV_ADD.
2015-02-26 20:08:57 +09:00
Matteo Bruni
aca8ab91eb
wined3d: Use the core version of the INCR_WRAP and DECR_WRAP tokens.
2015-02-25 20:35:28 +09:00
Matteo Bruni
78ae4f66d7
wined3d: Set GL_UNPACK_ALIGNMENT to 1.
...
Alignment should be taken care by the surface pitch and
GL_UNPACK_ROW_LENGTH alone just fine, as long as the pitch is a
multiple of the pixel size. Client APIs respect that,
internally we need to do the same and the changes to
surface_load_texture and wined3d_volume_upload_data are there
for this reason (e.g. WINED3DFMT_R16G16_SNORM is emulated with
GL_RGB16 when NV_texture_shader isn't supported).
2015-02-20 22:53:09 +09:00
Matteo Bruni
7c4d512fee
wined3d: Make sure the correct texture is bound in device_update_volume.
2015-02-19 17:52:03 +09:00
Matteo Bruni
b47695bf3a
wined3d: Reject unsupported pitches in wined3d_surface_update_desc().
2015-02-19 17:51:47 +09:00
Matteo Bruni
d56c168da1
wined3d: Set the surface pitch for user-memory surfaces.
2015-02-19 17:51:36 +09:00
Henri Verbeet
3fa8f4ece3
wined3d: Apply modifiers after floatBitsToInt()/floatBitsToUint() in shader_glsl_add_src_param().
2015-02-18 23:21:49 +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
Stefan Dösinger
e53d22b0c0
wined3d: Manage color key changes in the texture.
...
This fixes a regression with color keyed mipmaps that was introduced by
ee8a5b7dd1
. surface_load for level n+1
would call texture_force_reload, thus removing level n from the GL
texture.
2015-02-18 22:02:33 +09:00
Henri Verbeet
849149d5d3
wined3d: Add support for appending vertex declaration elements.
2015-02-13 18:53:17 +09:00
Stefan Dösinger
9b3ab8a6f4
wined3d: Set z = 0.0 via the projection matrix instead of depth clamping.
...
This works on cards that don't implement ARB_depth_clamp like r500
cards. Note that texturing is influenced by position.w, not position.z.
2015-02-12 22:20:05 +09:00
Henri Verbeet
471e626052
wined3d: Fix the .spec.
2015-02-12 22:12:11 +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
Henri Verbeet
8506da62e0
wined3d: Implement WINED3DSIH_SQRT in the GLSL shader backend.
2015-02-11 23:05:08 +09:00
Henri Verbeet
1dfea3a4ba
wined3d: Do not validate format restrictions for buffers.
...
Buffers don't have a format as such, and are created with either
WINED3DFMT_UNKNOWN or WINED3DFMT_VERTEXDATA.
2015-02-11 23:05:04 +09:00
Henri Verbeet
5045ca639d
wined3d: Add some warnings when resource_init() fails due to format restrictions.
2015-02-11 23:04:59 +09:00
Matteo Bruni
ac3df5e1f1
wined3d: Use the proper pitch in read_from_framebuffer().
...
This function is only used in the non-default "backbuffer" ORM.
2015-02-11 22:21:36 +09:00
Matteo Bruni
20e61b396e
wined3d: Use unsigned short for the bitfields in struct color_fixup_desc.
2015-02-11 22:21:28 +09:00
Matteo Bruni
b875a4a44a
wined3d: Use GL_CLAMP_TO_EDGE instead of GL_CLAMP.
...
GL_CLAMP was removed from core profile and probably GL_CLAMP_TO_EDGE was
intended to be used here anyway.
2015-02-10 16:21:55 +09:00
Matteo Bruni
f4da723151
wined3d: Call glReadBuffer() through the appropriate function pointer.
2015-02-10 16:21:41 +09:00
Matteo Bruni
1612dc4dc9
wined3d: Refuse pixel shaders declaring POSITION0 inputs.
2015-02-09 22:05:43 +09:00
Matteo Bruni
74b4516bfa
wined3d: Only consider POSITION0 PS inputs as vpos.
2015-02-09 22:05:41 +09:00
Matteo Bruni
96b48191c0
wined3d: Only copy POSITION0 output semantics into gl_Position.
2015-02-09 22:05:35 +09:00
Matteo Bruni
1aa5015467
wined3d: Directly use the core version of glTex[Sub]Image3D.
2015-02-09 22:05:32 +09:00
Stefan Dösinger
da5041eb4b
wined3d: Check the d3d buffer to find converted attributes.
...
This fixes some tests with ARB shaders that were broken since
1360af6adc
. When buffer_internal_preload
is called by context_update_stream_info, si->elements[i].data is not yet
set.
2015-02-06 22:20:26 +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
Stefan Dösinger
3d49060fdf
wined3d: Fix the color keyed P8 alpha ref value.
2015-02-04 23:14:59 +09:00
Matteo Bruni
9defaa53a1
wined3d: Use the core version of the asynchronous queries functions.
2015-02-02 22:39:05 +09:00
Stefan Dösinger
3ef1d6bcd9
wined3d: Pass WM_SYSCOMMAND(SC_RESTORE) to DefWindowProc.
2015-01-28 11:06:48 +01:00
Andrew Eikum
7b45103c4a
wined3d: Fix spec file entry for wined3d_texture_create.
2015-01-23 17:28:40 +01:00
Matteo Bruni
d360a51f3c
wined3d: Use the core version of the shader object functions.
2015-01-23 12:02:37 +01:00