$blendtintbybasealpha: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Illustrated the subject)
mNo edit summary
Line 9: Line 9:
<gallery mode=nolines widths=300px heights=300px>
<gallery mode=nolines widths=300px heights=300px>
File:Blendtint-truck-regular.jpg|Using <code>rendercolor</code> on [[prop physics]] or [[prop dynamic]] entities without <code>$blendtintbybasealpha</code>. The tint is applied across the entire texture, which in this case ins undesireable.
File:Blendtint-truck-regular.jpg|Using <code>rendercolor</code> on [[prop physics]] or [[prop dynamic]] entities without <code>$blendtintbybasealpha</code>. The tint is applied across the entire texture, which in this case ins undesireable.
File:Blendtint-truck-enabled.jpg|Same but with <code>$blendtintbybasealpha</code> enabled. The alpha channel of the texture, plus painting the base white, allows the trucks to be tinted in a desireable manner.
File:Blendtint-truck-enabled.jpg|Same but with <code>$blendtintbybasealpha</code> enabled and the texture edited. The alpha channel of the texture, plus painting the base white, allows the trucks to be tinted in a desireable manner.
</gallery>
</gallery>



Revision as of 14:50, 9 July 2024

Stub

This article or section is a stub. You can help by expanding it.

$blendtintbybasealpha is a VMT parameter that allows tinting of a mesh's material using the $basetexture's alpha channel as a mask to determine tint intensity (but not the tint's RGB color!) Applying an actual color RGB values is done elsewhere - either in-game or in Hammer with entities using the 'rendercolor' keyvalue. This technique is used in games like Left 4 Dead to allow for recoloring of the vehicle props, and in Team Fortress 2 for painting hats.

Icon-Bug.pngBug:Not compatible with $alphatest or $translucent, this parameter will override both. Use the Modulate shader as a workaround.  [todo tested in ?]
Note.pngNote:Only compatible with VertexLitGeneric.

The tint mask simply controls the intensity of tinting. The more alpha, the more intense tinting is.

$blendtintcoloroverbase

$blendtintcoloroverbase, a related parameter, controls the amount of color replacement versus tinting. (replacing the color per pixel entirely, versus adding more color to make the colors closer to the tint RGB color.) A value of '0' will be full tint while a value of '1.00' will replace the albedo in the mask area with the color defined with $color2.

Todo: Explain the practical effect of this in better detail. What's the reason for the black colours? Is this a result of opposite colours mixing?