The good part is... it's fixable, and you don't even have to re-export the CMP. Just load it up with FLModel Cloner and you can rename each part with a unique name, like, "jsncaliff_whatevermyshipiscalled_glass", etc., etc. Also do this for every MAT... and then open the MAT or CMP (I always export my Materials to the CMP, just to keep it all in one place, but whatever) and rename the MAT names to whatever you named them in FL Model Cloner... and do the same with the TGAs... and voila, problem solved. If you're still confused, send me the model... just, uh... be nice enough to re-open it after I've sent it back and take some screenies, so that people can see "before" and "after".
Important MessageYou are browsing the archived Lancers Reactor forums. You cannot register or login. |
Show off your finished and in progress work **Archived**
Here you can discuss building custom ships, texturing and 3D modeling in Freelancer
Um, what's happening is a "name collision". One of the bitz in my Tutorial talks about unique naming, and why it's very important. So yeah, basically what you've done is cause something Very Bad to happen. Name collisions are not good- they can cause CTD and server crashes. If all that's happened is a MAT name collision, well... that's bad enough. But if a 3DB name collides (which is what you're describing)... well, that's really not good!
The good part is... it's fixable, and you don't even have to re-export the CMP. Just load it up with FLModel Cloner and you can rename each part with a unique name, like, "jsncaliff_whatevermyshipiscalled_glass", etc., etc. Also do this for every MAT... and then open the MAT or CMP (I always export my Materials to the CMP, just to keep it all in one place, but whatever) and rename the MAT names to whatever you named them in FL Model Cloner... and do the same with the TGAs... and voila, problem solved. If you're still confused, send me the model... just, uh... be nice enough to re-open it after I've sent it back and take some screenies, so that people can see "before" and "after".
The good part is... it's fixable, and you don't even have to re-export the CMP. Just load it up with FLModel Cloner and you can rename each part with a unique name, like, "jsncaliff_whatevermyshipiscalled_glass", etc., etc. Also do this for every MAT... and then open the MAT or CMP (I always export my Materials to the CMP, just to keep it all in one place, but whatever) and rename the MAT names to whatever you named them in FL Model Cloner... and do the same with the TGAs... and voila, problem solved. If you're still confused, send me the model... just, uh... be nice enough to re-open it after I've sent it back and take some screenies, so that people can see "before" and "after".
Thanks for the tip. I've been pretty good about making individule names since I read the tutorials. I have a pretty good system but on many of my first ships I didn't define the glass texture with a different name. I didn't know how to do the DcDtOcOt. If you export a model with a group named glass and have no material assigned it will automatically assign the default Freelancer glass material. I guess cutting corners and lack of knowledge came back to bite me I've never used the Freelancer model cloner but I'll check it out. It's a relief to know I don't have to redo a whole lot of work.
A lot of my earlier models were pretty sloppy so I'll most likely end up redoing some of them anyway.
I'm pretty sure you have the ship in that bunch I sent you a while back, but if you don't have it anymore I'll send it again.
Thanks again for the tips.
A lot of my earlier models were pretty sloppy so I'll most likely end up redoing some of them anyway.
I'm pretty sure you have the ship in that bunch I sent you a while back, but if you don't have it anymore I'll send it again.
Thanks again for the tips.
Here is some of my inprogress work. The model is not exactly mine. I got it from Turbosquid.com ,a great place to get free models and good ideas. It was a pretty low poly count model designed for games but I had to reduce it a little more because of all the stuff I had to add to it. The most excellent body texture was also done by the artist who made this model. I just spiced it up a little to make it look like the "Back to the Future" car. You can see that I still have to texture the pieces I added to make it like the car in the movie. When I get it done I would like to make it freely available to whomever want's it. Someone please let me know how to post the files here.
Well here it is.
Front
Bottom
Front (CMP)
Bottom (CMP)
Edited by - jsncalif11 on 10/22/2005 4:15:21 AM
Well here it is.
Front
Bottom
Front (CMP)
Bottom (CMP)
Edited by - jsncalif11 on 10/22/2005 4:15:21 AM
just a note,subgroups names do not matter to FL,which is why you see so many collisiongroups with identical names - only the first group will have the unique name of the model - this is only of interest if you're using the subgroups option in export of course but worth a mention as it might save someone some time
@Cold_Void and everybody who still doesn't believe that Part and Material names are bloody important.
Part references are not lost when the CMP exporter does its thing. If that weren't the case, then taking the parts ... apart again... with Redeye's tool (to make Weapons, Cockpits, etc.) wouldnt' work. There wouldn't be any names left in the files, if they were truely stripped at export... therefore, they aren't.
Not only that, but those part names are what's ultimately routing the right Materials to the right parts. That's easy enough for anybody looking at a UTF to see.
So I'm going to repeat myself: every single part of your ships should have an absolutely unique name.
Let's say your ship is called the Lamprey.
If your ship has five parts when you're ready to export it, say, like this:
TopFins - MAT = "TopFins_TEX"
GlowGlass - MAT = "GlowGlass_TEX"
Glass - MAT = "Glass"
Body - MAT = "Body_TEX"
Widgets - MAT = "Widget_TEX"
And each area has a different Material assigned... names should look something like this, in MS3D, to avoid any possibility of name collisions. Trust me, people... the extra time spent naming everything right can save you a lot of pain and suffering. Here's an example:
Argh_Lamprey_TopFins - MAT = "Argh_Lamprey_TopFins_TEX"
Argh_Lamprey_GlowGlass - MAT = "Argh_Lamprey_GlowGlass_TEX"
Argh_Lamprey_Glass - MAT = "Argh_Lamprey_Glass"
Argh_Lamprey_Body - MAT = "Argh_Lamprey_Body_TEX"
Argh_Lamprey_Widgets - MAT = "Argh_Lamprey_Widget_TEX"
See? Just copy-paste It's not hard to make your parts and MATs have unique names... and now the only way that you can screw up is if you make another ship called the Lamprey which also has the same part and/or MAT names! Very simply put... the chances of that happening ... erm, unless you're bloody stupid... are zero! And the chances of some other random person doing so... are really, really, really close to zero. Moral of the story: if you don't want that Lamprey to suck (heh) ... name things correctly, and avoid the dreaded Name Collision
Part references are not lost when the CMP exporter does its thing. If that weren't the case, then taking the parts ... apart again... with Redeye's tool (to make Weapons, Cockpits, etc.) wouldnt' work. There wouldn't be any names left in the files, if they were truely stripped at export... therefore, they aren't.
Not only that, but those part names are what's ultimately routing the right Materials to the right parts. That's easy enough for anybody looking at a UTF to see.
So I'm going to repeat myself: every single part of your ships should have an absolutely unique name.
Let's say your ship is called the Lamprey.
If your ship has five parts when you're ready to export it, say, like this:
TopFins - MAT = "TopFins_TEX"
GlowGlass - MAT = "GlowGlass_TEX"
Glass - MAT = "Glass"
Body - MAT = "Body_TEX"
Widgets - MAT = "Widget_TEX"
And each area has a different Material assigned... names should look something like this, in MS3D, to avoid any possibility of name collisions. Trust me, people... the extra time spent naming everything right can save you a lot of pain and suffering. Here's an example:
Argh_Lamprey_TopFins - MAT = "Argh_Lamprey_TopFins_TEX"
Argh_Lamprey_GlowGlass - MAT = "Argh_Lamprey_GlowGlass_TEX"
Argh_Lamprey_Glass - MAT = "Argh_Lamprey_Glass"
Argh_Lamprey_Body - MAT = "Argh_Lamprey_Body_TEX"
Argh_Lamprey_Widgets - MAT = "Argh_Lamprey_Widget_TEX"
See? Just copy-paste It's not hard to make your parts and MATs have unique names... and now the only way that you can screw up is if you make another ship called the Lamprey which also has the same part and/or MAT names! Very simply put... the chances of that happening ... erm, unless you're bloody stupid... are zero! And the chances of some other random person doing so... are really, really, really close to zero. Moral of the story: if you don't want that Lamprey to suck (heh) ... name things correctly, and avoid the dreaded Name Collision
Lastly... and this is directed at Cold_Void...
I've been spending a lot of time with FL's Parts recently, as part of assigning Glowmaps. What I can tell you is this: FL's designers were ... ah... well, they were trying to be frugal and re-use Parts and Materials over and over again. Hence, the same darn texture is re-used for Engine Grills over and over again... engine_grill01 is everywhere. Problem is... they duplicated that (and many other) textures in the MATs everywhere. Methinks they were just plain sloppy- there wasn't any need to duplicate that data... FL doesn't really care where a texture resides, so long as the MAT refers to its name correctly.
They could've saved themselves (and us) a ton of trouble by just lumping all the textures into one big MAT file, honestly. But nooooo... they had different art teams working on different things at different times, and probably ended up with some poor, downtrodden soul making it all work as they got near the end of production.
What has happened as a result of this ... is constant name collisions. You cannot, for example, just replace engine_grill01 in one MAT and have it work right. Just try it, if you want to. What'll happen is the same thing that happens when modders build stuff with name collisions: if you load up the very specific object that refers to this "new" MAT... everything else in the entire game that also refers to that MAT name... will also use that texture! Kind've... inconvenient. Worse yet... if you, say, buy another ship, that refers to another MAT (which has a different file associated with engine_grill01)... then everything will change to THAT... including whatever ship you thought you'd changed!
The only way to avoid this, I eventually determined, was to go into every darn model in FL that makes use of these textures... and use FL Model Cloner to re-define their MAT references, giving them unique names. This totally fixes the problem, but it's obviously rather time-consuming and annoying- you can't make any mistakes. Having done so for just about all of the "collections" of like-textured ships in FL... I can tell ya, with dead certainty, that naming conventions are one of the least-understood and yet most-important areas of building working models in FL. If you're really after your goal of totally destructable, multiple-LOD ships (that somehow don't have all of the very real problems I've described and documented)... you need to be aware that the only way for you to achieve your goal is by very, very carefully naming everything. Those Part names will come back to haunt you, if you give them generic names, like "broken_wing".
Please, just trust me on this- while I disagree with your goals for what I think are legitimate technical/gameplay reasons, I wish you success in realizing your dream of matching DA's work, and you really need to pay very close attention to naming conventions or you'll put a lot've work down the toilet
I've been spending a lot of time with FL's Parts recently, as part of assigning Glowmaps. What I can tell you is this: FL's designers were ... ah... well, they were trying to be frugal and re-use Parts and Materials over and over again. Hence, the same darn texture is re-used for Engine Grills over and over again... engine_grill01 is everywhere. Problem is... they duplicated that (and many other) textures in the MATs everywhere. Methinks they were just plain sloppy- there wasn't any need to duplicate that data... FL doesn't really care where a texture resides, so long as the MAT refers to its name correctly.
They could've saved themselves (and us) a ton of trouble by just lumping all the textures into one big MAT file, honestly. But nooooo... they had different art teams working on different things at different times, and probably ended up with some poor, downtrodden soul making it all work as they got near the end of production.
What has happened as a result of this ... is constant name collisions. You cannot, for example, just replace engine_grill01 in one MAT and have it work right. Just try it, if you want to. What'll happen is the same thing that happens when modders build stuff with name collisions: if you load up the very specific object that refers to this "new" MAT... everything else in the entire game that also refers to that MAT name... will also use that texture! Kind've... inconvenient. Worse yet... if you, say, buy another ship, that refers to another MAT (which has a different file associated with engine_grill01)... then everything will change to THAT... including whatever ship you thought you'd changed!
The only way to avoid this, I eventually determined, was to go into every darn model in FL that makes use of these textures... and use FL Model Cloner to re-define their MAT references, giving them unique names. This totally fixes the problem, but it's obviously rather time-consuming and annoying- you can't make any mistakes. Having done so for just about all of the "collections" of like-textured ships in FL... I can tell ya, with dead certainty, that naming conventions are one of the least-understood and yet most-important areas of building working models in FL. If you're really after your goal of totally destructable, multiple-LOD ships (that somehow don't have all of the very real problems I've described and documented)... you need to be aware that the only way for you to achieve your goal is by very, very carefully naming everything. Those Part names will come back to haunt you, if you give them generic names, like "broken_wing".
Please, just trust me on this- while I disagree with your goals for what I think are legitimate technical/gameplay reasons, I wish you success in realizing your dream of matching DA's work, and you really need to pay very close attention to naming conventions or you'll put a lot've work down the toilet
I know what Argh says is totally true. The mod I'm working on has three race track systems in it. I ran into trouble after creating the first one which is an entire system full of mines like in Zone 21 of the New York system. I made all the exclution zones and placed all the bouy markers to show the course then tried to put my ship into it. I built a small car looking ship that had a horrable linear drag so that it had a slide effect. I planned on making 5 of the same ship but with different colors to add variety. Because I wasn't carefull in naming everything unique, the ships all ended up being the same color. It was a lot of wasted work and it's harder to go back and fix it than it is to start all over again.
Now that I know that I had no problems with the stingray I made recently. I wanted to make it into a series. I used the exact same ship, made a few changes to the body and changed the MAT color just a bit. Then I renamed everything from Stingray(whatever the group name) to Mantaray(whatever the group name). I also renamed the Materials in the same way. After exporting I ended up puting them side by side on the Manhattan showroom floor. There they were, two completely different ships with slightly different colors. And all it took was welding a few verticles and using the texture coordinator editor to fix the texture where I welded. Heres a pic.
By the way here is the Delorian completed and in the game.
Now that I know that I had no problems with the stingray I made recently. I wanted to make it into a series. I used the exact same ship, made a few changes to the body and changed the MAT color just a bit. Then I renamed everything from Stingray(whatever the group name) to Mantaray(whatever the group name). I also renamed the Materials in the same way. After exporting I ended up puting them side by side on the Manhattan showroom floor. There they were, two completely different ships with slightly different colors. And all it took was welding a few verticles and using the texture coordinator editor to fix the texture where I welded. Heres a pic.
By the way here is the Delorian completed and in the game.
Hi all,
Well I must also agree with Argh.. naming conventions are CRITICAL to ensure that part 'a' on ship 'a' is not NAMED the same as part 'a' on ship 'b'.... all the way thru..
Use a prefix... on the first group (largest) like: ugly1
on the second.. (second largest) use a suffix of numbers like: fuse_908
I use a numbering system.. that way I got heaps of numbers to choose from.. and I can name 'fuse' with a number suffix and vary this .. and funny thing since I have been doing this I no longer get ships that id as 'a' but look like 'b' or 'c' depending what ships are visible.. (if you follow)
Believe me its worth the EFFORT..
Anyhow.. Something I just did
The Demon:
View - 1 Here
View - 2 Here
View - 3 Here
This model is the Max tutorial ship somewhat modified.. its my first exersize into max 5.1 so I took the "starfighter' tutorial - completed it -then modified the result in Max then imported it into Milkshape for Hardpointing.. after using Lithium Unwrap and PS7 for the texture..I made the texture from scratch.. using a tutorial I found Here
Hope you like it..
Harrier
Edited by - harrier on 10/23/2005 6:48:26 AM
Well I must also agree with Argh.. naming conventions are CRITICAL to ensure that part 'a' on ship 'a' is not NAMED the same as part 'a' on ship 'b'.... all the way thru..
Use a prefix... on the first group (largest) like: ugly1
on the second.. (second largest) use a suffix of numbers like: fuse_908
I use a numbering system.. that way I got heaps of numbers to choose from.. and I can name 'fuse' with a number suffix and vary this .. and funny thing since I have been doing this I no longer get ships that id as 'a' but look like 'b' or 'c' depending what ships are visible.. (if you follow)
Believe me its worth the EFFORT..
Anyhow.. Something I just did
The Demon:
View - 1 Here
View - 2 Here
View - 3 Here
This model is the Max tutorial ship somewhat modified.. its my first exersize into max 5.1 so I took the "starfighter' tutorial - completed it -then modified the result in Max then imported it into Milkshape for Hardpointing.. after using Lithium Unwrap and PS7 for the texture..I made the texture from scratch.. using a tutorial I found Here
Hope you like it..
Harrier
Edited by - harrier on 10/23/2005 6:48:26 AM
Harrier, that's gorgeous, as usual I feel a bit of a stinker saying anything that's not gushing about what's an almost perfect ship... but... the cockpit glass ... just doesn't feel right. How's about a smoked-glass look with an DcDtOcOtTwo texture and some bars across the top of the glass? Just a thought... the rest of the model's just so nicely realistic that I really feel like the cockpit glass should be perfect, but I'm probably just a minority of one there
Argh,
I set the opacity at 80%, sampled the colour and imported the Mips.. The idea is to provide some texture, while still providing some opacity.. (sun screen)..
I could play with it tho.. the screenies (had to shrink them) dont really do it justice.. however, I could change it a tad..
I'm curious about one thing.. why a two sided texture? You have gone into this way more than me.. and I mean no offence .. wont that increase the glass opacity?
Harrier
I set the opacity at 80%, sampled the colour and imported the Mips.. The idea is to provide some texture, while still providing some opacity.. (sun screen)..
I could play with it tho.. the screenies (had to shrink them) dont really do it justice.. however, I could change it a tad..
I'm curious about one thing.. why a two sided texture? You have gone into this way more than me.. and I mean no offence .. wont that increase the glass opacity?
Harrier
Basically... an OcOtTwo will still only be rendering one polygon side at render time... the difference is, it won't automatically cull the backfaces. The reason for using OcOtTwo is that you can then use partially-transparent and opaque areas on the same texture, and have it look right from all angles. So, for example... instead of modeling some bars over the roof of that fighter's cockpit... you could paint them on, and because it's Two, you'll see it through the glass on the other side. Check out the MAT used for the gridwork on FL's Stations, etc... they're using OcOtTwo textures there, instead of increaing the polycount, they used a small, tiled texture with alpha channel.
about duplicate materials...uh you can reference more than one mat so why not just strip the common ones and create a common mat file,then you'll never have to replace the same texture 20 times
i realize now the subparts are only sharing names in their houses,ie every ge_fighter uses the same engine nozzle so these collisions can't be seen - duh stupid me
Edited by - Cold_Void on 10/23/2005 7:35:29 AM
i realize now the subparts are only sharing names in their houses,ie every ge_fighter uses the same engine nozzle so these collisions can't be seen - duh stupid me
Edited by - Cold_Void on 10/23/2005 7:35:29 AM
@ Harrier
Nice ship! And you did really well on the textures.
@ Argh
Here is th Outlaw mini. I pretty much just used the reduced poly model of the outlaw and tried to get the shape of the mini I made before. I Want to complete the series but the Outlaw and the Outlaw mini are kind of a sub set from the Bandit and the Bandit Freighter. Do you think you could streach out the bandit you redid for me and make the freighter. I would do it but it wouldn't look exactly like the bandit you did. I would really like to keep this a solid set, and make it available to people who are needing ships for their mods.
Anyway here is the Outlaw mini. I pretty much scrapped the old one and used the outlaw as a template. Before I would model them each seperately in 3DSmax, which required the hardpoints and texture mapping to be redone with each ship in Milkshape. Now that I understand that unique naming is the key, it's a breeze to make a series of ships. On this one I just moved a few vertex points and remapped the textures on the faces that were effected. Then I copied the DDS file and pulled it into Photoshop. I chose NOT to show the MIPS so that it was only 1 LOD. Then after a bit of editing I exported back as DDS and retold it to make 6 LOD's. Then I opened milkshape and changed the file that the materials looked at. That's it. Too easy. Thanks a bunch (again) Argh for pointing out the naming thing. It's made my world a lot simpler.
Edited by - jsncalif11 on 10/23/2005 9:18:16 AM
Nice ship! And you did really well on the textures.
@ Argh
Here is th Outlaw mini. I pretty much just used the reduced poly model of the outlaw and tried to get the shape of the mini I made before. I Want to complete the series but the Outlaw and the Outlaw mini are kind of a sub set from the Bandit and the Bandit Freighter. Do you think you could streach out the bandit you redid for me and make the freighter. I would do it but it wouldn't look exactly like the bandit you did. I would really like to keep this a solid set, and make it available to people who are needing ships for their mods.
Anyway here is the Outlaw mini. I pretty much scrapped the old one and used the outlaw as a template. Before I would model them each seperately in 3DSmax, which required the hardpoints and texture mapping to be redone with each ship in Milkshape. Now that I understand that unique naming is the key, it's a breeze to make a series of ships. On this one I just moved a few vertex points and remapped the textures on the faces that were effected. Then I copied the DDS file and pulled it into Photoshop. I chose NOT to show the MIPS so that it was only 1 LOD. Then after a bit of editing I exported back as DDS and retold it to make 6 LOD's. Then I opened milkshape and changed the file that the materials looked at. That's it. Too easy. Thanks a bunch (again) Argh for pointing out the naming thing. It's made my world a lot simpler.
Edited by - jsncalif11 on 10/23/2005 9:18:16 AM
Return to Freelancer 3D Modeling and Texturing Forum