Not a member yet? Why not Sign up today
Create an account  

  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
 
Weight Painting and Face Rigging tips?

#1
Tldr:
When I transfer weights to this mesh, each vertex group is the whole mesh. Every vertex group except for teeth top and bottom which I manually reassigned. I feel I like there something I'm doing wrong for Blender to do this. Also I have a strechy unweighted part I can't seem to get rid of as seen here.


Show ContentSpoiler:


Long Version:
So I finally decided to rig a mesh, but I ran into a couple of problems.

Show ContentSpoiler:

After Fitting my model and transferring the weights from an existing in-game model(Ibuki's C3), I got the model to be in the game, and I was largely happy with that. But as we all know transferring  weights never goes smoothly.

Show ContentSpoiler:


The face, particularly the mouth was all messed up. Her tongue was attached to her teeth which weren't (and still aren't) showing up. Looked bad. I figure out a way to weight paint by moving the tongue and teeth out, using the grab function in Blender. Weight painted, and exported the fbx. However when I imported the fbx into unreal, it said unweighted points for a number of vertices. This also made her look like this.


My Solution? I Highlighted the Bottom teeth, and assigned it to the bottom teeth vertex group. Did the same with the top teeth. Now this got Unreal to stop complaining about the weighted vertices, but she still has part of her mouth weighted to the root. And it looks like the gums to me, which are part of the teeth.

Show ContentSpoiler:


Also when I looked at the each vertex group, they all highlighted the whole model, not just the part that was weight painted. Every single one beside the teeth I reassigned. I have ZERO idea how to fix this. There are way too many groups with way to speicfic weight painting to do all manually. It worked for the teeth because there all 1 weight.

Show ContentSpoiler:

My question when I transfer the weights, is there some type of option so that it doesn't make each vertex group the whole model? Do I need to transfer weights in the model in pieces or by material? (I'm not sure how to do either of those things if that is indeed the solution). Is Manually the only way? How do I go about face rigging? Make my own bones?( which again not precisely sure how to do that given Street Fighters V's bone structures. Most online tutorials of blender I see rig models differently than what I see from Street Fighter V models.

Speaking of which, the reason I am asking here is because when I've asked for help on Blender forums, they're not sure exactly how to help because they don't really have the modding background to guide me the right way. So even though this more Blender specific, I think this should be the proper place for it, as I need to make sure this the export is right for Unreal

Thanks in advance.

P.S. I didn't have this issue when weight painting the bottom part of her 2-piece bikini. Worked without any problem, which is why this is just puzzling me.

Show ContentSpoiler:
Reply

#2
hey its my doa5lr mod Tongue

there was a way to specify what section of the mesh would get the weight transferred, but that feature has been broken for awhile. havn't tested it in 2.8 yet to see if they fixed it or not. my way around it was to make a duplicate of the destination mesh, minus the area you want to transfer and merge it with the mesh you want to transfer from. that way it will keep the weights for the rest of the parts.

but for this situation, I would just keep existing SFV tongue and teeth instead of trying to import new ones.
Reply

#3
(05-06-2020, 03:08 AM)bbb Wrote: hey its my doa5lr mod Tongue

there was a way to specify what section of the mesh would get the weight transferred, but that feature has been broken for awhile. havn't tested it in 2.8 yet to see if they fixed it or not. my way around it was to make a duplicate of the destination mesh, minus the area you want to transfer and merge it with the mesh you want to transfer from. that way it will keep the weights for the rest of the parts.

but for this situation, I would just keep existing SFV tongue and teeth instead of trying to import new ones.

@"bbb" 

It's a really nice model. Love the design. Strangely unique, yet maintain's Mai's unique "style" so to speak. Tongue 
At any rate, thanks for the fast reply. I am not exactly sure how to weight the mesh in pieces, other than selecting the piece, exporting it as an fbx. re importing it as a separate mesh, transfer the weights to that piece, then combine/join that piece with the target mesh? Would that work? I feel like I'm over complicating it. But the problem would still repeat unless I can specify which vertex groups get transferred, which I don't know how to do.

Oh I didn't know that feature had been a thing, let alone that it broke.

I could get the SFV tongue and teeth. I just have to redo the textures. If I do take those, I think I have to add another texture, which means the teeth and tongue would need another material, right? Right now Teeth and Tongue are apart of the face material which shares a texture with the face. Since I need to use the SFV texture I need another material. Things can get really complicated really fast.

But I'm out of material slots, so does that mean I need to go get another material from another character or slot?
Reply

#4
@"TripKing"

Thanks Smile i only made it for DOA5LR, the original design was by DragonLord

Just select the mesh in edit mode, then go to Mesh>separate>by selection. thats in 2.8. I think 2.7 had it in Vertex>separate>by selection if I remember correctly.

the feature that broke was simply selecting the mesh you wanted to be affected, then in weight paint mode turn on vertex selection masking and the transferred weight would only go there.

the teeth and tongue textures are small so they should be easy to put on the doa texture. though you can keep it a separate material and texture if you want. doesn't matter about material slots, just make a copy of the original material and rename it to a new material that is last in the list. It's not a colourable part, so making it a new material slot wont be an issue.
Reply

#5
(05-06-2020, 04:12 AM)bbb Wrote: @"TripKing"

Thanks Smile i only made it for DOA5LR, the original design was by DragonLord

Just select the mesh in edit mode, then go to Mesh>separate>by selection. thats in 2.8. I think 2.7 had it in Vertex>separate>by selection if I remember correctly.

the feature that broke was simply selecting the mesh you wanted to be affected, then in weight paint mode turn on vertex selection masking and the transferred weight would only go there.

the  teeth and tongue textures are small so they should be easy to put on the doa texture. though you can keep it a separate material and texture if you want. doesn't matter about material slots, just make a copy of the original material and rename it to a new material that is last in the list. It's not a colourable part, so making it a new material slot wont be an issue.

@"bbb" 

So question. If I just separate a part of the source mesh say the tongue, and then did the same separation on the tongue with the destination mesh and then just transferred the weights between those to now separate tongue meshes then recombined them with there respective original meshes, would that work?

Would it solve the problem of the each vertex group being the whole mesh, because that is my main problem. Also not sure how to separate a mesh only how to combine them. (Ctrl+J)
Reply

#6
@"TripKing"

yes, that would work.

to separate the mesh, Just select the mesh you want to separate in edit mode, then go to Mesh>separate>by selection. thats in 2.8. I think 2.7 had it in Vertex>separate>by selection if I remember correctly.
Reply

#7
Small update, I finally figured out how to overcome the weight issue in the mouth, teeth and tongue area. I simply separated each part and weighted them separately. You can see the teeth are separate from the tongue and the lips, (Although I think I should move them and/or scale them)

[Image: SJw6hBj.png]
However, I'm still getting the model to make every vertex apart of every weight group. I'll explain. You can see in a normal character model from the game the f_Cheek_1 group is only a small amount of vertices.


[Image: H3THYRs.png]
 But when I transfer the weight, ( even if I do each part separately or not) it makes every vertex apart of every vertex group. like in the screen shot below

[Image: K1dS7WM.png]

I currently don't have any clue how to fix this. I'm looking into making a python script that transfers weights only to vertexes in proximity. ( Again it's something I have to put time into learning) Or a script that sorta cleans up after transferring weights. Selecting vertices that are very close to zero. Doing so in blender either makes the vertexes weight 0 or 1. Weight painting is needed to do anything else as far as I can tell, which I'm not doing.

I think this is why my model looks "blocky" in game. (To be clear I selected Shade Smooth). Here's a couple of screens shot of the slightly "blockyness"

[Image: gYuOHLm.png][Image: Xw1LcM2.png]
I think it's the result of the transferring weight function selecting every point for every group causing this effect. ( Shot in the dark honestly, but it's all I got)

I'll continue working on it though.
Reply

#8
I actually figured a very simple solution to that all selected vertex problem. All you have to do is use the clean command under weight paint mode. Really simple. I'll put screens in a spoiler.

Show ContentSpoiler:
 But unfortunately that didn't solve my "blocky" mesh problem. Now if I recall I seem to remember when I first imported the obj file it was split in the same places where it looks "blocky" now. I think this might be an issue with exporting the obj file from XNALara or import said obj file to blender or exporting the obj file as a fbx. I'm not sure. @"bbb" is there something I should keep in mind when dealing with obj files or XNALara that I'm not aware of?

Because where I see where the mesh is "blocky" is exactly where it was split when I first started working on it. But for the life of me I cannot replicate that look in blender anymore. I always looks smooth in blender, yet it always comes out blocky in game.

[Image: KFyr1or.png]
[+] 1 user Likes TripKing's post
Reply

#9
@TripKing

you need to remove doubles in the mesh. in blender 2.7 or below, there should be a remove doubles button on the left. click that after selecting those vertices in edit mode (make sure to select them while in x ray). in 2.8, its under vertex > merge vertices > by distance
[+] 2 users Like BBB's post
Reply

#10
(07-07-2020, 03:39 AM)bbb Wrote: @TripKing

you need to remove doubles in the mesh. in blender 2.7 or below, there should be a remove doubles button on the left. click that after selecting those vertices in edit mode (make sure to select them while in x ray). in 2.8, its under vertex > merge vertices > by distance

@"bbb" Wow thanks for the advice. Looks a lot better now. I assumed I have to play with the "Merge Distance" value to get it looking where I wanted it. (using 2.5 as my distance value in the pic below)
I can still sorta see the seems but definitely an improvement. (The hands looking fat is my fault, I positioned them to be like the Ibuki model and I couldn't quite line it up correctly in XNALara) 
[Image: TwcUWAH.png]

I assume the skin (texture) just needs the SRMA and SSS files modified to look better. In XNALara they look fine it just when I port them over to unreal do they look more low quality. Been looking into BrutalAce's tutorials on textures but it's a slow process as usual.

Show ContentSpoiler:
[+] 1 user Likes TripKing's post
Reply

#11
@"TripKing"

sss should be easy. just look at another as an example and just eye drop that one red color and apply it to the skin. you can copy and paste some veins if you want as well. same with the srma, just apply the green color to the whole skin, however, the srma also involves an alpha channel. that can be made by making a texture grey scale, and playing around with the levels in photoshop.
Reply



Forum Jump:


Users browsing this thread:
1 Guest(s)