The Problem
As a Roblox developer, the current cap of 31 Highlight adorns active at a time has been very limiting to some of the things I’m trying to accomplish with the feature.
We have a house editor (currently unreleased) for our game that utilizes Highlight to mark multiple objects as selected. In the screenshot above, the floor is made up of tiled objects whose Parts are all in separate Models. I’m doing a floodfill selection of top-surface tiles that are brown and highlighting them as one unit.
Because of the 31 adornee limit, I currently have 3 options for handling this:
-
Put a Highlight into each individual model
(This hits the 31 adornee ceiling pretty fast, so obviously can’t do that) -
Clone all of the parts I want highlighted into a single container
(Cloning a bunch of parts on demand like that is not ideal for performance) -
Temporarily move all of the parts I want highlighted into a single container
(Mostly safe as long as the parts aren’t running interaction code, probably lots of risky caveats)
Currently I’m using the 2nd workaround, but it’s really awkward that I have to do this in the first place.
Possible Solutions?
While it’s not my job to offer a solution to this, I’d like to offer a couple potential ones worth considering.
- It would be cool if we could programmatically add and remove PVInstance targets onto a single Highlight instance. Maybe an API like this?
Highlight:AddTarget(target: PVInstance) -> ()
Highlight:RemoveTarget(target: PVInstance) -> ()
Highlight:GetTargets() -> {PVInstance}
- Highlights that share the same visual properties should be unioned together under the hood to reduce the chances of hitting the 31 ceiling?
Whatever works, I just really hope we can see this addressed soon!