Dynamic head not applying to humanoid via humanoid description

Hi there!

I am trying to render a dynamic head loaded from the catalog onto a default rig inside of a viewport. To summarize, I have a rig already made. I currently get the asset ID for the dynamic head, set the .Head property of the description to the ID, and then call Humanoid:ApplyDescription() with it.

The ID I am using is 11748988354, which belongs to this dynamic head. After calling apply, no errors are raised. However, viewing the model in the viewport shows it is still using the default head, as shown below.

Copying the model into the workspace as well shows the model without the dynamic head I have given it. Equipping the head on my avatar and comparing the model hierarchies shows no difference that should affect the functionality, also shown below.

Rig’s humanoid:

My humanoid:

What is confusing is checking both heads in both models shows that the heads are almost entirely different setup wise.

Rig’s head:

My head:

The only thing I can think of is that the rig is using a MeshPart for the limbs instead of a normal part, but that seems like a really weird reason the head doesn’t apply; plus, the humanoid is applying a description so there should be no reason it doesn’t apply the same way my avatar does when the playerModel loads.

Also of note, both HumanoidDescriptions and BodyPartDescriptions have the same exact dynamic head ID that I mentioned earlier, so it isn’t the ID that is the issue.

Am I misunderstanding how I apply heads / descriptions? Is there something I am missing?

Haha I might be stupid, but I figured it out.

I believe it has to do with the fact the rig I am using was created with the rig creator, and that my player model is created with something completely different.

This is what ended up working for me!

local desc = Instance.new('HumanoidDescription')
desc.Head = 11748988354
local model = game:GetService('Players'):CreateHumanoidModelFromDescription(desc , Enum.HumanoidRigType.R15, Enum.AssetTypeVerification.Always)

model.Parent = workspace

This created a model more similar to the player, and I think the fact the head is a part with a special mesh and not a MeshPart is why it wasn’t applying correctly.

Side note, this should also work with individual limbs. I should have tried figuring this out harder before posting this lol

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.