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!
Test Subject
Original Poster
#1 Old 19th Oct 2009 at 2:30 PM
Default many codes of joints in a mesh (.model)
Hi,

I saw for example in a mesh of a lamp, that they is 4 codes for the joints in the model mesh. Do anyone know what they deserve and how we can use it?
Thanks
Advertisement
Inventor
#2 Old 19th Oct 2009 at 2:42 PM
That is interesting, Anouschka, what lamp was that?

I think these joints can also be used as point to/place for animations and this lamp can have some kind of multistate on/off that can be triggered by game animation/ action of the sims.
Are there more MLODs, groups and or UVtextures in this mesh?
Test Subject
Original Poster
#3 Old 19th Oct 2009 at 2:52 PM
I join the original mesh if you want to look.
There is in fact 2 files with 4 different joints codes : in the model + in a .lod.
I try to create a lamp but I have a problem with the lighting. I want to modify the place of the lightbulb and I wonder if there is an joints issue or something else. I don't know.
Attached files:
File Type: zip  Anouschka_LightingFloorLuxury.zip (294.8 KB, 10 downloads) - View custom content
Description: original mesh
Inventor
#4 Old 19th Oct 2009 at 3:29 PM Last edited by Cocomama : 19th Oct 2009 at 4:06 PM.
I opened the mesh in Milkshape and you are right, 4 joints in the MODL and with SelAssigned they do not show any vertices assigned to it.
I tryed all the IMG textures on it and interestingly, with applying one of them (...............D860 lighting floor.........) you can still see the lightbulb and the rest of the lamp dissapeared.
My guess is that the lighting when the lamp is on, comes from this lightbulb with its own texture??
Mmmm, don't know either, maybe you can try modify the place of the lightbulb in/with the mesh, and there is no need to change anything else?

Edit:
Oh, oh Anouschka, I found this in my collected info:

question:-Is it possible to change the position of the insertion point (the tiles on which the base of my lamp sits)? I moved the joint but it doesn't seem to make a difference to the final object appearence.

Wes_h
The joint move does not get transferred to the mesh file, it would have to be changed in the _RIG file.
I think that you need to make changes to the RSLT to position your lamp at other than 0,0,0.
-----------------
I found this info somewhere here in the meshing forum but don't know where anymore. :D
Alchemist
#5 Old 19th Oct 2009 at 5:29 PM
CD68F001 is the "transformBone", very common in objects.
D0DECA8E is the "offsetBone"
DBCDD9D9 is "_slot_0"
I could not find what FEAE6981 was named.

The mesh format used for this item has no slots for assignments, so any assignments you made would not have been able to be stored in the .lod file... issues with the rest of the lamp disappearing must be related to something else. This is also why "SelAssigned" shows no joint assignments, there are none possible, and this object must have other ways it is managed by the game, since it works and was deliberately made that way... these is probably some script code that works the light.

If you like to say what you think, be sure you know which to do first.
Inventor
#6 Old 19th Oct 2009 at 7:13 PM
That CD68F001 is in all the MLODs too and the MLOD 00010001 has the same 4 joints as the MODL offcourse.

Do you mean that for this kind of objects,(only lamps?) with originally no vertices assigned to the joints listed, it has no use to make an assignment of the whole mesh to one joint?
Maybe even we should not do it at all?
Because it will not be stored when saving, like with the dropshadow?
If we would convert a lamp from TS2 to TS3, how can we make sure it will contain these "lose" joints?

Anouschka wants to change the lightbulb, she would still have to change the mesh and then look for a script code? Where?

Wait a minute, are you teaching us what to look for, but let us find it ourselves so we will learn more in doing that?

OK, lets play along that way, but please remember English is not my native language, and Anouschka is French.

Do we have to look in the OBJK with GRID -Components-collection 6-?
Hot or Cold?

Or are you talking about that Componentdata-Collection:2-CDTstring-Sims3.Gameplay.Objects.Lighting.Mimics.Lightingfloor
Alchemist
#7 Old 19th Oct 2009 at 9:13 PM
If you convert anything from TS2 to TS3, you will need to use a proper base with the correct joints, because without them the mesh will not recompile.

You should study and follow the original mesh layout. Most items with multiple joints have the bone assignments split between them, for example the crib has the main part assigned to the root bone, and the side assigned to a joint that in the game moves up and down to raise and lower the side.

You can visually see this easily by setting the checkbox "draw vertices with bone colors" (on the joints panel). Each part of the displayed mesh will be colored based on the joint assignments.

So, for the crib example, if you remake it, you need to assign your new side part back to the joint it used in the original if you want the animation to work (and the rest to the root).

In the case of this lamp, there are no assignments to import. The MilkShape plugin will insist that you assign some because it has joints, but the recompiler will ignore them because the original has no assignment slot.

I don't know how to explain it any further without getting really detailed about the bits and bytes. The ObjTool remakes the items the way the game items were originally built... if it worked that way in the game, it should stay that way in your remeshed/retextured items.

If you like to say what you think, be sure you know which to do first.
Inventor
#8 Old 20th Oct 2009 at 12:25 AM
OK, master Howe no play, I will study!

Thanks for the nice explanation.

The game handles this lamp here in the OBJK?
Componentdata-Collection:2-CDTstring-Sims3.Gameplay.Objects.Lighting.Mimics.LightingfloorLuxury

I did not find that RLST yet, is it also in the bowels of the package?
I'll look for it tomorrow, need some sleep now
Test Subject
Original Poster
#9 Old 20th Oct 2009 at 3:32 PM
Hi OM and Wes,

Thanks for your comments on this assignments things.
I had also read something about RLST but could not find it in the package.
I keep looking for.
Inventor
#10 Old 20th Oct 2009 at 3:55 PM Last edited by Cocomama : 20th Oct 2009 at 4:15 PM.
I must have been sleeping already, its RSLT not RLST!!
RLST= Remote Landing Site Tower

And no, sorry I have not find RSLT yet.
Maybe it is some short for Resource SLoT?

Edit:
Found it in the Wiki, yes it is the slot definition.

Tweaks the position, scale, and orientation of slots/bones per outfit.

0x0355E0A6

Format
--Scenegraph Header

DWORD Version
DWORD Count
- repeat
DWORD hashed slot/bone name
FLOAT X offset
FLOAT Y offset
FLOAT Z offset

FLOAT X scale
FLOAT Y scale
FLOAT Z scale

FLOAT X (quat)
FLOAT Y (quat)
FLOAT Z (quat)
FLOAT W (quat)
Alchemist
#11 Old 23rd Oct 2009 at 1:19 PM
This is only tangentially related to the topic at hand so I apologize for posting it here but I didn't want to start a whole new thread just about this little vertices issue.

When I assign bones I don't get the bone error message anymore. But I am still getting the vertices split message. Is this something I need to worry about and if so how do I avoid getting it? Is there some simple way that doesn't involve tricky details?

OM
Forum Resident
#12 Old 23rd Oct 2009 at 1:25 PM
OM, I found that using the "Clean" command from the tools menu before exporting, solves this issue. I'm not sure what it does exactly though
Inventor
#13 Old 23rd Oct 2009 at 4:15 PM
Lemoncandy, this is what the Help text from Milkshape says:

Clean
When invoked this tool will remove all duplicate polygons in the model. This is helpful as it reduces the polycount and its near impossible to spot duplicate polygons in your model.
Field Researcher
#14 Old 23rd Oct 2009 at 5:51 PM
Quote: Originally posted by lemoncandy
OM, I found that using the "Clean" command from the tools menu before exporting, solves this issue. I'm not sure what it does exactly though

Oh, that's useful! I had no duplicate polygons but duplicate vertices in my meshes. In one mesh I have reduced them from 288 to 194.
Alchemist
#15 Old 24th Oct 2009 at 12:05 AM
Whoa...how are duplicate vertices getting into the object to begin with? I'm glad to know how to get them out but I just don't get how they ended up there.

Thanks LC and CM...it's always good to find out a way to reduce polys.

OM
Forum Resident
#16 Old 24th Oct 2009 at 12:08 AM
I actually never get duplicate polygons. The message after using Clean always says "0 triangles removed." But it does do something to the vertices.
Maybe merge the ones that are welded anyway? I thought those count as one after welding...
Alchemist
#17 Old 24th Oct 2009 at 12:38 AM
I just tried it and it said the same thing to me...0 triangles removed. But I see what you mean that it does something to the vertices...the thing looks a little different than it did. Hopefully this will not affect it in the game.

It would be nice to know what is actually going on after hitting that button but as long as it gets rid of the error message I'm feeling better. I don't like the error messages.

OM
Alchemist
#18 Old 24th Oct 2009 at 2:27 AM
The vertices split message is informational, rather than an error. It means that the exporter added vertices while exporting (it does not change the model in memory, just the data written to disk).

The vertices are added for any location where there are two (or more) different UV values for any single location. This can happen along the edges of the items in the UV map. Even when mapped as a single item wrapping around a cylinder, there has to be some location where the left and the right edges come together on the 3d model, that row needs to be separate vertices at identical locations, one with the left UV and one with the right, not a shared vertex (welded). Making a model with the seams welded is not wrong, but it cannot be placed in the game that way, it is a design choice related to DirectX. The exporter knows how to fix it, and when it does this it displays the number of vertices that had to be added.

I was unaware that the Clean function fixed this condition, and I think you are better off having your model with all of the "seams" split, rather than depending on the machine to do it for you... the software can't really "see" the result, it just follows a set of rules that should work, while when you have cleaned the model beforehand, you can see that it is right.

If you like to say what you think, be sure you know which to do first.
Alchemist
#19 Old 24th Oct 2009 at 2:37 AM
For a second there you were talking my language...this part:

"This can happen along the edges of the items in the UV map. Even when mapped as a single item wrapping around a cylinder, there has to be some location where the left and the right edges come together on the 3d model, that row needs to be separate vertices at identical locations"

I understand that.

This part is where you lost me:

"I think you are better off having your model with all of the "seams" split, rather than depending on the machine to do it for you... the software can't really "see" the result"

Are you saying that it is better to accept the split vertices message than try to make it go away? If so then why is that message there?

I ignored your error messages to my detriment before Wes and I don't want to make the same mistake again...it is less than pleasant Just plainly state what I should do and I'll do what you tell me. But this message is confusing me.

OM
Alchemist
#20 Old 24th Oct 2009 at 2:46 AM
Quote: Originally posted by orangemittens
Are you saying that it is better to accept the split vertices message than try to make it go away? If so then why is that message there?


Actually, I am saying the opposite.

Although the message is more information than an error, it is saying that the software had to change your model to fit it into the format the game requires. I hate software that just changes stuff and doesn't tell me, so I tend to write programs that lean more toward "full disclosure" .

But if you use clean, and the results are good, and you get no "vertices split" message afterward, then you know that one less step had to be performed to get the mesh exported, and that's one less link in the chain that could break.

If you like to say what you think, be sure you know which to do first.
Alchemist
#21 Old 24th Oct 2009 at 2:59 AM
The programmer mind and the language y'all use is a source of endless fascination to me...lol.

But ok...you're saying the opposite...which is that we *should* use this Clean function before saving the object...right?

I'm sorry to ask again but I just want to be sure. Before I thought it was ok to ignore the bones error because the object looked ok in the game and that ended up turning out badly. I can't see the big picture here...I can only see the rules you set out based on the experience you have.

When you said before that we're all stumbling around in the dark I think that wasn't completely accurate. You're walking through the dark room with a flashlight and I'm stumbling along behind you...I can't see the problems that you're seeing. I need you to just explicitly state what to do. This is the difference between someone with programming knowledge and all the rest of us.

OM
Alchemist
#22 Old 24th Oct 2009 at 3:08 AM
Well, just use clean in preference to the error message.

The GEOM (body mesh) plugins detect this same issue, but they just exit with an error because in body meshes you have to match the base and morph mesh vertice and face counts, and adding vertices at export breaks this parity.

If you like to say what you think, be sure you know which to do first.
Alchemist
#23 Old 24th Oct 2009 at 3:29 AM
kk...that is helpful...thank you.

I am refraining from comment about you bringing up body issues.

OM
Alchemist
#24 Old 24th Oct 2009 at 4:13 AM
Go to your room... the very thought that a staid old man like me would dream of nubile young women is shocking... shocking, I say.

If you like to say what you think, be sure you know which to do first.
Alchemist
#25 Old 24th Oct 2009 at 12:11 PM
...I enjoy being shocking on occasion...but will do my best to not be *too* shocking. I remember you have an old-fashioned sense of propriety and wouldn't want to offend...I enjoy bantering with you too much

OM
Back to top