b641ccaf35
fix remaining sprite y-coord bugs. fixes #531
2019-11-03 04:53:11 +01:00
3561e93bf6
fix sprite y-flip
...
also, meaningless shenanigans
2019-11-03 04:32:47 +01:00
58c2790ea3
uuuh we should only do it once per scanline
2019-09-15 02:08:47 +02:00
e418b353e8
well, here, OBJ X mosaic is done too
2019-09-15 02:01:22 +02:00
cb90475b60
begin work on mosaic
...
OBJ Y mosaic emulated correctly, there's atleast that.
2019-09-15 01:31:09 +02:00
1aaf0c33ce
guess who the idiot is who broke sprite extpal
2019-09-05 11:49:22 +02:00
0010e296bd
GPU2D: delay palette lookup for sprites
2019-09-05 11:42:08 +02:00
5b51034436
zerp
2019-09-01 18:38:01 +02:00
f01016a30b
GPU2D: shape3 sprites are always 8x8
2019-09-01 18:35:33 +02:00
78ff4165ed
GPU2D:
...
* implement reserved mode for bitmap sprites (not too interesting)
* mask out DISPCNT bits that don't apply to the sub GPU
2019-07-24 04:29:19 +02:00
a8886d5949
GPU2D: add 'prohibited' large BG sizes
2019-07-24 03:30:09 +02:00
3c006fd361
GPU2D: fill gaps in BG modes
...
* mode6 actually works on the sub GPU, albeit limited to 1/4 the full bitmap size due to having only 128K of VRAM
* mode7 draws BG0, BG1 and sprites. no BG2/BG3.
2019-07-24 02:46:30 +02:00
c1fa5d8283
GPU2D: forced-blank only disables BG/OBJ compositing (VRAM/FIFO display, capture, master brightness still run)
...
fixes #491
2019-07-24 00:27:08 +02:00
22f3cae067
fix potential out-of-bounds write
2019-07-13 02:54:14 +02:00
49b2f8d969
raise kMaxIterationCycles to 64
2019-06-25 02:05:48 +02:00
d28035674a
GPU2D: hardware renders sprites one scanline in advance.
...
fixes #375 (midframe OAM update)
2019-06-10 03:05:26 +02:00
bc53ff35a9
this is the same thing, but, for the sake of consistency
2019-06-08 12:39:52 +02:00
6de19645f8
fix potential crash when running the software renderer (oops)
2019-06-02 14:57:59 +02:00
78208a9728
OpenGL: fix cases of layers/sprites blending over the 3D layer
2019-06-01 03:39:35 +02:00
70a3243714
simpler GPU-compositing. will make it easier to grab neighbor 2D/3D pixels individually for filtering.
2019-05-25 19:36:47 +02:00
db396e992b
welp.
...
progress
2019-05-21 22:28:46 +02:00
b493c24128
remove reference to GL version 4.3 from filenames and namespaces
2019-05-20 00:05:37 +02:00
cd8236303e
begin botching the code
...
BAHAHAHAAAA
2019-05-19 19:37:13 +02:00
f5a7cb71fd
also, do master brightness
2019-05-18 01:42:50 +02:00
a752b1d7c2
woops
2019-05-18 01:32:31 +02:00
f1a970ec30
actually finish display capture in hardware-accel mode
2019-05-18 01:21:46 +02:00
de287825ee
start work on display capture
...
also fix a bug in the compositing shader
2019-05-17 22:50:41 +02:00
c1746f0c60
BAHAHAHHHH
...
HARK HARK HARK
2019-05-16 20:58:07 +02:00
c81bcccadc
BAHAHAHAHAHAHAHAA
2019-05-16 16:27:45 +02:00
02b4919005
resolution switch somewhat functional
2019-05-12 17:43:39 +02:00
a32c5c99bb
finish de-hardcoding it. also, code 4x variant (not that I guarantee it to be fast, but hey, it's here)
2019-05-12 15:58:12 +02:00
2a0bc4e700
make GPU2D somewhat more flexible. change LineScale to be log2.
2019-05-12 15:45:58 +02:00
858c0eecb9
scale screen gap
...
also moar optimization...
2019-05-11 01:46:38 +02:00
44e1593e1f
some optimization to the 2D pipeline
2019-05-10 22:22:17 +02:00
7a2504a3a4
fix derpy bug
2019-05-10 18:22:34 +02:00
b74587a482
* optional path for chunked rendering (might be faster, but not always)
...
* fix bugs
2019-05-10 16:30:20 +02:00
f1d1a9b828
temp fix for color effects
2019-05-08 03:24:22 +02:00
fb4f972cad
hires hax. somewhat functional
2019-05-08 01:58:34 +02:00
587d432677
don't do OBJ window if it isn't enabled (oops)
2019-05-07 21:19:33 +02:00
83331bc7e5
lay base for hi-res rendering
...
IT'S A PILE OF HACKS
2019-05-03 19:28:15 +02:00
785716ac41
* readme update
...
* remove TODO that has already been done
2019-03-26 13:38:59 +01:00
b0efde8bf7
also, update copyright name
2019-01-22 15:58:29 +01:00
d2701a0401
small optimization: avoid calling InterleaveSprites() if no sprites were drawn.
2019-01-06 23:16:10 +01:00
7a949ddd0e
2D: add support for 8bit reads to DISPCNT/BGCNT.
...
fixes #331
2018-12-21 17:53:48 +01:00
0c37824447
2D: fix fade effects to semitransp sprites and 3D layer. fixes #263
...
(also remove some useless variable. wtf)
2018-12-19 05:54:39 +01:00
dd30b417b8
implement proper support for POWCNT1.
...
fixes #260
2018-12-18 17:04:42 +01:00
32392cc8e2
2D: blending cases that bypass the BLDCNT first-target check (semitransp sprite, 3D layer) also bypass the window 'color effect enable' check.
...
fixes #299
2018-12-13 19:21:03 +01:00
b1973014d3
add some missing shit to savestates
2018-11-25 22:40:08 +01:00
4b8cea3b38
revise windows to be even closer to hardware.
...
apparently hardware only ever updates its 'inside/outside window' status when reaching the coordinates. which becomes apparent if you, like, try to invert a window midframe.
2018-11-25 19:13:23 +01:00
2035784f9f
on the DS, windows with backward coordinates end up inside-out. revise window code accordingly. fixes #287 .
2018-11-25 18:36:47 +01:00