So basically, I’m using a loop that runs every 2 seconds to tween the parts of my character to random values. The behavior observed is that when tweening instances that have a Humanoid, a momentary lag spike occurs. It’s a very weird behavior, I wish it could just act normally without affecting game performance, even if it’s for a while. I’ve only tested with R15 as of now.
In the video below, I also show this behavior by tweening 3 characters, but without a Humanoid present in them, which basically doesn’t even touch the FPS at all.
I expect the tweens applied to character parts to run smoothly without causing any momentary FPS drops, regardless of whether the model contains a Humanoid or not. The performance should remain stable without any problems. In other words, the presence of a Humanoid inside the model should not significantly impact the frame rate during tween operations… not as that much to be honest. If that only happens by simply making a character invisible, now imagine 5-10 of them at the same time.
Just adding onto this - it appears a major regression has happened, previously (literally a week or so ago), rigs with humanoids unlinked to the character getting tweened had almost no performance loss, now, unlinked rigs are suffering the same sort of fps tanking -
local parts = {}
for _, v in pairs(Afterimage_Rig:GetDescendants()) do
if v:IsA("BasePart") then
if v.Transparency >= 1 then continue end
parts[#parts + 1] = v
end
end
local driver = Instance.new("NumberValue")
driver.Value = Transparency_Range.Min
game.Debris:AddItem(driver, 4)
local conn
conn = driver:GetPropertyChangedSignal("Value"):Connect(function()
local val = driver.Value
for i = 1, #parts do
parts[i].LocalTransparencyModifier = val
end
end)
task.delay(4, function()
if conn then
conn:Disconnect()
end
end)
local tween = ts:Create(
driver,
TweenInfo.new(0.03, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut, -1, true),
{ Value = Transparency_Range.Max }
)
tween:Play()
This work around helps achieve the same tween with little to no performance loss as a workaround for now - but not too long ago the regular tweening method was working without issue