Heads should support materials


#1

You currently cannot use materials with the Head because it is using the Head SpecialMesh. Developers have to manually create a new head to use materials.

  1. Make materials work with the Head SpecialMesh

or

  1. Replace the Head with a MeshPart with the asset rbxasset://avatar/heads/head.mesh (may break a lot of games and scripts)

#2

I agree this should be added to roblox in the future.


#3

I’m not sure why they don’t change it to a MeshPart. The current hit box is 2x wider than the head even is which is bad for shooter games.


#4

Any game that uses character.Head.SpecialMesh will break.


#5

oof forgot about legacy


#6

Why not allow them to toggle it sort of the same way you can toggle R6 and R15?


#7

Because adding an option for everything

  • Leads to property bloat where every change Roblox makes has a toggle
    • Developers have to learn and remember each property
    • Properties window becomes difficult to sift through
  • Complicates engineering work
    • Any change to heads now has to account for this setting, and similar for future toggle-able changes
    • Platform code is a garbage fire and it’s difficult for engineers to understand it as a whole
    • Easy to let bugs slip with so many edge cases
  • Adds a lot of edge cases developers creating public models have to account for
  • Makes it difficult to work with other developers (e.g. they use a certain configuration of options, and you use a completely different configuration. You use a mix/match of these configurations in your team game, and now your scripts constantly break because you expected a certain configuration but that wasn’t the case)

Properties should only be used for major changes. Generally if your answer to a problem is “Add a toggle!”, then the proposed solution isn’t suitable for enough users on the platform and you should think of a better proposal.


Set CFrame except for one side?
#8

Well, just putting the best idea I had out there. If it doesn’t work then it doesn’t work, I have no better ideas.

EDIT: Yeah the idea is kinda bad now that I think about it.


#9

On a side note, this feature request has a low chance of being implemented as-is. You should provide use cases for why you need to change the head’s material, and why creating a new head is extremely inconvenient to the point breaking games or convoluting the rendering pipeline by adding exclusive behavior to Head SpecialMeshes are preferable.


#10

I feel like making the r15 head a meshpart and keeping r6 as is (with an announcement that they’re changing it) would probably be the best way to do it if they were to


#11

To provide an example like EchoReaper suggested, if I wanted to make the character semi-transparent and blur the background behind them(like the “invisibility” in older 3d games) this isn’t possible with the head not supporting materials as I can’t make the character’s head out of glass.


#12

Why can’t you make the head transparent and use a fake MeshPart head made of glass welded to the original? Seems less bad than breaking games by switching to a MeshPart or adding rendering edge cases to the platform which cause problems like complicating engineering work mentioned earlier.


#13

Best option, I guess, although having to use workarounds like these for seemingly basic things in the name of legacy is always annoying.

It’d be great if we could have big updates being rolled out now and again, removing annoying legacy support, with big warning a few months beforehand. Like how Tix was removed.


#14

I believe the biggest and most obvious use case is changing the materials of the entire character for different effects. Creating a new head solely for this purpose is inconvenient and inconsistent.

“Inconsistent” because the SpecialMesh instance allows for every other mesh in the drop-down to be affected by materials; the head mesh is the anomaly.

While I offered two options as the second option may break games, I believe that Roblox should not make an effort to prioritize legacy support and ancient games over ease of development, upcoming games and constantly updated games. Roblox has given a time window in the past for these types of changes.