Unknown W. Brackets
5a7d400f4b
softgpu: Fix lines drawn upward or leftward.
2014-01-19 23:32:53 -08:00
Unknown W. Brackets
8271ec1a55
softgpu: Avoid a divide by 0 in line interpolation.
...
Fixes crash in Persona 2 loading screens.
2014-01-19 23:32:12 -08:00
Unknown W. Brackets
74c1b21b59
softgpu: Don't redraw every pixel of a line 16x.
...
Fixes the insane slowness when processing lines. Now it's just regular
super slow.
2014-01-19 23:28:34 -08:00
Unknown W. Brackets
4bb6a77519
softgpu: Cleanup DrawPoint a bit.
...
Mostly in DrawSinglePixel() now.
2014-01-18 20:50:38 -08:00
Unknown W. Brackets
8f5fc4f079
softgpu: Interpolate/texture lines and points.
...
Also, expand out pixels in lines, it's just too slow otherwise (30%
overhead or so.)
2014-01-18 20:48:48 -08:00
Unknown W. Brackets
e216032a8c
softgpu: Separate out texturing logic.
...
This way it can be applied to other primitives. But, this will probably
need larger changes to implement mipmapping.
2014-01-18 20:10:42 -08:00
raven02
4c25bb0365
softgpu: Let's try doubling before alpha blend.
...
Fixes #5122 .
2014-01-18 19:58:28 -08:00
Unknown W. Brackets
08eecba6ba
softgpu: Refactor pixel drawing to avoid code dup.
2014-01-18 19:57:12 -08:00
Unknown W. Brackets
01090f4ce7
softgpu: Respect the texture filering option.
...
Nearest is much faster, so you can force it to nearest for a good boost in
speed.
2014-01-18 16:39:46 -08:00
Unknown W. Brackets
b95f9cf9d1
softgpu: Don't call rectangles quads.
...
GLES has quads and they work pretty differently.
2014-01-18 16:39:07 -08:00
Unknown W. Brackets
b9f4cc4481
Double colors only when texturing, and after test.
...
Per tests.
2014-01-12 11:45:29 -08:00
Unknown W. Brackets
4ea4554ddf
softgpu: detect a vram-relative display addr.
2014-01-11 09:51:32 -08:00
Unknown W. Brackets
55fe5a950e
softgpu: rotate uvs in throughmode.
2014-01-11 09:51:09 -08:00
Tony Wasserka
4c720ee375
softgpu: Fix typo in TransformUnit.
2014-01-02 02:10:12 +01:00
Henrik Rydgård
e5e17fbc6e
More include cleanup. Hoping for very slightly faster compile times..
2013-12-30 10:49:05 +01:00
Henrik Rydgård
87f203a5b8
More include untangling
2013-12-29 23:44:35 +01:00
Unknown W. Brackets
8f73ae07c0
softgpu: Fix preview region y1 in ge debugger.
2013-12-29 13:45:10 -08:00
Unknown W. Brackets
473fb866e6
softgpu: Implement vertex preview.
...
And move ConvertMatrix4x3To4x4() into a common place since there were
differing implementations, which was only confusing.
2013-12-29 13:45:10 -08:00
Unknown W. Brackets
eb0ea71f24
softgpu: Use region for debugger buffer previews.
...
It's fine if it resizes or etc., but this should generally be the
interesting area of vram to show, without any confusing noise on the
side/etc.
2013-12-29 13:02:04 -08:00
Unknown W. Brackets
9f86959826
Fix typesafety (ScreenCoords not DrawingCoords.)
2013-12-29 12:59:26 -08:00
Unknown W. Brackets
25bc394284
Ignore the material update flag w/o vertex color.
...
Instead of using materialambient for all of them.
Fixes #3918 , and seems to match tests with 3dstudio.
2013-12-29 12:57:30 -08:00
Henrik Rydgard
3ed7c6d48f
SoftGPU: Display at correct aspect ratio independent of window size.
2013-12-17 09:02:54 +01:00
Unknown W. Brackets
b1d78020c4
softgpu: Keep track of frame dirty for frameskip.
...
But only when frameskip is enabled. Let's always draw in case of pixel
poking when it's off.
2013-12-15 14:32:04 -08:00
Unknown W. Brackets
9aa1b15569
softgpu: Fix black objects with bilinear filtering.
...
Dividing by 256 gives us a range of 0-253, and incorrectly gets zero for
some components (guessing alpha, primarily?) in some games.
Dividing by 255 has a speed hit, so a slight bias to the top left seems
like a decent performance compromise (and it's a very slight bias.)
2013-12-15 11:59:25 -08:00
Unknown W. Brackets
96d6f52a13
softgpu: Retain accuracy in depth for tests.
...
Fixes intro/menu issues in Phantasy Star Portable 1/2, and text in the
first, both of which now look correct.
2013-12-15 11:59:25 -08:00
Unknown W. Brackets
6ca5662b03
softgpu: Properly swizzle 16 bit textures.
...
Fixes for example the graphics in Fieldrunners.
2013-12-15 11:59:24 -08:00
Unknown W. Brackets
da1224bb57
softgpu: Use the display, not current, framebuffer.
...
Fixes blinking in save dialogs and probably other bugs.
2013-12-15 11:59:23 -08:00
Unknown W. Brackets
2f0c8c2877
softgpu: Attempt to implement GE_PROJMAP_UV.
...
Looks okay, not sure if it's fully correct.
2013-12-15 11:59:22 -08:00
Unknown W. Brackets
13bf4d83fa
Add memchecks for common HLE copy operations.
...
Better to catch some than miss everything.
2013-12-14 14:56:05 -08:00
Henrik Rydgard
d4eee74b54
SoftGPU: Prepare for mipmapping. Getting the uv deltas seems tricky though...
2013-12-10 15:33:59 +01:00
raven02
2e7609b084
Cleanup ClearmodeDepthMask
2013-12-10 20:48:20 +08:00
Henrik Rydgård
20873f2985
Remove unnecessary ifdef
2013-12-09 16:53:46 +01:00
raven02
75492719e8
std::bind build fix for VS2012
2013-12-09 21:06:38 +08:00
Henrik Rydgård
68b08ffb9f
SoftGPU: Quick and dirty lines and points implementation
...
No line/point texturing support yet.
2013-12-09 12:43:49 +01:00
Unknown W. Brackets
c6a441965e
Move shared clut check to gstate.
2013-12-08 23:11:56 -08:00
Unknown W. Brackets
cdccf06b62
softgpu: Avoid some ScreenToDrawing() overhead.
2013-12-08 22:38:09 -08:00
Unknown W. Brackets
30394df775
softgpu: Make texture lookups do less math.
2013-12-08 22:37:45 -08:00
Henrik Rydgard
bd1d4e2d92
As if softgpu wasn't slow enough already, implement bilinear filtering.
2013-12-09 01:44:23 +01:00
Unknown W. Brackets
637a9de75d
Optimize out some clear mode checks.
...
Since it's really common and the rasterizer is slow for large draws.
2013-12-08 14:24:17 -08:00
Unknown W. Brackets
598d509fb9
Use multiple threads if available for softgpu.
...
VIVA OVERHEAD. But it's actually generally faster this way, even with
only 2 cores running (but not a huge improvement then.)
On an i7, this improves things ~2.5x with 8 cores.
2013-12-08 13:41:20 -08:00
Unknown W. Brackets
d227b13f36
softgpu: Advance vertex/index address on prim.
...
Fixes some broken graphics in a lot of places.
2013-11-20 21:59:45 -08:00
Henrik Rydgård
428b27903b
Merge pull request #4556 from unknownbrackets/ctrl-timing
...
Adjust ctrl timing (sample and wake after vblank)
2013-11-18 05:06:58 -08:00
Unknown W. Brackets
7a9fe955f8
softgpu: Only check clear mode once for depthtest.
...
Small, small optimization. It's only called outside clear mode.
2013-11-17 19:32:21 -08:00
Unknown W. Brackets
dfadb67ea1
Avoid some operator overloads.
...
Causing ambiguity.
2013-11-17 14:42:58 -08:00
Unknown W. Brackets
1311d71455
softgpu: Fix reversed stencil test funcs.
...
LESS applies to the ref compared to the stencil, not the stencil compared
to the ref.
With this, stencil testing is finally being done properly in Star Ocean.
2013-11-10 03:21:01 -08:00
Unknown W. Brackets
2db98b8669
softgpu: Don't apply logic op to stencil value.
...
Also, they were not at all applying correctly.
2013-11-10 03:21:00 -08:00
Unknown W. Brackets
438928de40
softgpu: Apply stencil op even when depth disabled.
2013-11-10 03:21:00 -08:00
Unknown W. Brackets
5327ce80d5
softgpu: throughmode doesn't disable any tests.
2013-11-10 03:20:59 -08:00
Unknown W. Brackets
5751e0a0a4
softgpu: Simplify color clamping.
2013-11-10 03:20:58 -08:00
Unknown W. Brackets
21deaef35a
Invert gstate.getClearModeColorMask().
...
It makes more sense matching gstate.getColorMask().
2013-11-10 03:20:58 -08:00