Commit Graph

63 Commits

Author SHA1 Message Date
Unknown W. Brackets
095624867a d3d9: Enable GPU info in D3D9 reporting. 2016-02-13 09:51:09 -08:00
Unknown W. Brackets
41b00a9cab d3d9: Initialize viewport without errors. 2015-12-31 11:17:24 -08:00
Henrik Rydgard
3acdd4e237 We had two global types called FBO, which is not ok. Fix that.
This caused some very strange behaviour in the MSVC debugger when looking at this stuff.
2015-11-14 13:24:51 +01:00
Henrik Rydgard
df94914a63 D3D: No need to convert blendcolor to float and back
Fix bug with constantAlpha

Remove misleading comment, thanks unknown
2015-11-12 18:11:23 +01:00
Henrik Rydgard
e6b39d65d3 Apply unknown's workaround for dx viewport issues - additionally, we shouldn't even have to call the function in non-buffered.. 2015-11-12 15:26:06 +01:00
Henrik Rydgard
7e3cd987cd Fixes to D3D viewport management. For some reason, still having strange driver-bug-ish problems in unbuffered... 2015-11-12 14:47:43 +01:00
Unknown W. Brackets
7af7b2bc6d Add methods to "force" glstate to certain values.
This way we don't have to use totally different syntax when doing:

   glstate.scissorTest.force(false);
   // Do stuff that needs scissorTest temporarily off.
   glstate.scissorTest.restore();

There's cleaner options maybe but this is a simple first step.
2015-11-03 22:37:05 -08:00
Henrik Rydgard
d822cbf60b Move fbo.cpp/h from native into PPSSPP 2015-09-06 13:13:37 +02:00
Henrik Rydgard
186d624ef3 Cleanup of FBO+blit flags. Requires the change in native to stop lying. 2015-09-05 22:40:45 +02:00
Henrik Rydgard
86a02fed61 Minor cleanup 2015-09-05 19:42:58 +02:00
Unknown W. Brackets
2a1279b521 dx9: Don't force alpha to 1.
This was removed from GLES also.  Depal ends up using this shader for
flipped blits, and it screws up alpha.
2014-12-30 13:18:36 -08:00
Unknown W. Brackets
32fc4c7676 d3d9: Try harder to get a shader compile error. 2014-09-26 21:32:22 -07:00
Unknown W. Brackets
b97af10a6d d3d9: Show error when default shaders fail. 2014-09-26 21:20:50 -07:00
chinhodado
7b4b0eb0a0 Use E_FAIL instead of -1 and clean up 2014-09-26 15:55:21 -04:00
Unknown W. Brackets
856154a5f9 d3d9: Replace alpha and premultiply blend.
Unfortunately they are fairly tied together.
2014-09-21 12:01:49 -07:00
Unknown W. Brackets
937fe0ea57 d3d: Use INTZ if supported.
No performance impact on my card, and allows downloading depth/stencil
data.
2014-09-14 11:20:59 -07:00
Unknown W. Brackets
2c88935755 d3d: Support depth and stencil in the GE debugger.
But, not with our current depth surfaces.
2014-09-14 11:15:37 -07:00
Henrik Rydgard
a074bf1677 Delete some dead and duplicated code 2014-09-14 13:23:36 +02:00
Unknown W. Brackets
b0cad8ecac d3d: StretchRect properly at > 1x. 2014-09-14 00:26:35 -07:00
Unknown W. Brackets
abb2ce325c d3d: If possible, use StretchRect() to display.
May be faster, has less half-pixel offset issues.  Still seeing blurriness
problems, but they're better.
2014-09-13 20:31:01 -07:00
Unknown W. Brackets
822c5d9e75 d3d: Use StretchRect() when possible. 2014-09-13 20:08:29 -07:00
Unknown W. Brackets
7f89723d2b d3d: Initial implementation of framebuf download.
Not working, or not working properly...
2014-09-13 16:37:59 -07:00
Henrik Rydgard
7b66059ae0 D3D: Assorted cleanup. Add a missing register specification. 2014-09-10 15:20:57 +02:00
Henrik Rydgard
422ae62b63 D3D9: Add support for D3D9Ex, which has faster flipping and an option for lower latency, and some other stuff.
MANAGED textures are not allowed though so compensate for that by making them dynamic for now.
2014-09-09 22:28:35 +02:00
Unknown W. Brackets
8c229e00b4 d3d: Begin centralizing framebuffer management. 2014-09-09 08:12:42 -07:00
Unknown W. Brackets
f770b599d9 d3d: Reset scissor/viewport on fbo bind.
Maybe a better way, the state is forgotten on bind so if we try to set it
again, it'll be ignored.  Fixes map in Star Ocean 1.
2014-09-08 22:12:13 -07:00
Unknown W. Brackets
858df90dff d3d: Release shaders and fbos on shutdown. 2014-09-07 13:15:39 -07:00
Unknown W. Brackets
564ae9f184 d3d: Report shader compilation failures. 2014-09-07 11:01:19 -07:00
Unknown W. Brackets
4d54cad9bd d3d: Reduce D3DX leaks. 2014-09-07 10:38:49 -07:00
Unknown W. Brackets
ebe71e3ec4 d3d: Properly initialize cullmode. 2014-09-06 23:01:04 -07:00
Unknown W. Brackets
a29c2f4f2f d3d: Use 2.0 vertex and pixel shaders. 2014-09-06 23:01:03 -07:00
Unknown W. Brackets
9ce5c49978 d3d: Add basic stencil mask handling.
Mostly so we have it in dxstate, will probably reorganize stuff later.
2014-08-30 11:18:18 -07:00
Unknown W. Brackets
d987cfea37 d3d: Cache sampler/render state like in GL.
Small 3% performance improvement.  Also, would prefer to have the bugs
from this now rather than later.
2014-08-26 08:08:02 -07:00
Unknown W. Brackets
5e528f673d d3d: Set the lod bias for textures.
Why aren't these caching?
2014-08-26 07:58:09 -07:00
Unknown W. Brackets
c65f9603bd d3d: Fix some RGBA / ARGB color issues.
I wonder if we should just send floats here?  We denormalize and then
renormalize in software...
2014-08-24 23:34:48 -07:00
Henrik Rydgard
1d7642fa48 Remove most mentions of the "_XBOX" define 2014-08-24 14:21:35 +02:00
Ced2911
49cc8e7312 [Gpu] Sync with gles
Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/FramebufferDX9.h
	GPU/Directx9/TransformPipelineDX9.cpp
2014-08-24 10:40:16 +02:00
Ced2911
6ee39c9abd [Gpu] Update
Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/FramebufferDX9.h
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/fbo.cpp
2014-08-24 10:29:47 +02:00
Ced2911
e0c3b5a112 [Gpu] somes fixes, monster hunter 2 run between 140 and 200% with vertex cache enabled
Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/GPU_DX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/global.cpp
2014-08-24 10:21:08 +02:00
Ced2911
ace1e71456 [Misc] Windows fixes
Conflicts:
	GPU/Directx9/TransformPipelineDX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/fbo.cpp
	GPU/Directx9/helper/global.cpp
2014-08-24 10:17:11 +02:00
Ced2911
d4adc3abb8 [dx9] don't do alpha test in pixel shader, use state mapping
hrydgard: Cleaned up a bit, disabled by default

Conflicts:
	GPU/Directx9/TextureCacheDX9.cpp
2014-08-24 09:52:34 +02:00
Henrik Rydgard
1556234825 Bit more d3d stuff. Can't get depth right, pretty sure it's the projection matrix calc. 2014-08-23 01:52:46 +02:00
Henrik Rydgard
a758917919 D3d cleanups and improvements 2014-08-22 22:16:46 +02:00
Henrik Rydgard
e2ecbb7a4d Convert more UI code to Thin3D 2014-08-22 20:55:18 +02:00
Henrik Rydgard
e539c7009f Hook up DX9 backend. Not really working though, it seems. 2014-08-22 20:55:12 +02:00
Unknown W. Brackets
9fe1a99ab3 Fix some warnings. 2013-10-14 22:09:21 -07:00
Henrik Rydgard
0c2c1751f5 Windows: Let's not link with D3DX, requiring that DLL, until we actually use the D3DX shader compiler. 2013-10-15 01:16:43 +02:00
Ced2911
5c4ed26442 Make the dx9 renderer working in headless mode 2013-09-16 09:42:30 +02:00
Unknown W. Brackets
5617f07462 Fix dx9 so it builds on Windows (DOES NOT WORK.) 2013-09-15 23:22:10 -07:00
Unknown W. Brackets
f55b6a0dbc Put the DirectX9 stuff into a namespace.
This makes it almost build on Windows, but not quite.  Some required files
excluded from build, still.
2013-09-15 08:56:12 -07:00