New property: Model.Visible

Yeah, that’s actually a problem with this method I just realized. I am currently trying to find a way to fix that.

1 Like

I believe you can parent it to a ViewportFrame that has existed since the last frame and then reparent it to its original parent.

1 Like

I don’t really understand what you mean. But I figured out that if you parent the Part to something like Lighting and then back to its original parent, it will be visible again.

1 Like

Bump, this would be an amazing alternative to, for example a for loop that checks if it’s a part, meshpart, etc and changes its transparency to 1. Scripting would be made a lot easier in that specific case. It would also be less resource demanding for larger models that lag the game.

1 Like

Another day, another use-case!

I want to create a type of “ghost player” so dead players can spectate others but the living players shouldn’t be able to see the dead ones. This isn’t an M Night Shyamalan movie!

There is no way to do this nicely. I have to turn all character parts transparent. Then I have to account for things that aren’t parts but still show up like classic faces or particles.

Please engineers. Think of the possibilities.

7 Likes

There’s a lot of them. Convenience and optimization if absolutely nothing else.

3 Likes

This is easily one of my favorite suggestions ever. This would be extremely beneficial to me and save hours of development time. It is super inconvenient to have to reparent objects to nil or ReplicatedStorage to toggle their visibility and have to adjust all of my scripts to account for the change in ancestry when I would much rather keep the objects under workspace.

One of my most recent use cases for this feature was when I was rewriting the code for my game Spray Paint. There is a feature where you can hide artwork, and it works by reparenting folders that hold art to ReplicatedStorage. Every time I referenced an art folder in other scripts, I couldn’t directly reference it in workspace and had to check for it’s existence in ReplicatedStorage first in case it was hidden. This may not seem like a big deal, but it becomes tedious when 90% of the scripts in my game rely on the paint layer system. Hours and countless errors could have been avoided if I could’ve simply toggled a property for model/folder visibility.

4 Likes

I agree. It would be much more useful and efficient than looping through the descendants of a model which shouldn’t be laggy but could become laggy depending on the amount of descendants in a model. Bump :+1:

The explanation provided by Daw588 is very comprehensible and detailed, mentioning examples of other platforms that have done this in the past, should definitely check out:

3 Likes

Just noticed how old this feature request is. Very surprising ngl.

2 Likes

They first mentioned the group join prompt one in 2014, if you want really old.

4 Likes

Surprised this isn’t even added yet. Kind of tired of using for loops to things invisible!

3 Likes

Very well put! I really wish they added this :pensive:

1 Like

yeessss this is a very valuable feature

I like this feature request, but why not just use the LocalTransparencyModifier property by setting it to 0 or 1?

Because that would require you to iterate through EVERY part in a model which can decrease performance by A LOT depending on the model’s amount of parts

1 Like

this seems pretty useful, just like how we can make UI elements invisible including their descendants

but with models! nice

1 Like

Performance wise, this feature is very needed, especially when Roblox is pushing out higher resolution images, PBR, detailed meshes, this stuff needs LOD and a custom one, not that “ModelLevelOfDetail” stuff which mostly ‘helps’ with really small decorations.