Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Lab Assistant
#26 Old 8th Jul 2010 at 9:40 PM
With the Unimesh bone tool I'm able to change the joint weights, but Milkshape's 'Vertex Weight' section also fails for me. So this is rather a Milkshape bug because I can't see how this would be related to Workshop.

Minisite

TSR Workshop
A Custom Content Tool for The Sims 3
Advertisement
Sockpuppet
#27 Old 8th Jul 2010 at 11:03 PM
Did you try to export the reassigned bear out of MS and import it back into TSRW?
Then check the boneweights on the mesh in TSRW( i didn't as i thought its a importer exporter issue)
Lab Assistant
Original Poster
#28 Old 8th Jul 2010 at 11:27 PM
Teko, my original issue was before I even started using s3pe, I was assigning my mesh based off what I exported from WS. When I loaded it into the game, the objects disappeared as soon I clicked the play button in live mode.

I posted pics of how workshop ordered the joints. I changed absolutely nothing on the joints. All I did was mimic the assignments onto my mesh. When I import the mesh from S3PE the joints are in a different order as you can see in the pictures. Naming a few specific joints on the original mesh:

From WS, joint 0x736C32C2(magenta) is assigned to the entire body, joint 0x2AB90C33(yellow) is assigned to the head, joint 0xAA25EED7(green) is assigned to the chest, back, and around the waist, joint so-on and so-forth, list goes on.

From s3pe, joint 0x736C32C2(yellow) is assigned to the head, joint 0x2AB90C33(green) is assigned to the right head, joint 0xAA25EED7(drk. blue) is assigned to the left foot, joint so-on and so-forth, list goes on. Even the color codings are different.

I re-assigned my mesh according to the S3PE order and imported into WS. To see if it changed upon export from MS, I imported it back (without imported into WS first) into MS, and nothing had changed. Then I imported the mesh into WS, exported it back out of WS, imported it into MS, and that was when the assignments changed. (see picture below) I even tried to look at it in the game and it still disappeared.

I've uploaded the .package file as well as my MS backups so you can see what I see. Right now I'm trying to see if the objects works by making it with s3pe, but because I've never used until now, I have to follow the tutorials.
Screenshots
Attached files:
File Type: rar  MyMesh-Backups.rar (100.0 KB, 6 downloads) - View custom content
Description: My backups of the meshes in MS format
File Type: rar  Teddy-MS-Backup.rar (141.8 KB, 7 downloads) - View custom content
Description: Original Mesh backups in MS format

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Lab Assistant
Original Poster
#29 Old 9th Jul 2010 at 12:05 AM
Quote: Originally posted by Base1980
Did you try to export the reassigned bear out of MS and import it back into TSRW? Then check the boneweights on the mesh in TSRW( i didn't as i thought its a importer exporter issue)


I've tested the import/export theory and nothing changed until I imported back into WS, exported from WS, and imported back into MS. The weights had not changed but the joints themselves did.
Attached files:
File Type: rar  Eris3000_SesameStreetElmo_07072010_359.rar (82.8 KB, 7 downloads) - View custom content

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Sockpuppet
#30 Old 9th Jul 2010 at 11:14 AM
I responded on Teko's post, srry
But did the joint order change or the names?
You might try to change the joints name to fix it but still its a error that needs to be fixed.
Lab Assistant
#31 Old 9th Jul 2010 at 11:40 AM Last edited by teko : 9th Jul 2010 at 3:33 PM. Reason: Changed TSR Workshop 2.0 link
I now understand why the joints were completely messed up on your second attempt. It's because S3PE provides a completely different joint order than TSRW. And as far as I know TSRW doesn't go actually after the joint name, but which position it has in the Workshop-ordering.

However the problem of course remains.

Question: Did you assign all bones to the teddy or did you intentionally leave some out? Because I'm about to blame the SKIN chunk … again.

Edit: I just checked myself and all joints are assigned – but the Vertex Weight doesn't give any results, as well the Unimesh bone tool. I need to investigate further.

Edit2:
I'm afraid I cannot confirm this. Look:

(This is made with TSR Workshop 2.0)

It's perfectly animated and doesn't disappear. Be extremely careful with the whole body joint.

Minisite

TSR Workshop
A Custom Content Tool for The Sims 3
Sockpuppet
#32 Old 9th Jul 2010 at 3:21 PM
The whole body joint is the root bind.
If you reassigne the bear assigne it like a bodymesh and assigne the root bind as 4th bone without any weights, should do the trick
Lab Assistant
Original Poster
#33 Old 9th Jul 2010 at 11:10 PM Last edited by eris3000 : 10th Jul 2010 at 12:35 AM.
I put the whole body joint in the 4th space, I just can't figure out what I'm doing wrong. Is 2.0 the latest version?


Edit.
Okay, so when your assigning more than one joint to a vertex, what steps are you taking?

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Sockpuppet
#34 Old 10th Jul 2010 at 1:58 AM
2.0 is indeed the latest, came out yesterday.

Assigne the head to one bone(100% weight, or 99%) and put the root bind bone on the 4th spot(no weight, or just 1%)
Do the same with the arms/shoulders/legs etc etc.
then test it ingame.
If it works you can finetune the bones on the seams(were the waist meets the pelvis/ the legs meet the calves etc)
Lab Assistant
Original Poster
#35 Old 10th Jul 2010 at 9:39 PM Last edited by eris3000 : 10th Jul 2010 at 10:13 PM.
SUCCESS!


Okay, basically what I did was took advantage of the TSRW to S3PE plug in to assign the joints, and import the mesh into WS, and behold, everything worked perfectly! Looking back on my sims 2 days, .asc format is one that handles joint well, so that may have had a lot to do with. Thanks to everyone who help me I appreciate it very much. Until next time; gonna finish the others now!

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Sockpuppet
#36 Old 11th Jul 2010 at 4:51 AM
Looking great!!

I made a attempt myself and you can do all the work with TSRW(2.0) and Wes his bonetool.
Took the medium detail meshes from the toddler and made a doll for my kid.

Screenshots
Lab Assistant
#37 Old 11th Jul 2010 at 10:44 AM
Congrats you both!

Finding out about those root binds leads me to the question, if a joint can be a type of:
  • Transformation/Rotation
  • Transformation only
  • Rotation only

On the teddy bear we have the joint situation:

100% Rotation joint
Root bind Transformation joint

On doors (not sliding doors) however the following situation:

100% Rotation joint
Root bind Rotation joint

And on the door frame:

100% Transformation joint
Root bind Transformation joint


What purpose does the root bind have?

Minisite

TSR Workshop
A Custom Content Tool for The Sims 3
Sockpuppet
#38 Old 11th Jul 2010 at 12:52 PM
The root bind is the main joint, all others are connected to it.
When selected the whole skeleton gets selected.
If you import a GEOM file with Wes his importer in Milkshape you can view the full skeleton and see wich bones are linked.

Strange thing is that bodymeshes imported with his importer dont have the root bind joint assigned while bodymeshes imported with the WSO importer have.
Both work fine tho
Lab Assistant
Original Poster
#39 Old 16th Jul 2010 at 3:42 AM
Last question and I'm going to leave you all alone for now; I promise . How come my poly count nearly doubles with S3PE than with WS?

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Sockpuppet
#40 Old 16th Jul 2010 at 12:26 PM
I can not imagine your custom mesh changes polygons.
Maybe one still display the original poly's from the bear?
Were did you find its ammount of polygons?
Lab Assistant
Original Poster
#41 Old 16th Jul 2010 at 7:57 PM
The polygon count is displayed under each group tab beside "mesh". The original bear is 848 vertices and 1142 faces, in WS, my mesh is 776 vertices and 948 face, but in S3PE my mesh is 1245 vertices and 948 faces. Could S3PE be counting the MLOD, MODL, MLOD_10000, and MLOD_10001 all together?

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Sockpuppet
#42 Old 16th Jul 2010 at 11:49 PM
So the polygons are the same, only the vert increased.
This could be due the exporter.
You used Wes his importer/exporter?(or has S3PE its own for Milkshape.?)
You should ask Wes this, he prolly knows why.
Lab Assistant
Original Poster
#43 Old 17th Jul 2010 at 12:24 AM
I use Wes's. Thanks!

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Alchemist
#44 Old 17th Jul 2010 at 9:34 AM
Vertex splits.

In MilkShape (and some other programs) there is a method used that allows a vertex to have more than one UV location.

The game uses a method that requires each vertex to have only a single UV location.

The explanation of why is too long, both methods have advantages and disadvantages, but part of it goes to how DirectX was designed. So we can blame Microsoft if we want.

The exporter reconciles these differences by 'splitting' the vertices, meaning extra copies are made with one UV each. Note that you will always have to have some duplicated, because to texture properly there need to be some seams, and the splits occur where these seams are.

However, don't sweat the vertex counts. The main impact a mesh has on performance is the face count, because each face must be drawn to be visible. Vertices, while they require some amount of memory, do not render. The time required to render all the faces in a scene is what limits the frame rate.


On a side note, I dragged out my source code to look at how I wrote the Object plugins for MilkShape. Unlike the GEOM plugins, the vertex weights have been coded to single-weighting. Regardless of what you do with the BoneTool, only the first joint will be exported, always weighted at 100%.

The only reason for this was typically objects use rigid binding (fully weighted single assignments). If I understand this thread correctly, there are object meshes with multiple assignments and weightings. So I am trying to set aside some time to make those changes. More so than actually writing the code, testing requires a lot of time to do. Creating some test models is a big part of this.

If I had some testing volunteers (wink, wink, nudge, nudge) I could probably get this change cranked out sooner rather than later. It is possible to make a set of test plug-ins that will not 'overwrite' the existing ones, which is what I would propose to do, assuming I see a few hands in the audience go up.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Inventor
#45 Old 17th Jul 2010 at 11:39 PM
Wes, although I do not really understand what you will need me to do, I raise my hand to volunteer. Your tools are always so awesome and I think this will be usefull with conversions and animations too?
I guess we need to find some more objects with multiple assignments and weightings to use for testing?
Alchemist
#46 Old 18th Jul 2010 at 12:40 AM
Regression testing is important, too. Meaning that ordinary single-weighted objects (that worked before) don't break because of the changes.

If you like to say what you think, be sure you know which to do first.
Lab Assistant
Original Poster
#47 Old 19th Jul 2010 at 3:22 PM
Just tell me exactly what I have to do and I'll be happy to test for you.

My true dream is to: *get into the medical field *speak fluent Japanese and Spanish
Alchemist
#48 Old 19th Jul 2010 at 11:40 PM
OK, here is a modified test version of the MilkShape object plugins that will handle up to three assignments. I checked that they seem to work fine with single-assignment objects here. The added weights are managed the same way as with the GEOM plugins, but weight #4 is, at this time, disabled until I can get some verification that it works the same as the GEOM plugins (there are only three weights slots, so I am not sure).

These plugins have different names than the release V1.00 plugins, so when exporting look for "Test 1" in the name... the existing plugins wll still be there. What I want is to test your bear, and some other projects that already worked, and see that they work using these plugins. I am especially concerned that we test some projects that worked with the old ones to make sure they can be recompiled and work in-game, otherwise I will not release them until that happens. I also expect them to help on teh multi-assignments meshes, too, so we need that tested.

Let's just use this thread for test results, if it works, I will release it on the main thread for the plugins.

Thanks for the help.

<* Wes *>

Oh, yeah, just unrar the file and put the results into your MilkShape program folder, like always, These are the same as any other MS plugin, except for the name and the code tweaks.
Attached files:
File Type: rar  S3ObjMSPluginsTest1.rar (15.5 KB, 17 downloads) - View custom content
Description: Test version of MS Object import/export plugins

If you like to say what you think, be sure you know which to do first.
Alchemist
#49 Old 20th Jul 2010 at 2:54 AM
I tested on a painting I made using the old plugins. Everything came out fine. The one made using the standard plugins is on the right and the one made with the new plugins on the left. The catalogue shows that one is a test:



Is this what you mean by testing old projects? If so, this is working fine.

What is a multi-assignment mesh?...is that not the bear?
Alchemist
#50 Old 20th Jul 2010 at 5:42 AM
Yeah. I had only seen objects with a single joint assignment per-vertex. That is usually normal, because objects are usually sharp, hard things with hinges that bend at hard angles. Sims are soft, they use multiple assignments at the bend points, so you get more organic bending (the trick is learning how to vary the weighting as you move across the transition point to get gradual, instead of sharp transitions). So the way that you make clothing meshes involves multiple assignments.
The bear is a clothing sort of item, but I had coded the Object Plugins for Maya to only use single assignments. The GEOM plugins will use single or multiple, depending on how the mesher assigns them. From all I have seen, most objects will come in with single-assignments, and stay that way unless you take some positive action (using the BoneTool) to change that.
Your test would validate that that is happening properly. One thing I don't want to do is make changes that will make using the tool the old way any different, because it is hard to get the word out. And I would not have so readily worked on this if it changed anything in the ObjTool code itself, because that would require coordinating with the Blender people also. However, the decompile/recompile copies the data as it is in the binary files, the difference was in the code that gets that data into and out of MilkShape.
I will wait for some more testers to report, especially with the multiple assignment part. But I was worried that I would break something, and while that is still a possibility, I can at least go to bed tonight knowing I didn't ruin everything (and of course the original plug-ins will still be available for everyone until this is proven out or scrapped).

Thanks for the help, oh blonde wonder.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Page 2 of 3
Back to top