Replies: 150 (Who?), Viewed: 60564 times.
Page 2 of 7
Lab Assistant
#26 Old 29th Jul 2009 at 5:49 PM
Quote:
Originally Posted by WesHowe
Thus you will find when exporting and reimporting your model a larger vertex count, but the same polygon count.

Does this mean I get a hard edge where it was previously welded?

Minisite

TSR Workshop
A Custom Content Tool for The Sims 3
Forum Resident
#27 Old 29th Jul 2009 at 5:50 PM
Hm, I removed the pedestal layer from the mask image (setting green to white and red to black), but the pedestal color can still be seen in the game... Nothing changed, to be honest.

Looking further. This usage of the mask image does make texturing not easier...

happy simming,
Xanathon


Xanathon's Laboratory :: WishList

.: Do not harass me with requests via PM, you will only get ignored :.
.: Don't post my objects or objects derived from them on paysites or the exchange! :.
Alchemist
Original Poster
#28 Old 29th Jul 2009 at 6:07 PM
Quote:
Originally Posted by xanathon
This is no criticism at all, I just wanted to point that out and hope it helps in the development!


And you have been a big help. Critical examination is to be expected, we all could at times do with fewer whiney butts.

I reexamined the venus statue, the texturing changes you see are being accomplished at the pattern level. This is a new TS3 feature, and is very powerful, because you can add new texturing by using a color mask without having to remap or alter the mesh or its UVs. HP and Delphy, as well as Thomas at TSR all have done a lot of work on enabling patterns to be changed.

For your type of project, they are perhaps less desirable. If you were to edit the mask, however, so that it had only one color, you would just have one area to be designable.


As far as groups themselves, I think I have that right. There are models, and one example is the CarPolice mesh, that have two sets of UVs. Only the first set is imported, and on export the second set ends up being 0,0 for all vertices.

I need to research that a bit to see if there is anything I can do. While highend tools like maya can manage multiple UV maps, all of the stuff mere mortals may own has space for but one UV map.

I think it would be possible to design the importer/exporter plugins to work with either map1 or map2, that would be a lot more work, in that after the first model was finished, it would have to be remapped and exported again (to transfer the secondary values).

Anyway, I am excited also. While I readily admit that the user interface is a method only a hacker could love, if we get this stable and people can make meshes, I can (well, actually have already) start on a program that incorporates the code in the model decompiler/recompiler with such useful things as buttons and file dialogs. It just took so long to get the research done. As you can see from the project files, the .model and .obj are twisty little mazes, and changes must be made in many places to modify it to accomodate changed vertex/face counts.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Alchemist
Original Poster
#29 Old 29th Jul 2009 at 6:10 PM
Quote:
Originally Posted by teko
Does this mean I get a hard edge where it was previously welded?


It will retain the same normal values for both vertices, and would thus appear as a soft edge.

If you like to say what you think, be sure you know which to do first.
Lab Assistant
#30 Old 29th Jul 2009 at 6:18 PM
Quote:
Originally Posted by xanathon
Hm, I removed the pedestal layer from the mask image (setting green to white and red to black), but the pedestal color can still be seen in the game... Nothing changed, to be honest.

I would rather set Red channel to white and Green to black as the Red channel is the first mask taken into account by the Texture Builder. I think deleting compositorCache.package would solve the problem resp. make the change appear ingame.

Quote:
Originally Posted by WesHowe
It will retain the same normal values for both vertices, and would thus appear as a soft edge.

That's great news then. I'll let you know if it works.

Minisite

TSR Workshop
A Custom Content Tool for The Sims 3
Forum Resident
#31 Old 29th Jul 2009 at 7:43 PM
Well, the red part was the one I wanted to get rid of...

happy simming,
Xanathon


Xanathon's Laboratory :: WishList

.: Do not harass me with requests via PM, you will only get ignored :.
.: Don't post my objects or objects derived from them on paysites or the exchange! :.
Field Researcher
#32 Old 29th Jul 2009 at 11:08 PM
I tried cloning a Poster so I could change the shape to a groovy way, but I get a error message when I go to import the file. It only included a .Model file and no lod files so I used the binary file to change it to .mcfg or whatever it is. I put up my working directory too for you all to see.

Screenshots
Download - please read all instructions before downloading any files!
File Type: zip Odistant_TestingPosterMesh.zip (524.2 KB, 9 downloads) - View custom content
Description: Work Folder
Alchemist
Original Poster
#33 Old 29th Jul 2009 at 11:21 PM
Thanks for the report.
The decompiler gets one part of the disassembly wrong on that one, it is a bug, and your post will help me fix it.
Until I do, here is how you can fix the particular one if you want to play with it:
Open the .mcfg file with wordpad. Change the line that says:
Quote:
G00VRTFBlock=1

to
Quote:
G00VRTFBlock=0

and continue from there.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Field Researcher
#34 Old 30th Jul 2009 at 12:21 AM
Thanks. It worked. I went into milkshape and have not been doing anything for a while, so I decided to make a Half Sphere Poster (half Sticking from the wall). I got it cut perfectly so it's not to big and not too small (I hope xD). I then went to Export the mesh but it said "Open" instead of "Save" like it should. I just went ahead and overwritten the .MODL file. I did the same thing with the .Lod file but it gave me a error. I then went File>New to go ahead and import the .MODL file I just saved to make sure it worked properly (as I always do with any file I edit) and showed the same mesh. I did the same with the .Lod file, but it did not work. The message said "ERR: Group counts must be equal for mesh and MCFG file.".

My question is, should I NOT overwrite the .lod since it's not letting me and just run the compiler on the .model?

(Posting screenies now)
Screenshots
Download - please read all instructions before downloading any files!
File Type: zip Odistant_Half_Earth_Poster_Files.zip (519.1 KB, 6 downloads) - View custom content
Alchemist
Original Poster
#35 Old 30th Jul 2009 at 12:51 AM
Well, we are now both confused.
You say it saved the .model file just fine. Or did you mean it was unchanged?
And there wasn't a .lod file in the poster. Are you trying to make one?
If so, the tool isn't set up to do that, and it is probably unnecessary... the .mcfg file has a lot of parameters that need to be changed, more than the extension and so on.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Field Researcher
#36 Old 30th Jul 2009 at 1:45 AM
Bah. I did confuse myself. Sorry. Too.. Much.. Files .-.

Oh yes, I just finished making the .dds file from the mesh and I'm working on fixing it up with titles and descriptions. I'll post the picture when I get it up.
Alchemist
Original Poster
#37 Old 30th Jul 2009 at 2:24 AM
Quote:
Originally Posted by Odistant
My question is, should I NOT overwrite the .lod since it's not letting me and just run the compiler on the .model?


OK, I think I understand somewhat better.
The .lod file is one you took from another object, I can see from the instance values.

The first error is because your MilkShape model has one group and the .mcfg came from an object with two groups. Changing the group count is not going to be possible given the extent of development, it is beyond the scope of what the compiler will do. This is because the MLOD is merely updated, not rewritten, and there is an entry for each group in there.

But the need to do what you are trying is probably not there. Other chunks in the original .package play a role, in particular the VPXY points to the MODL, and he MODL itself lists the additional .lod files the object has. In this case, there is only the one mesh file, the .model one.

The concept of the LOD (level-of-detail) is that when an object is in the distance, it cannot be rendered in the detail it can when close, as there are fewer screen pixels it occupies. So by making a less-detailed mesh (and textures) for use further away, overall load on the system will be reduced.

However, the designers probably decided that, given the size of lots and houses, few occasions would occur where a painting was able to be seen from any great distance. Thus, no reduced detail mesh would be needed. Space and memory conserved.

Try making the object with just the .model file it had. There are many other values not documented that would need changed in the .lod file to fix it... for example all of the fields that are BlockDefxx need a new instance, and probably some of the ExternRefs, too. Peter and Inge's object cloner knows how to revise this data, and it is done before the decompiler ever sees it. All of those values are TGIs that either define the TGI for the chunks in the package, or contain pointers to the TGIs for data needed from other items, like DDS files.

I have identified and fixed the first issue you found, and that fix will be in the next release, perhaps I will get that up tonight.

<* Wes *>

Oh, and thanks for posting the issue and trying this. We are all learning here, that is the whole purpose.

If you like to say what you think, be sure you know which to do first.
Forum Resident
#38 Old 30th Jul 2009 at 9:46 AM Last edited by xanathon : 30th Jul 2009 at 3:23 PM.
You can put a painting on an outer wall and it can be see from a great distance. Revolutionary concept, I know...

I think the reason could be that a painting has very few polygons by design (the simplest version is just a very flat cuboid) so an additional reduced polycount mesh does not really make sense for such objects anyway.

A cuboid is such a simple object that it has six faces regardless how far away you are. The venus for example is way more complex, so it makes sense to include a lower-poly-version for greater distances. I think the need for such mesh-LODs arose since you are able to freely wander around in Sims 3 (without too much distance-clipping), something that was not possible in Sims 2.

happy simming,
Xanathon


Xanathon's Laboratory :: WishList

.: Do not harass me with requests via PM, you will only get ignored :.
.: Don't post my objects or objects derived from them on paysites or the exchange! :.
Field Researcher
#39 Old 30th Jul 2009 at 1:55 PM Last edited by Odistant : 30th Jul 2009 at 2:18 PM.
Alright. Seeing as to what xanathon said, I'm going to clone a painting from one that has no LOD, like the one I had before since my mesh has low poly count. Hopefully I can get it working soon..

Also, if you look at the bottom of the painting in the mesh, what are those blue spherical like lines for?

Edit: I got that message again, but it was not on the LOD. It was on the MODL. Changing the value did not work, so I just made 2 groups instead of having one. That seemed to fixed getting the error message.
Alchemist
Original Poster
#40 Old 30th Jul 2009 at 2:58 PM
The group counts must match the game. If you don't want the groundshadow, instead of deleting it, just make it small and stick it inside.

Those blue circles are the joints, in this case there is just one. You can make the joint size more suitable for TS3 by setting it to 0.012 in the preferences, located on the file menu.

And you should assign all the vertices in the model to that joint (the originals were). This is easy to do, go to the joints tab, double-click on the joint to select it, go to groups and select the entire set of groups, go back to joints and click on assign, and you're all done.

Some models, like cars, have multiple joints, and parts like tires have to be assigned to the correct joint for each, and the body to another. Joints are used in the game to make animation happen, including when placing and rotating objects.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Lab Assistant
#41 Old 30th Jul 2009 at 8:26 PM
I managed to get textures and mesh on a completely new object, but it's metallic and shiny!
Mother Function
retired moderator
#42 Old 30th Jul 2009 at 9:38 PM
I made....a block But it works!

But, I noticed that when I went to export the mcfg file, it asked me to "Open" it...I clicked on the mcfg file and "opened" it. It saved the mesh, and the object showed up in game...it just seemed weird to me.

I'm not a Milkshape user so forgive me if it's supposed to say Open
Screenshots

"Holy Shift! Check out the asymptotes on that mother function!"
Field Researcher
#43 Old 30th Jul 2009 at 10:19 PM
Quote:
Originally Posted by daluved1
I made....a block But it works!

But, I noticed that when I went to export the mcfg file, it asked me to "Open" it...I clicked on the mcfg file and "opened" it. It saved the mesh, and the object showed up in game...it just seemed weird to me.

I'm not a Milkshape user so forgive me if it's supposed to say Open


It's not suppose to say Open. It should say save, and when I try to save it as something else, it gives me "Could not find file". I'm not sure if its suppose to be this way, but if it is, then Wes probably did this for a good reason. Possibly so you could compile it together that way. That must be what the .bnry (or something like that xD) are for.
Alchemist
Original Poster
#44 Old 30th Jul 2009 at 11:16 PM
Well, I will change that. It isn't a programming mistake, really, but one of semantics. The way I wrote the suite, if you will, the MilkShape exporter has to read data from the .mcfg file first, so it knows which of the many files in the directory it has to write data to. It also reads data from each VRTF block in order to make sure it has the correct vertex layout.

I am gratified that we have some level of success. This is just the start, not a final product. I decided to modify the process somewhat by moving some more detailed parts of the code from MilkShape to the compiler/decompiler, and making a set of ascii formatted files to hold the mesh data... files that could be loaded into wordpad, although that is a generally useless method to work with meshes.

The code in the decompiler/compiler programs is destined to be put in a bigger program with some sort of button gizmo gee-whiz interface.. Oh, wait, I remember, it's called a GUI.

I am thinking about adding the .package file to the process while I am at it. Both Rick and I independently wrote code for the dbpf 2 format when Spore came out, and we have shared the specs and in some cases the source with others that have gone on to make some of the package editors. So I do know how to do that, too.

At any rate, I run a small shop here. The main programmer, Wes, is at the mercy of an erratic and unstable boss, Wes, who has had some recent health problems. We are also running a small website, but are in the process of divesting it, resulting in the imminent layoff of our webmaster, Wes. Our technical writer, Wes, seems to have been on strike because he has written only a short blurb about this and stuck it in the package. And to top it off, revenues have not been very good because our marketing guru, Wes, seems to have decided to give all of our products away for free!

What a way to run a business.

If you like to say what you think, be sure you know which to do first.
Lab Assistant
#45 Old 30th Jul 2009 at 11:44 PM
Wes, how do i fix the metallic issue on the objects?
Field Researcher
#46 Old 31st Jul 2009 at 12:05 AM
Well, I got a simple box chair into the game that works, but... It's a magic chair. Really. It is. Not lying either. When I'm far away, it shows up my mesh, but, when I'm far... Poof! It's the chair I cloned -_-. I'm guessing it's the LOD's, but I deleted them since I only had 2 boxes. 1 big square, 1 small square to rest your back on. I know your gonna ask for the .package, so I attached it. I think I messed up on making the texture too :D. Here's the in-game pictures.





Off topic, but why's my game messed up like umm... this? :].
Screenshots
Download - please read all instructions before downloading any files!
File Type: zip Odistant_WoodenSittingBoxChair.zip (1.88 MB, 8 downloads) - View custom content
Test Subject
#47 Old 31st Jul 2009 at 12:25 AM Last edited by Udderbelly : 31st Jul 2009 at 12:40 AM.
Your game text goes glitched if you replace an original object, I believe. I've had this happen once and I think that's what causes that.

Required files attached ~ thanks in advance Wes
Download - please read all instructions before downloading any files!
File Type: zip blackfaces.zip (243.8 KB, 8 downloads) - View custom content
Test Subject
#48 Old 31st Jul 2009 at 12:42 AM
Odistant: I got these strange numbers/letters when I cloned an object with Sims3OC and I forgot to open the new package with the fix option.

As the shiness, there is one map which is white with some shadows. Photoshop DDS plugin imports it without alpha channel for some reason, but it has one - you have to make it enterely black otherwise it'll shine like this.

Hope that helps.
Lab Assistant
DELETED POST
31st Jul 2009 at 1:17 AM
This message has been deleted by Nandonalt. Reason: Nevermind.
Alchemist
Original Poster
#49 Old 31st Jul 2009 at 2:12 AM
The strings issue is caused by not making the instance for the object unique. After you clone an object, you need to open it and 'fix' it. This will renumber all of the instances to something that should be unique.

When you forget to do this, the STBL for the object has the instance value for the main game STBL, and the way the mods/packages folder is set up, it overrides the defaults; but the issue is there most of the strings the game is looking for aren't there, and you get default text and empty boxes.

As for the materials, there is no tool to change them, yet. So you have to be selective about what you clone from. If you want glass or metal, start with something that was glass or metal. Some objects, like lamps, have glass and metal. Make sure your new object uses the same group number for glass as the original object.

And when you make a new object, if it is a designable object you will have to change the pattern texture to fit your new object UV mapping. See xanathon's examples in this thread that expose that need.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Test Subject
#50 Old 31st Jul 2009 at 2:37 AM
I'm getting a new error message when importing my mesh back: "ERR: Unable to open mlod: 9_block00.bnry".

It's strange because it worked earlier. I tried it with a few newly imported objects and I get the same. I checked and the file was there, and I could open it with notepad.
Page 2 of 7
Back to top