Hi Creators,
We’re excited to launch TintMask Alpha mode as an enhancement to SurfaceAppearance, as a Client Beta. Now, you can apply tinting to selective areas of a surface, such as the raised bricks in a brick wall, without affecting the space in between. Ultimately, TintMask will let you create more custom surfaces faster and with more control.
As a Client Beta, this feature is live in production — meaning you can publish places with it, but we still consider it in beta for now. This feature may be subject to changes before its full release.
Usage
You can apply TintMask to a MeshPart with a SurfaceAppearance. Learn how to add SurfaceAppearance to your place here. Set the SurfaceAppearance.AlphaMode
to Enum.AlphaMode.TintMask
. This applies SurfaceAppearance.Color
tinting to selective areas of a surface based on the transparency (alpha) in the ColorMap.
The SurfaceAppearance will require a ColorMap with transparency that is carefully crafted for the TintMask effect. In your image editor, paint opaque transparency (high alpha value) where you wish the tint color to be applied the strongest. The areas with more transparency (low alpha value) will be less affected by the tint color. The alpha values can also be semi-transparent to apply a partial tint to areas of the texture.
Example of ColorMap Transparency:
The tinting is applied as a multiplier, just like normal SurfaceAppearance Tinting. Make the color in areas where tinting is applied lighter and desaturated (eg, greyscale) to give you the largest range of coloring options. The areas where tinting will not be applied should have normal colors as you would like them to appear.
Example of ColorMap Color:
When saving the image, be sure to preserve color in the transparent regions and turn off options such as pre-multiplied alpha that darken the color in transparent areas. You may also need to change the view settings in your image editor so you can see the color in the transparent areas.
Scripting
Like any SurfaceAppearance Tinting, TintMask is available for scripting using the SurfaceAppearance.color
API which is a Color3. This allows you to dynamically change the color of the tinted areas, enabling use cases such as in-game asset customization or time-based color tints.
Performance and Memory
TintMask also comes at no performance cost. Additionally, if you are currently uploading multiple textures to obtain tint variations of a ColorMap, you can now save memory by reusing a single ColorMap along with SurfaceAppearance Tinting to obtain your desired tint variations.
Feedback
Please share your experience with TintMask! If you encounter any issues, please let us know by submitting a bug report.