Is it possible to make hair physics?

Maybe its hard but ı just wondering , is it accualty possible to make hair physics?
Physics, such as the player’s hair shaking or moving.

9 Likes

Yes, but it will probably not be very beneficial in terms of performance.

3 Likes

So are there any disadvantages?

1 Like

It might lag and also might be very buggy.

1 Like

So is this a situation in general or based on the characteristics of computers?

1 Like

Yes it is possible, very difficult, but I have seen it be done before.

2 Likes

Simulating 50+ hairs (a detailed haircut) might give you performance issues.

You can do that with Mesh Deformation, but you’ll have to learn how to use it properly. You would then have to calculate physics(which may be performance intensive) by using a lot of math.

Some things to take to mind:

  • You can’t really create mesh deformation in runtime
  • You would have to know a decent amount on modelling
  • Lots of math
3 Likes

100% recommend NOT doing this, but it is possible.

1 Like

It is definitely possible, but it is quite difficult. Simulating hair requires quite a bit of knowledge as @VegetationBush pointed out. You should use skinned meshes to save performance if you really want to try this. The performance mainly relies on the amount of hairs that you will have to process each frame. Luckily, computers are made to do math so you can probably write a program that is reasonably performant.

1 Like

My mathematics is very good for my age, even though I haven’t learned physics at school,but I have always studied physics since a very young age, and I did research on physics
So my mathematics and physics are good, but I do not think that I will use the numerical data that I will use in coding as well as in real life.

Here’s what I’m thinking. 2 options

Have a table of textures, each texture should have an offset to the previous texture, so that when iterated they look like a video. Have a loop go through the images and the result would be a video of the textures on the hair.

Option 2:
Same thing as option 1 but with meshes being iterated and not textures ( which would look like actual hair moving )
I prefer option 1 for performance compared to option 2.

2 Likes

It really depends on your skillset. You will have to be able to:

  • Have a good understanding of Lua
  • Be able to read computer science papers and or articles about simulating hair
  • Use Blender for designing a skinned mesh that can be used for simulating hair

I recommend you to perhaps focus on something easier, cause simulating hair physics is really difficult.

1 Like

I understand how hard it is, I think you are right

The problem is that the real world is a really sophisticated piece of art. Maybe you can start with more unrealistic and simpler hair first.

1 Like

No, not really, and it depends on what you mean by “hair physics.”

If you mean realistic hair physics like the ones you might see in Unity where the hair is able to flow and fall with gravity, it can part and thin out depending on position, maybe even render hair by hair, then no, absolutely not. Roblox’s physics engine isn’t built for something like this.

Despite this, if you put your mind to it, yes, you probably could make some sort of system using meshes or decals. Roblox’s physics engine isn’t very complex (at least in my experience) because it usually deals with larger, rigid objects, meaning in order for these hairs to bend you’d need to use mesh deformation, as someone else mentioned, or you’d need to chain a ton of little tiny parts together for each hair strand and you’d need to script them in a way that they behave like real hair. If you managed to pull this off it probably wouldn’t look very good, it would completely tank lower end computers if it even loaded into the workspace at all, and it would likely render your game unplayable to a lot of people.

The best result you could probably get is something like this, but even then as I mentioned before it doesn’t look very realistic and it would require a lot of effort and programming knowledge to pull off.

I would reccommend focusing on something else.

If you are willing to drop your game’s performace that low, I think what you’re looking for is Skinned meshes

1 Like

can u show me how pls ? [quote=“GoteeSign, post:6, topic:1181934, full:true”]
Yes it is possible, very difficult, but I have seen it be done before.
[/quote]

can u show me pls ?

Yes, it’s very easy and absolutely not laggy, all you need to do is rigging the hair in blender, separate the mesh in parts and name each after the bone, import the rig into roblox using the custom rig importer, then you just need to join everything with some attachments and ball socket constraints and you’re done, remember that it adds weight to the character so it will look bad

7 Likes