Unknown W. Brackets
d59aa06a3b
d3d: Improve GE debugger with render-to-tex.
...
Also fix a crash in oddly sized framebuffers.
2014-09-09 01:42:21 -07:00
Unknown W. Brackets
e3d0703bbb
d3d: Fix texture scaling.
2014-09-09 01:22:11 -07:00
Unknown W. Brackets
02a3ebcb8a
d3d: Add vertex full alpha detection.
2014-09-09 01:03:08 -07:00
Unknown W. Brackets
9af40cb14f
d3d: Update the texture cache to mostly match.
...
Now we can reduce the differences down.
2014-09-09 00:53:01 -07:00
Unknown W. Brackets
1b12ad1b91
d3d: Fix a shader warning from sw transform.
2014-09-08 22:18:34 -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
932a593576
d3d: Clamp depth viewport to [0, 1] also.
2014-09-08 21:55:28 -07:00
Unknown W. Brackets
cfee8f81e8
d3d: Oops, typo in texcache.
2014-09-08 21:43:38 -07:00
Unknown W. Brackets
030a9d55e7
d3d: Use unnormalized values for alpha testing.
...
Fixes Tales of Eternia's world map, Popolocrois everwhere, etc.
If PowerVR is using this method on GLES, it may be broken for the same
reasons.
2014-09-08 21:37:25 -07:00
Unknown W. Brackets
52c1b37465
d3d: Handle texture swizzling in ge preview.
2014-09-08 21:25:37 -07:00
Unknown W. Brackets
bc6a67babf
d3d: Use unsigned Z in throughmode.
2014-09-08 21:06:26 -07:00
Unknown W. Brackets
8aac734547
d3d: Correct texcoord scale.
...
Very obvious in for example LittleBigPlanet.
2014-09-08 21:00:46 -07:00
Unknown W. Brackets
b45711ba94
d3d: Centralize parts of the texture cache.
...
Should merge these.
2014-09-08 20:55:56 -07:00
Unknown W. Brackets
375e102647
d3d: Fix some shader issues with tex projection.
2014-09-08 19:33:12 -07:00
Unknown W. Brackets
04147827ee
Account for texel offsets in the frag test lookup.
...
Darn, thought this wouldn't be necessary but it is is for 1/255 and other
values.
Without cache:
PowerVR: temp, add, mul, fract, mul, compare
Other: mul, add, floor, compare
With cache: mul, add, texture lookup, compare
2014-09-08 19:04:44 -07:00
Henrik Rydgard
aaa0180114
D3D: Always decode U16 coords to floats as there's no good corresponding vertex format that works on all GPUs.
...
Fixes Burnout and probably many more games.
2014-09-09 00:42:12 +02:00
Henrik Rydgard
ef0ae77e98
D3D: some cleanup and a crashfix on shutdown
2014-09-09 00:29:01 +02:00
Unknown W. Brackets
923c535deb
Merge pull request #6861 from hrydgard/depth-d3d
...
Improve depth buffering in D3D by computing a depth-flipped proj matrix but only when needed.
2014-09-08 14:17:19 -07:00
Henrik Rydgard
0a74243b61
Remove lying comment
2014-09-08 23:14:33 +02:00
Henrik Rydgard
01a1438dce
Improve depth buffering in D3D by computing a depth-flipped proj matrix but only when needed.
2014-09-08 23:10:23 +02:00
Unknown W. Brackets
ac97f1ed96
Avoid a very unlikely fbo leak.
2014-09-08 07:41:23 -07:00
Unknown W. Brackets
7e248376f8
Track the last drawn width/height/format.
...
This way we can apply render-to-self effects more correctly.
2014-09-08 07:40:43 -07:00
Unknown W. Brackets
76d5f67796
Arg, fix color testing from frag test cache.
2014-09-07 23:21:22 -07:00
Unknown W. Brackets
2532639f70
Refactor fbo binding into DrawPixels().
2014-09-07 21:53:22 -07:00
Henrik Rydgård
1985e6db9a
Merge pull request #6853 from unknownbrackets/testcache
...
Cache fragment test results using a texture
2014-09-07 23:55:53 +02:00
Unknown W. Brackets
072e9c3a0d
Use a more logical name for the test tex creator.
2014-09-07 14:52:22 -07:00
Henrik Rydgård
d98480085a
Merge pull request #6854 from unknownbrackets/d3d9
...
Report shader errors in Direct3D 9, plug some leaks
2014-09-07 23:38:35 +02:00
Unknown W. Brackets
858df90dff
d3d: Release shaders and fbos on shutdown.
2014-09-07 13:15:39 -07:00
Unknown W. Brackets
34b1d13c29
d3d: Release vertex decls on shutdown.
2014-09-07 13:07:12 -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
c0908421ba
Skip binding when the test won't be used.
2014-09-07 10:06:57 -07:00
Unknown W. Brackets
95a620695b
Actually cache the last bound test texture.
2014-09-07 10:06:23 -07:00
Unknown W. Brackets
94c1271761
Add an experiment with using a texture for tests.
...
Using an option for now so it's easy to test, if it works well we can
maybe remove the option.
2014-09-07 10:04:57 -07:00
Unknown W. Brackets
b20cd3cba2
Clear stencil on switch from 565 buffer.
...
Fixes #2094 , shadows in Kingdom Hearts in some scenes.
Not a complete solution, but should be a relatively safe one.
2014-09-07 08:47:46 -07:00
Unknown W. Brackets
47e98f972d
Try to simplify alpha replace for poor compilers.
2014-09-07 08:25:39 -07:00
Henrik Rydgard
780ed765c7
Update dx9sdk (got rid of redundant headers)
2014-09-07 10:45:38 +02:00
Unknown W. Brackets
ebe71e3ec4
d3d: Properly initialize cullmode.
2014-09-06 23:01:04 -07:00
Unknown W. Brackets
5639b056b3
d3d: Use 0 texcoord when not specified.
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
07ccc37689
d3d: Use drawPixelsTex as a non-dynamic texture.
2014-09-06 23:01:03 -07:00
Unknown W. Brackets
de2c951665
Detect EXT_gpu_shader4 to use bitwise ops pre-3.3.
...
This may allow it to work on more cards, and should fix a (probably driver
bug) error we've had reported in GL 3.0 / GLSL 1.3.
2014-09-04 00:39:54 -07:00
Henrik Rydgård
94ee0c5a01
Merge pull request #6815 from unknownbrackets/gpu-minor
...
Eat cycles during GE block transfers
2014-08-31 09:29:09 +02:00
Unknown W. Brackets
e1d2e72480
Add block transfer to null gpu.
...
For tests, better to have it here.
2014-08-30 22:14:58 -07:00
Unknown W. Brackets
514772e18e
Avoid some magic numbers.
2014-08-30 22:06:25 -07:00
Unknown W. Brackets
337b34ef6a
Eat cycles during block transfers.
...
Tests show this takes a number very close to 1.9 times the number of bytes
in cycles @222.
Using that value caused a tiny fps drop in one area of the God of War
demo, which may be correct but might also cause complaints. A lot of our
other timing is not accurate, so using a lower value (1.6) to be on the
safer side.
This may cause things to reschedule more accurately when games drawsync,
and improves the gpu/commands/blocktransfer test.
2014-08-30 22:02:28 -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
5e07a40a83
Oops, buildfix Android/etc.
...
This is not declared there.
2014-08-30 07:13:36 -07:00
Unknown W. Brackets
361b9a2572
Use 8888, always, for Danganronpa's FBOs.
...
This should fix dithering on draw causing problems for Adreno 3xx devices.
2014-08-30 02:05:51 -07:00
Henrik Rydgård
c5e80d0999
Merge pull request #6801 from unknownbrackets/d3d
...
d3d: Avoid rewriting textures to BGRA from RGBA, just swizzle
2014-08-28 11:21:19 +02:00