Question Multiple textures on meshes

Notebook

Addon Developer
Addon Developer
News Reporter
Donator
Joined
Nov 20, 2007
Messages
11,962
Reaction score
765
Points
188
Is it possible?
I'm using 3DSMax 5.1 with max2msh 1.29b by Mindblast. This works fine with one texture, but seems to ignore any more.

At the moment, I get the roof texture repeating on the walls of buildings, as can be seen in this:-

http://i89.photobucket.com/albums/k207/Notebook_04/08120719-20-34PB-01.jpg

I've searched through previous posts, but, haven't found a solution to this.
I've tried detaching the roof, after converting the 3ds mesh to an editable mesh/poly, then applying the map, this didn't work.

Do I have to break the mesh into individual 'roof', 'front wall', 'back wall' and so on, in individual scenes in Max, then apply each map in each scene, then export and assemble the building in Orbiter?

Must be something I've missed!

Many thanks, N.
 
I've got models into orbiter using the max2msh plugin and if you set it up so each material has its own group (object in max) and it should work fine. so for example if you made a cube into a house and the walls all shared 1 material, the walls would be one object. and if the roof had a different material, it would have to be a separate object within the same scene. using material id's will not work, though doug has a converter he developed for the xr2 that automatically separates an object by its material id's.. if you're not familiar with that concept, taking our cube house example again, if you applied the wall material to the sides then applied a roof material to the top, the sides would be assigned material id 1, the roof material id 2...

this would always be incompatible with older converters and everything in orbiter would use material id 1, which sounds like the problem your having.

so, simply put, if you detach the roof from the rest of the mesh and export you should be fine... you must have really screwed up;) maybe try detaching then re-applying each material, since if you detached after applying each material, both resulting objects will use the same multi-subobject material - wherein, you'll find that your roof is mat id1.

So, drag your wall sample sphere back onto the separate wall object, this will replace the multisub with the standard material and everything should work.
 
Let me get my head around your reply Coolhand, this could take some time!



....

Just to avoid any confusion, by textures, I mean a .bmp applied to a mesh in Max using the materials editor. Max calls this a map?
You then convert this same .bmp via the dxtex utilty to a .dds file and place it in the /textures directory. Max2msh uses the .bmp name you used in Max, and places this in the .msh file it creates.
Thats what I'm doing at the moment.

I think you are referring to using multiple 'materials' in a Max scene? When I tried that with max2msh I got error messages about "opacity" problems. These went away when I split the meshes into groups as you suggest.
I used the multi-materials using groups system on the little control tower in the image above.

My problem is, I'm not into making meshes of great complexity needing lots of materials. I just want to make basic buildings that use textures. Thats the limit I'm at at the moment!

Were you talking about materials or textures?

Many thanks, N.
 
just do what i suggested in my last sentence and it should be fixed. take your roof material and drag it onto the separate roof object, do the same for the walls with the wall material, which will tell those objects to stop using the multi-sub and use the standard material - your wall texture for example should be the diffuse in your standard material. otherwise you might wanna look up 'material id's' and 'multi-subobject' in your manual.
 
OK Coolhand, I'll keep perservering!
I'm not very methodical at the moment, more a click and see what happens. Back to the manual, and take notes of each step.

Made some progress, managed to get the roof texture to export without affecting the walls, here's my Fire Station:-

http://i89.photobucket.com/albums/k207/Notebook_04/08120808-32-03PB-01.jpg

As a side question, what is the lowest 'element' you can put a texture/map on in Max. Is it a face or a polygon? If I make doors and windows in a wall, can I texture/map these indiviually, and will they export to Obiter via max2msh?

Thats two questions!

Many thanks, N.
 
you can only apply textures to a single triangle (face) or a poly... perhaps you could apply to a vertex or line but you'd never see it;)

just remember to always break up the model by its material id prior to export, otherwise the first mat id will cover everything since .msh does not support material ids.... if you want foolproof then break up your model before you apply textures, so you'd detach your door from the rest of the structure into a new object (not element) before applying your texture. so, essentially, each texture needs its own object(s) you can use the same texture on multiple objects, but you can't use multiple textures on the same object.
 
That all makes sense, I'll keep plodding on.
I'll use the foolproof method till it sinks in!
These are just box structures to fill in the base, but I might as well learn the technique in Max and max2msh.

Many thanks for your help, N.

More improvement, managed to get the second texture onto the Fire Station:-

http://i89.photobucket.com/albums/k207/Notebook_04/08120809-43-23PB-01.jpg
 
np, its looking good but watch out for your texel coverage, the texture looks more tiled on the side than the front for example.

Of course there's no reason why you cant put your walls, doors, windows and roof into 1 image as a texture sheet- though what you're doing isn't wrong but it's just one way of doing things... sometimes its easier to pack as many different parts as you can into 1 texture... you'd probably have an easier time of it by putting windows and doors into your walls texture... and you'd save yourself some polys.
 
Coolhand makes a good point about using one texture for multiple things. Bear in mind that a texture file could actually hold multiple textures. If you look at Ascension, all the hangars and main buildings use one of two texture files. Each 1024x1024 dds has walls, roofs, signs, grates etc, the mesh simply pulls different areas of that texture and lays it over the relevant polys. It's great for bases particularly, because it reduces loading times and also reduces the amount of texture files you have to create.

don;t know if I really added anything to the discussion, just posting a thought/support.
 
Good info here!!
Coolhand, do you have experience with converting an editable polygon to mesh format? I've come across some issues I do not understand in the process and the frustration kept me off my project. The thing is, the polygon shape looks good in Max, however, after exporting to (Orbiter) mesh, many faces show strange screw ups of the normals. Is there something crucial to be considered when "switching" from polygon model to mesh? Thanks for your reply.

Perhaps this thread is worth being a sticky, "how to model for Orbiter in 3ds Max"?

Now back to Notebook's subject... sorry.
 
Last edited:
I know I'm not cool, but a general knee-jerk response, FordPrefect:
When it is converted to a .msh it will be triangulated first. It may be that some faces are being split up in irregular ways by the triangulation process, which can cause visual anomolies. I often find that there are a few areas of a model where I have to manualy triangulate to avoid this happening. Although I don't use max, I would imagine the same process could occur.

That may not be the reason, but it's a thought.
 
yes it certainly sounds like something to do with triangulation... best thing to do is to post some wireframes and shaded screenshots, before and after.
 
Feel free to tangentise here... As you see, I'm just starting on texturing meshes, and I'm learning on boxes, and rectangular bitmaps. So, clever stuff with multiple images is waay above my level.
Just getting the stuff from Max into orbiter is a challenge.

Thanks for all the current help, sure I'll be back, and if this thread wants to go somewhere else, good for it.

Many thanks, N.
 
It's all down to the UV mapping, N. If you are starting simple, then yes, chances are you are using one texture and getting max to wrap around the object for you, with adjustable sliders or whatever. But once you get the hang of that, the next step is exploring UV maps in more detail. If you don't know, a UV map is a wireframe 2d map of all the surfaces on your model laid flat. This map is then laid over the texture, indicating to the program which part of an image goes on which face. Once you get the hang of that, texturing becomes a lot more involved and detailed, but with much 'better' results.

good luck with your project, feel free to throw more questions out. Although it will prob be Coolhand that helps you with specifics, since he knows max and I do not.
 
Thanks Whap, I've seen threads relating to UV mapping, and it looks complex, so left it alone. Its a bit of a coincednce that Cr1 is doing something I was trying to do!
Putting textures on boxes.
I was originally trying to put my textures on the default "box" objects, and gave up. Tried making boxes in Max, and got that working... eventually.
Saw Cr1's thread, and it eventually dawns that the Base.cfg is the place to put your texture names, so they can be applied to the orbiter default objects, doh.
Funny how things turn out.

N.
 
they say the world is a classroom...

And UV mapping isnt really that complex a thing, but it depends on how your modelling app handles them - some are more user-friendly than others. But that aside, default blocks are great for surface bases as they are nice and low poly, plus they can have night textures. So they are very fit-for-purpose really.
 
Back
Top