-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement "glow in the dark" TS animations #19131
Conversation
7e680ba
to
7243e70
Compare
0c6cd43
to
2176732
Compare
Fixed those and the issues reported by the linter. |
2176732
to
465d8a4
Compare
465d8a4
to
db65eff
Compare
Rebased and ready for review. |
Mobile sensor array is missing its lighting animation when deployed. |
Good spotting!
It turns out that this animation was never defined, so wasn't flagged by my automated reporting. I added a new commit to fix this and also fix the graphical glitches on snow maps. |
- Force temperate palette to avoid glitches on snow maps - Add missing active animation
431ad9b
to
dc895f3
Compare
Rebased for good measure. |
lights.mov
This PR implements the "bright" palette ranges that were hardcoded for infantry and certain building animations in TS, as well as fixing many small errors in the sequence definitions. Best tested on a relatively dark map like Sunstroke, and the map editor can be used to quickly place buildings and check animations in normal and damaged states (muzzle flashes need to be tested in a real game).
Most animations that use this feature contain a mix of bright and non-bright colours, which I handle by creating new
player-nobright
andplayer-nomuzzle
palettes that blank out the bright ranges, and correspondingbright
andmuzzle
palettes that blank out everything else. Actors then render the animation twice, once with theplayer-no*
and then again withbright
ormuzzle
together withIgnoreWorldTint: True
. A small number of animations only use the bright colours, so only specify the-bright
version.I'm fairly confident that this covers all of the animations that we currently define because I started this process by modifying the
CheckMissingSprites
utility command to report all sprites that used the bright colours, and only crossed animations off the list after I had verified them working ingame.Fixes #13046.
Depends on #19122.There are two other issues that aren't strictly blockers, but would be nice to resolve first:
WithIdleOverlay
toWithOverlay
and implement a properWithIdleOverlay
trait (including randomInterval
support) to properly implement the original refinery flame behaviour.Cloak
palette override and reimplement using alpha: the stealth generator has always broken a few animations (like the refinery flame animation), but now breaks many more.