Henri Verbeet
a215d326a5
wined3d: Get rid of the "swapchain" parameter to surface_get_gl_buffer().
...
Casting the container to "IWineD3DSwapChainImpl *" is always safe when
SFLAG_SWAPCHAIN is set on the surface. Most callers don't have a real
need for the swapchain, and end up calling GetContainer() just to pass
it to surface_get_gl_buffer().
2009-12-16 12:22:18 +01:00
Henri Verbeet
c24e48d937
wined3d: Filter window messages generated by switching to fullscreen and back.
2009-12-15 11:43:56 +01:00
Henri Verbeet
0e270bbd22
wined3d: Send window messages through the swapchain before sending them to the application.
2009-12-15 11:43:41 +01:00
Henri Verbeet
cb076db8cc
wined3d: Move IWineD3DDeviceImpl_RestoreWindow() to swapchain.c.
2009-12-11 12:16:25 +01:00
Henri Verbeet
542590cfc9
wined3d: Move IWineD3DDeviceImpl_SetupFullscreenWindow() to swapchain.c.
2009-12-11 12:16:25 +01:00
Henri Verbeet
a9f2613d13
wined3d: Add a separate function for swapchain initialization.
2009-12-11 12:16:25 +01:00
Henri Verbeet
840b5af77e
wined3d: Properly invalidate the context's draw buffer in color_fill_fbo().
2009-12-11 12:16:25 +01:00
Henri Verbeet
b85a070598
wined3d: Support more formats for display mode enumeration.
...
ddraw/d3d8/d3d9 only support a limited number of formats, but those already
limit the supported formats themselves.
2009-12-10 11:54:55 +01:00
Henri Verbeet
b3defd4c80
wined3d: Rename "wineD3DDevice" to "device".
2009-12-10 11:54:47 +01:00
Henri Verbeet
b6ef17f23d
wined3d: Remove unused GetDevice() implementations.
2009-12-09 13:51:04 +01:00
Henri Verbeet
54f3dec8e6
wined3d: Rename the "wineD3D" device field to "wined3d".
2009-12-08 12:33:29 +01:00
Henri Verbeet
a02f93defb
wined3d: Remove the redundant "adapterNo" field from the device.
2009-12-08 12:33:23 +01:00
Henri Verbeet
aed85222b5
wined3d: Rename the wined3d_adapter "num" field to "ordinal".
...
This makes it consistent with dxgi_adapter.
2009-12-08 12:33:17 +01:00
Stefan Dösinger
817714912b
wined3d: Infrastructure to render swapchains to a FBO.
2009-12-07 14:33:24 +01:00
Stefan Dösinger
64291c60cb
wined3d: A function for checking if a surface is offscreen.
2009-12-07 14:32:54 +01:00
Stefan Dösinger
54f0d3f785
wined3d: Add a function for initializing surface sysmem.
2009-12-07 14:32:29 +01:00
Henri Verbeet
dd5fc79f56
wined3d: The stateblock doesn't really need a parent.
2009-12-04 14:34:59 +01:00
Henri Verbeet
ed73f0a1b0
d3d9: Implement IDirect3D9Ex::GetAdapterLUID().
2009-12-02 13:06:08 +01:00
Henri Verbeet
55f3c576d9
wined3d: Remove the effetively unused "state" field from the device.
2009-11-18 11:16:54 +01:00
Henri Verbeet
135e6cea7b
wined3d: Add a separate function for device initialization.
2009-11-18 11:16:49 +01:00
Henri Verbeet
e4d8a3f309
wined3d: Move the various backend selection utility functions to utils.c.
2009-11-18 11:16:43 +01:00
Stefan Dösinger
0e77a381ea
wined3d: Create clip coords only if they are used.
...
If GL vertex shader clipping is supported (GLSL or NVvp), we currently
always calculate clipping results in the shader. They're gracefully
discarded by opengl, but we need 6 constants / uniforms to calculate
unused values.
2009-11-12 15:18:00 +01:00
Henri Verbeet
be8026adf6
wined3d: directly pass gl_info to stream_info_element_from_strided().
2009-10-29 13:09:37 +01:00
Henri Verbeet
111307dfba
wined3d: Get rid of the GL_SUPPORT macro.
2009-10-29 13:09:33 +01:00
Henri Verbeet
e6ca176a48
wined3d: Rename DestroyContext() to context_destroy().
2009-10-28 11:16:05 +01:00
Henri Verbeet
c0050b8ec9
wined3d: Restore the thread's GL context on context_release() if it wasn't created by wined3d.
...
The background on this is that some applications use OpenGL and DirectDraw/Direct3D on
the same thread, typically using OpenGL for rendering and DirectDraw to get
the amount of available video memory. This means that we might replace the
application's current GL context with one with a completely different state,
but also that our current GL context might not be what we think it is.
2009-10-28 11:15:59 +01:00
Henri Verbeet
98027cb535
wined3d: Call context_release() for wined3d contexts made current by context_create().
2009-10-28 11:15:27 +01:00
Henri Verbeet
eeb54b9922
wined3d: Keep better track of where we're using wined3d contexts.
...
The idea here is that we can restore the thread's current GL context on
context_release() if it doesn't correspond to the current wined3d context on
context_acquire().
2009-10-28 11:15:19 +01:00
Henri Verbeet
2447c8bc3e
wined3d: Store PCI IDs in wined3d_driver_info instead of wined3d_gl_info.
2009-10-27 10:54:50 +01:00
Henri Verbeet
5fbe5ee027
wined3d: Add a separate structure for driver info.
2009-10-26 11:20:33 +01:00
Henri Verbeet
342a71b281
wined3d: Replace the "stateLookup" tables with a single "wrap_lookup" table.
2009-10-23 12:03:15 +02:00
Henri Verbeet
6be41fd59a
wined3d: Get rid of GL_LIMITS.
2009-10-22 10:46:05 +02:00
Henri Verbeet
f2aaca2f67
wined3d: Rename WineD3DAdapter to wined3d_adapter.
2009-10-21 16:05:57 +02:00
Henri Verbeet
94d33d3e86
wined3d: Destroy FBO entries from the context that created them.
...
EXT_framebuffer_object doesn't specify if FBOs are shareable between GL
contexts, but ARB_framebuffer_object explicitly prohibits it.
2009-10-20 14:00:37 +02:00
Henri Verbeet
43aaaa8a4b
wined3d: Validate the D3D context in FindContext().
...
Apparently it's valid to use a D3D device after its window is destroyed.
OpenGL isn't always so forgiving, so this patch is a first step to avoid
making GL calls on a context without window.
2009-10-20 14:00:36 +02:00
Henri Verbeet
0cb6f28751
wined3d: Get rid of the useless "isPBuffer" bitfield in struct wined3d_context.
2009-10-20 14:00:36 +02:00
Henri Verbeet
bac6486520
wined3d: Merge some bitfields in struct SAVEDSTATES.
2009-10-14 11:26:44 +02:00
Henri Verbeet
a24d14796a
wined3d: Remove the useless "changed" and "enabledChanged" fields from struct wined3d_light_info.
2009-10-14 11:26:26 +02:00
Henri Verbeet
3bc9d1894d
wined3d: Rename PLIGHTINFOEL to something less awful.
2009-10-14 11:26:17 +02:00
Jeff Zaroyko
a1126242a7
wined3d: Fix prototype for set_texture_matrix.
2009-10-12 17:07:03 +02:00
Henri Verbeet
2be38232ea
wined3d: Remove some unused code.
2009-10-06 12:02:59 +02:00
Henri Verbeet
92d22ce535
wined3d: Move the SM1 opcode enum to shader_sm1.c.
2009-10-06 12:02:52 +02:00
Henri Verbeet
8b3f868774
wined3d: Move the pixel/vertex states arrays to stateblock.c.
2009-10-02 11:53:03 +02:00
Henri Verbeet
a84974e2ea
wined3d: Fix the values of NUM_SAVEDPIXELSTATES_T and NUM_SAVEDVERTEXSTATES_R.
2009-10-02 11:52:54 +02:00
Henri Verbeet
be0b7355fc
wined3d: Add a separate function for initializing the "contained_*" fields from the "changed" field.
2009-09-30 14:31:59 +02:00
Henri Verbeet
664057ce6a
wined3d: Add a separate function for state block initialization.
2009-09-29 14:22:34 +02:00
Henri Verbeet
6a7b97b617
wined3d: Fix a typo.
2009-09-29 14:22:34 +02:00
Stefan Dösinger
404aecb8da
wined3d: Test if result.clip[] works correctly.
...
The Mac Nvidia driver doesn't implement the result.clip part of
GL_NV_vertex_program2_option correctly. It complains about a syntax
error if "result.clip[0]" is used. "result.clip" compiles correctly, but
supports only one clipplane, and running the shader results in severe
rendering bugs.
2009-09-28 17:33:07 +02:00
Henri Verbeet
f88c6e5ce5
wined3d: Move common shader fields to IWineD3DBaseShaderClass.
2009-09-25 15:14:35 +02:00
Henri Verbeet
789372afa8
wined3d: Don't free D3D pixel shaders until the wined3d pixel shader is destroyed.
2009-09-24 13:24:53 +02:00