Before I start, I’d just like to say I wasn’t entirely sure which category this belongs in but this seemed like the most appropriate.
I am a developer for a clothing group, we have a homestore to display a wide range of the clothing we provide. The problem we’re currently facing is a huge drop in FPS. I believe the shadows and/or large poly count of the humanoids are the cause of this problem, there are over 300 mannequins in the game.
Experience it for yourself here: https://www.roblox.com/games/2040496703/redirect
I’ve been struggling to think of a solution, so far I’ve come up with:
- Remove some of the mannequins, not desirable as we want to show off a large range of clothing
- Only render the humanoids when they’re actually visible (lag will still persist as there are lots close together)
- Remodel the upper and lower parts of the humanoid with a lower poly count but so that the shirt/pants texture still wraps onto it (I have no idea how I’d do this as I can’t even 3D model, let alone texture it )
- Remove humanoid shadows (not possible)
If you have any idea how I could do this, or could make one of my ideas work well please let me know. I’m stuck, but something needs to be done.
if you only intend to use R6 models with no body meshes, you could always try using surfaceguis and an imagelabel with the shirt id and cropping the image using the image size and offset properties to display the template as a shirt
Hey, thanks for the reply! I just tried this, but unfortunately it didn’t quite work.
At first, it all looked good. I was wrapping the images around the sides of the torso, and around the arms. It was looking great! I then came to do the shoulders and the top of the torso, and unfortunately the images were rotated 90 degrees clockwise. If I were to rotate the image by -90 degrees to make them display in the right orientation, the outside is no longer clipped and the whole template is shown.
The only way I can think of getting around this is by re-uploading every piece of clothing rotated by -90 degrees, which isn’t an idea situation when dealing with over 300 items of clothing.
Thanks for the suggestion anyhow, it sounded like a great solution.
Can you create a part that’s ever so slightly taller and narrower than the arms that’s rotated by -90 and use that for displaying the top and bottom portions of the clothing? You may not even need to change it’s size. Understandable this will double the part count for arms and torso’s but it may provide the solution you need.
Are you certain that the humanoids are causing this issue? Do you really need to display 300+ shirts in one game? It’s important to ask yourself this stuff when designing.
It definitely is the humanoids.
I removed the mannequins completely, the lag was gone. I put them back. I tried removing the shirts and pants from them to see if it was that, no change. I tried removing the humanoid from every one of them and the lag was gone completely.
@EndorsedModel I’ll give that a go, sounds like a good idea. I’ll let you know how it goes.
I’m not sure how this will effect your game but you could try turning on StreamingEnabled so it’s not trying to render 300 separate humanoids. Just spread them out a bit.
And like I said, do you really need that many in one game? It seems kind of excessive
Did you try using the microprofiler to see what is taking up the time each frame? That may give you some ideas on where to optimize.