StapleButter
3aa83ae641
3D:
...
* undo 'winding sorting' hypothesis
* special depth test rules: 'less than' function becomes 'less or equal' when rendering front-facing polygon pixels against back-facing opaque pixels
2017-07-06 18:38:13 +02:00
StapleButter
d5376b4184
3D: Y-sorting
2017-07-05 18:38:10 +02:00
StapleButter
01404ac6c3
3D: move opaque/translucent sorting to GPU3D.cpp
2017-07-05 18:11:00 +02:00
StapleButter
1acf355d99
3D: change viewport handling to match hardware. finally fixes #18
2017-07-04 19:11:43 +02:00
StapleButter
da10f9b3f6
fix rendering for crapoed 'butterfly' polygons
2017-06-28 21:19:44 +02:00
StapleButter
5f6e8cc30b
fix toon highlight mode. GBAtek is wrong.
2017-06-28 09:19:38 +02:00
StapleButter
fa2db3826e
(finally) make the threaded 3D renderer option actually work
2017-06-04 15:55:23 +02:00
StapleButter
568b9fbf49
edge marking
2017-06-03 22:33:14 +02:00
StapleButter
64a447bb7c
clean up some shit. make framebuffer access less weird.
2017-06-03 22:10:32 +02:00
StapleButter
d81b68b16b
* fix range for 'equal' Z-test mode
...
* confirm clear Z value for screen outer borders
* misc code cleanup
2017-06-03 21:46:14 +02:00
StapleButter
77d0a0d76e
only do lower-pixel rendering when rendering under an edge
2017-06-01 15:16:44 +02:00
StapleButter
d1781c8bf2
remove more per-pixel checks
2017-06-01 14:59:41 +02:00
StapleButter
27c023a0cc
separate rasterizer inner loop into three loops for leftedge/middle/rightedge
2017-06-01 01:02:39 +02:00
StapleButter
fe55ef1af1
* begin work on antialiasing, but not good yet. also code sucks.
...
* start making code nicer
2017-06-01 00:45:47 +02:00
StapleButter
d3b3255ce3
* add 'push old pixel down' behavior for antialiasing
...
* delay final pass (edge/fog/AA) one scanline, required for edgemarking
2017-05-28 19:18:16 +02:00
StapleButter
ae78faf2a7
rework slope/edge code. lay groundwork for antialiasing.
2017-05-28 18:36:42 +02:00
StapleButter
6f4d835c7f
fog
2017-05-26 15:14:22 +02:00
StapleButter
a63ab24447
fix crapoed shadows
2017-05-26 04:00:15 +02:00
StapleButter
911888f1e0
fix alpha equation when blending is disabled
2017-05-26 03:16:23 +02:00
StapleButter
8558eff8aa
properly reset 3D thread state
2017-05-26 01:22:11 +02:00
StapleButter
4b3caedbe7
first attempt at threading the 3D renderer
2017-05-23 23:38:28 +02:00
StapleButter
88d982b7e3
proper stencil buffer
2017-05-22 22:29:21 +02:00
StapleButter
b66ac09e43
make the renderer truly per-scanline
2017-05-22 22:22:26 +02:00
StapleButter
cb1b03b253
make the 3D renderer work per-scanline
2017-05-21 20:14:03 +02:00
StapleButter
9fe24cb1e7
latch 3D registers upon VBlank
...
(fixes the last bugs in Gericom's train game)
2017-05-09 22:22:52 +02:00
StapleButter
da31af9202
fix Z-buffering. not really clean, and not perfectly accurate.
2017-04-29 00:20:04 +02:00
StapleButter
9eb68c2ede
misc optimizations
2017-04-25 01:14:26 +02:00
StapleButter
1759672d14
a few attempts at optimization
2017-04-23 15:25:15 +02:00
StapleButter
96b471d729
fix shadow oddities
...
not a proper fix, but shadows aren't emulated properly anyway
2017-04-22 19:06:48 +02:00
StapleButter
a086e22023
attempt at shadows. they're still a bit weird tho.
2017-04-22 18:04:54 +02:00
StapleButter
70c72004ac
behavior for translucent pixels is preserved even when alphablending is disabled
2017-04-22 17:15:50 +02:00
StapleButter
4f72ee3895
add support for polygon ID and conditional depth update for translucent pixels
2017-04-22 16:47:31 +02:00
StapleButter
eb656857d9
optimize the 3D renderer somewhat
2017-04-21 22:40:15 +02:00
StapleButter
796e60828c
small optimizations to the 3D renderer
2017-04-13 19:53:09 +02:00
StapleButter
c62e160b26
* decal texture blending
...
* start implementing toon shading
* temp. revert the DMA fix, causes issues
2017-04-12 20:25:54 +02:00
StapleButter
8bbcc83771
* always render normal BG/OBJ graphics (even if they're not getting displayed, they can still be fed to the capture unit)
...
* fix 3D viewport calculation
* keep track of the clearbuffer attributes before VBlank
2017-04-10 20:24:41 +02:00
StapleButter
de4b046232
* more accurate flags (push/pop busy, test busy, vertex/poly overflow)
...
* more versatile and better clipping code
2017-04-09 16:12:12 +02:00
StapleButter
8c059c9953
* more thread-safe UI
...
* config system base
* FPS counter and limiter
2017-03-23 17:14:48 +01:00
StapleButter
8a4ed8f41c
reorganize repo, move shit around
2017-03-16 23:01:22 +01:00