Replies: 8 (Who?), Viewed: 6965 times.
Test Subject
Original Poster
#1 Old 13th Aug 2009 at 3:22 AM
Default Object clone is invisible
First off, sorry for the noob question.

I cloned an end table, and it's in the game, invisible! Can someone smack me with the clue bat and let me know why?

I followed petallotus's tutorial and read up on all sorts of threads here and on other sites, and am now stuck.

Even when I switch the group ordering for the 00000000 mcfg file, I still don't see the table show up, so it's not that the material is being assigned to the shadow plane or anything. (Though when I switch things so it is, I can see the shadow plane as a black circle when I place the table, in game. When I switch it back to how it should be, though, I still can't see the table.)
#2 Old 13th Aug 2009 at 3:45 AM
Your description of your problem is not going to get you much help. Too little detail, very general, all I understand is that you have an invisible end table. Seems you must have done some mesh editing, as you mentioned having edited an mcfg file.

So let's start at the beginning. You made an object clone, probably with the only cloning tool around, s3oc. First, did you test it before editing the mesh? Because there are things that could be done wrong before you even started meshing around.

Perhaps your UV map is wrong. Perhaps you have the scale wrong... many meshes that you just find for download were made for different games and are sized totally differently than Sims 3 is.

Start back over with the cloning part, make sure you have a usable copy of an end table to start with. Then maybe we can look at teh next steps.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Test Subject
Original Poster
#3 Old 13th Aug 2009 at 5:07 AM
Fair enough on the detail point -- didn't want to spam, sorry. (And here comes the spam...)

I started with s3oc. Cloned the brass end table. Used S3PE to export the MODL and MLOD files. Dragged the files to s3modld.exe. Imported the mcfg files to MilkShape.

The table was there, as it looks in game (for all four files). I got rid of the legs, scaled down the top, and added a base and central leg with the cylinder tool. Positioning was all according to the original. I saved that model in MilkShape and used it for the MLOD mcfgs, which I imported in so I could see the placement and scale -- then I positioned and scaled my model, and deleted the original, for each. This was in hopes that everything would look right and be as high and as low as the original object. The new table is thinner, but no shorter.

Right, so then I dragged each of those mcfg files to s3modlc.exe. After that, I opened up the package in S3PE again, imported the four files, deleted the thumbnails, and saved.

After that, S3OC again, opened the package, edited the catalog info, and saved. Then installed the package with the InstallHelper.

I wonder if it wasn't a good idea to import one model on top of the other, to check them against each other?

The UV mapping -- I didn't change any of the IMG files. I would expect (and maybe this is where I'm smoking the crack) that I would get *some* texture on my object, if not a rightly-placed one. The thing that makes me think that is that sometimes, when I first try and place my table in the game, it blips in a good looking little table! But then blips out again. Is it just one of my LODs that works, or just one that doesn't?

I'm sure I'm doing something wrong, I just can't figure out what. And any help is appreciated but not expected! Thanks for even reading.
Test Subject
Original Poster
#4 Old 13th Aug 2009 at 5:23 AM
First, did you test it before editing the mesh? Because there are things that could be done wrong before you even started meshing around.

Forgot to add: I didn't test beforehand, but I did after your reply -- and I have a working test end table using the steps I did, before, without making any mesh changes at all.
#5 Old 13th Aug 2009 at 5:52 AM
OK, your general method seems sound. I think maybe you got some groups confused or something simple, or the TGIs of the parts are switched around in the package. We will look for the simple stuff before we start any major surgery. As far as bringing the meshes in to compare sizes, etc., that is the way to do it, provided they are removed before export. Unlike some of my other work, no comments are used for the object meshes, all the extra data that needs carried over from import to export is in all those bazillion little files the s3modld tool creates.

Please post the broken .lod file with the group "00000000" taken from the .package you put in the game, or better yet, the broken clone .package file itself, so I can look at it. I have a few templates and things I used to develop the tools with that I can at least see what is broken, and we can work backwards from there on why.

I will likely not get to this tonight, as I am no longer the night owl I once was, but I will work with you to get you going... you certainly seem to have the determination to get back up on the horse after a small spill.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Test Subject
Original Poster
#6 Old 13th Aug 2009 at 8:03 AM
Thanks very much. I hope you consider the effort worth it -- if not, do bail on me.

One way or another, I'll figure it out eventually (if for no other reason than good people like you are providing us all with information and tools). And when I do, I'll be busy, because I have so many plans for objects. Mwaha!

Ahem. Here's the .package.
Download - please read all instructions before downloading any files!
File Type: rar simmerling_TableEndBrassC.rar (609.9 KB, 14 downloads) - View custom content
#7 Old 13th Aug 2009 at 7:48 PM
OK, now I am terribly confused about which mesh is which.
Here is what I found:
1. The mesh that is in the package is the smaller diameter table (I am not sure if that was the original or the new mesh).
2. The main .lod ("00000000") and the .model file ("00000001") both appear to be what you edited, but they have the instance value "00000000008117D2". Small numbers like these are used on the original game meshes, the S3OC uses full 64-bit hash numbers (the game appears to not care). Your clone appears to have been renumbered to instance "99E9DC3DB9DD752E". But you can't just change the instance value, because the mesh package has the instances for different parts inside it, that is part of the reason for the "compiler" (s3modlc) because all these parts have to be consistently numbered.
3. No joint assignments were made in the .lod file, but the originals had the non-shadow parts assigned to the single bone.

So I can't really "rescue" this, you will have to remake it, but you will not necessarily have to waste the meshing effort, if you follow the right steps.

1: Make a new clone, and make sure it is "fixed" and that it works.
2: Make a new work directory, and make sure you get the MODL/MLOD files from the clone, all 4 files.
3: Disassemble these, and study the layout, although I think you have that right, because your shadow meshes seem OK. Note in the .lod, however, which group is for a groundshadow, which one is for the table. Paper and pencil help me for this.
4: Go to your broken prior work directory and load up your "00000000" .lod file, export as .obj (wavefront), and copy that file to the new work directory.
5: Load up your new work "0" .lod file. Delete the two groups in there. Import the .obj file, make sure that the groups are in the right order (group names here don't matter, just order, the top one should have whatever was in the top one of the original).
6: Go to the joints panel, double-click the one joint there to make sure it is the one selected.
7: Go to the groups panel, click on the table group and then on "select".
8. Go back to joints and click on "assign".
9. Export your "0" .lod file
10. Repeat this for the other three files, except that there is only a single group for the rest. In this mesh, the two "0001000x" files have a joint, but their format does not save assignment information. Assigning them will not hurt, but is not required. The two "0000000x" files do have assignments.
11. Recompile all four and insert into clone package.

This should get you back on track. Be sure and post a proud in-game picture of the table for me to see... I am invested in this project now.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Test Subject
Original Poster
#8 Old 14th Aug 2009 at 1:46 AM
I wish I could help figure out what went wrong there, but I haven't a clue. However, starting over and redoing it all as you said, with .obj files, seems to have worked! (See image.) Not perfect yet, but now I can adjust it. Thank you so much!

I'll just move forward and make sure I treat every single package I try to make as a one-attempt clean room situation. Move back to zero and import in if there's a problem.
#9 Old 14th Aug 2009 at 2:27 AM
You are so welcome. I think what happened is that you started with the files from the game, rather than those from the clone. Because these files were never properly renumbered (internally) by s3oc, they would not work with the new (renumbered) package.

One thing I noticed in your screenshot was that the object self-shadows... the sun shadow from the table top itself can be seen on the top surface of the table base. I find that interesting, and just yesterday was wondering if the game did that. Objects with wide bases would, of course, not show a self-shadow on themselves.

You did good, given that the tutorials at this time are just outlines. I look forward to your future avocation as a prolific mesher and perhaps tutorial writer.

<* Wes *>

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