(r1016) A_RailAttack particles are not true color

Bugs that have been resolved.

Moderator: Graf Zahl

Locked
User avatar
Footman
Posts: 14
Joined: Wed Oct 21, 2009 15:45

(r1016) A_RailAttack particles are not true color

Post by Footman »

Unsure whether this is a bug, oversight, or intentional, but I'll throw it out here anyways.
When setting a color of a railgun for A_RailAttack, the colors used appear to still be limited to Doom's palette despite GZDoom's true color rendering.
This is easiest to tell when attempting to use a cyan or turquoise color.
User avatar
Graf Zahl
GZDoom Developer
GZDoom Developer
Posts: 7148
Joined: Wed Jul 20, 2005 9:48
Location: Germany
Contact:

Re: (r1016) A_RailAttack particles are not true color

Post by Graf Zahl »

That may be possible. Not all code that does color processing has been altered to work without the palette. Originally in ZDoom all such code was palette-locked and most has been changed by now. It was probably just overlooked.
User avatar
Gez
Developer
Developer
Posts: 1399
Joined: Mon Oct 22, 2007 16:47

Re: (r1016) A_RailAttack particles are not true color

Post by Gez »

The problem comes from the use of ColorMatcher.Pick() in a lot of basic functions. Particle effects (including railgun but also blood for example), decals, GetBlendMap(), AActor::SetShade(), FTexture::InitGrayMap(), and more.


One thing I wonder about is constructions such as this:

Code: Select all

DEFINE_PROPERTY(stencilcolor, C, Actor)
{
	PROP_COLOR_PARM(color, 0);

	defaults->fillcolor = color | (ColorMatcher.Pick (RPART(color), GPART(color), BPART(color)) << 24);
}
Is this putting the closest match's palette index in what's normally the alpha part of a RGBA DWORD so that the same variable keeps both the real RGB triplet for the hardware renderer(s) and the software-compatible palette index?
User avatar
Gez
Developer
Developer
Posts: 1399
Joined: Mon Oct 22, 2007 16:47

Re: (r1016) A_RailAttack particles are not true color

Post by Gez »

Fixed, with apparently no ill effects, even in software mode.
Locked

Return to “Closed Bugs”