eglaysher / rlvm

RealLive clone for Linux and OSX
http://rlvm.net
GNU General Public License v3.0
152 stars 26 forks source link

Sepia transform doesn't work in SEEN9061 because objMono and ObjColour() don't mix #14

Closed eglaysher closed 11 years ago

eglaysher commented 13 years ago

Polearm mentioned that sepia/inversion color transformers aren't working which is news to me since I'm pretty sure I implemented those effects in the run-up to release-0.07.

Figure out if this is a regression, a different path to the same effect or a non-error.

Polarem commented 13 years ago

Inversion actually works; sorry for the false report (I'll correct it).

Something happens during sepia transformations too, but it looks like a slight darkening, instead of a yellowish sepia effect (in Clannad, dub over Sunohara's tape on Apr 14, then see his complaint on Apr 15)

eglaysher commented 13 years ago

So the entire scene you're talking about is implemented in SEEN9061 with objects instead of graphics primitives.

The relevant code:

objBgOfRect (85, 0, 0, 800, 600)
objBgMono (85, 255)
objBgShow (85, 1)
objBgOfFile (86, 'KURO')
objBgColour (86, 255, 96, 32, 255)
objBgAlpha (86, 64)
objBgShow (86, 1)

Adding colour filter objects (d0ebfa8335bdd7a07b9a5690baf7e730ea0ec7be) seems to have made this worse. I can hack it so that filter objects do nothing when objMono is set, but I'll need to look at the colour transform more; it may rely on having a mono image in the background.