- 02 Sep, 2008 2 commits
-
-
Stefan Dösinger authored
-
Stefan Dösinger authored
This is the prefered format of many codecs, and for some codecs this is the only supported output format. As usual I try to handle all the conversion in the GPU and keep the CPU involvement minimal to gain the full performance of PBO transfers.
-
- 28 Aug, 2008 1 commit
-
-
Stefan Dösinger authored
-
- 27 Aug, 2008 2 commits
-
-
Stefan Dösinger authored
-
Stefan Dösinger authored
-
- 26 Aug, 2008 2 commits
-
-
Stefan Dösinger authored
We have to use the texture limit of the fragment pipeline in use here, not the fixed function GL texture limit.
-
Stefan Dösinger authored
There is room for 8 texture coordinates, not just 4.
-
- 22 Aug, 2008 3 commits
-
-
David Adam authored
-
Roderick Colenbrander authored
-
H. Verbeet authored
Although sharing FBOs across contexts is allowed by EXT_framebuffer_object (issue 76), it causes issues with nVidia drivers. Considering the GL 3 spec explicitly disallows sharing of FBOs accross contexts (Appendix D), this patch is probably the right thing to do.
-
- 21 Aug, 2008 2 commits
-
-
H. Verbeet authored
-
H. Verbeet authored
This would crash if CreateAdditionalSwapChain() failed.
-
- 20 Aug, 2008 1 commit
-
-
Stefan Dösinger authored
-
- 19 Aug, 2008 5 commits
-
-
Stefan Dösinger authored
-
Stefan Dösinger authored
-
Stefan Dösinger authored
-
Stefan Dösinger authored
-
Stefan Dösinger authored
This is a long-needed cleanup aimed at removing the ddraw_primary, ddraw_window, ddraw_width and ddraw_height members from IWineD3DDeviceImpl, which just do not belong there. Destination window and screen handling is supposed to be done by swapchains.
-
- 05 Aug, 2008 5 commits
-
-
Stefan Dösinger authored
-
Stefan Dösinger authored
-
H. Verbeet authored
This is mostly for correctness, in practice we should always be able to avoid using CTXUSAGE_BLIT for offscreen targets when FBO ORM is used.
-
H. Verbeet authored
Fixes some GL errors due to calling glDrawBuffer(GL_BACK) when an FBO is still active.
-
H. Verbeet authored
As pointed out by Alexander Dorofeyev.
-
- 04 Aug, 2008 2 commits
-
-
H. Verbeet authored
CTXUSAGE_CLEAR will apply the FBO state in a later patch.
-
Stefan Dösinger authored
-
- 31 Jul, 2008 1 commit
-
-
Stefan Dösinger authored
-
- 30 Jul, 2008 1 commit
-
-
Alexander Dorofeyev authored
Also removes dirtifying of SCISSORTESTENABLE state that is made redundant by ActivateContext(...,CTXUSAGE_CLEAR).
-
- 24 Jul, 2008 1 commit
-
-
Stefan Dösinger authored
This is an ATI specific format designed for compressed normal maps, and quite a few games check for its existence. While it is an ATI-specific "extension" in d3d9, it is a core part of D3D10(DXGI_FORMAT_BC5), and supported on Geforce 8 cards.
-
- 22 Jul, 2008 1 commit
-
-
Stefan Dösinger authored
This happened to work because most cards have the same amount of pshader and vshader constants, but for some reason this doesn't hold true on this macbook pro here, which lead to a crash due to heap corruption
-
- 18 Jul, 2008 2 commits
-
-
Stefan Dösinger authored
This is cleaner than the if statements in the code. Also np2 textures should in theory support linear filtering, but fglrx doesn't seem to like it. This needs further investigation. So far we've never used linear filtering on np2 textures, so there should not be a regression. Furthermore I think shader support is more important than filtering, since NP2 textures are mostly used for 1:1 copying to the screen.
-
Stefan Dösinger authored
ATI cards prior to the radeon HD series did not have unconditional non power of two support. So far we've used texture_rectangle for that, or created a bigger power of two texture with padding. This had the disadvantage that we had to correct the coordinates, which causes extreme problems with shaders(doesn't work, pretty much). Both the MacOS and the fglrx driver have support for GL_ARB_texture_non_power_of_two, and run it on the hardware as long as we stay within the texture_rectangle limitations. This allows us to have conditional non power of two textures with normalized coordinates. This patch adds an internal extension, and the code creates a regular GL_TEXTURE_2D texture with NP2 size, but refuses mipmapping, filtering and texture_rectangle incompatible operations. This makes np2 textures work with shaders on fglrx and macos.
-
- 16 Jul, 2008 1 commit
-
-
H. Verbeet authored
wined3d: Use rev_tex_unit_map instead of assuming there's a 1:1 mapping between samplers and texture units.
-
- 14 Jul, 2008 1 commit
-
-
Stefan Dösinger authored
Since atifs is only doing the fragment pipeline replacement right now there is no need for the shader backend structure any longer. The ffp private data is stored in new fragment pipeline private data(which could potentially be set to equal the shader private data if needed).
-
- 11 Jul, 2008 1 commit
-
-
H. Verbeet authored
Destroying the stateblock potentially references the shader backend. If the stateblock has active shaders when it is released, the shader's destructor will tell the shader backend to destroy the corresponding resources. This was exposed by my patch that moved the glsl program lookup table into the backend's private data.
-
- 10 Jul, 2008 1 commit
-
-
H. Verbeet authored
No need to expose this in the interface.
-
- 09 Jul, 2008 1 commit
-
-
H. Verbeet authored
-
- 08 Jul, 2008 1 commit
-
-
Stefan Dösinger authored
The idea of this patchset is to split the monolithic state set into 3 parts, vertex processing, fragment processing and other states(depth, stencil, scissor, ...). The states will be provided in templates which can be (mostly) independently combined, and are merged into a single state table at device creation time. This way we retain the advantages of the single state table and having the advantage of separated pipeline implementations which can be combined without any manually written glue code.
-
- 07 Jul, 2008 1 commit
-
-
Stefan Dösinger authored
Constant numbers start at 0, and the loading loop has a for(i; i < dirtyconsts; i++). This means that the highest dirty constant isn't loaded correctly. Rather than replacing the < with <=, which would make it impossible to have no dirty constant, add 1 to the dirty constant counter.
-
- 03 Jul, 2008 2 commits
-
-
H. Verbeet authored
This gets rid of depth_copy_state in the device, and instead tracks the most up to date location per-surface. This makes things a lot easier to follow, and allows us to make a copy when switching depth stencils in SetDepthStencilSurface().
-
H. Verbeet authored
This makes the depth copy independent of the currently attached render targets. This is important for the next patch because it might do a depth copy when the render targets aren't in a valid configuration (SetDepthStencilSurface()).
-