Mapping techniquesCommunity Forums/Developer Stations/Mapping techniques
| Hi there,|
For my game, I wanted to create a big plane, wich will be used for the roads.
I wanted to assign a road-texture to each of the squares.
How do you do this in 3DS Max 4.2?
You see in the perspective the complete texture (it's just a texture, because I don't have the road-textures yet).
I wanted to apply this texture to one square, instead of the complete mesh (see top-view).
How do I do this?
As I'm new to 3D modeling, can anyone explain me how to do it step by step (perhaps with some screenshots too)?
Let's suppose I wanted to apply the same texture to each square,
would Blitz3D load the same texture 24 times separately (as there are 24 squares in this example)
or just once, and refer to it for each square?
If it would load the texture 24 times, it would mean a huge memory-usage.
| Choose a method:|
1) Go into sub object, select poly, apply uvs to poly, collapse, reselect poly, apply material export using pudding's plugin (www.onigirl.com/pipeline).
2) split into seperate faces and apply mapping, export using pudding's plugin.
3) as method 2, but add back into same mesh, apply single texture to entire object and use uv unwrap to map individual squares.
| Loading the same texture into Blitz 24 times doesn't make any difference, Blitz will detect the same texture and only load it once (built in optimisation). |
| Actually all you have to do is go into sub object mode, select the polies you want to use the texture, then apply the texture. A multi sub object texture will be created which blitz loads fine. |
| I tried to apply the "Edit Mesh" modifier to the plane.|
I could then select each square (polygon) separately.
But when I applied the material to it, the selected polygon went completely black, while the texture is shown in the material editor.
I loaded the mesh into Blitz3D, there the selected polygons were also black.
I'm a little bit stuck for the moment.
I also tried UV Unwrap in Max, but I could only move the vertices.
Can you scale the picture (texture) there, so it fits a polygon?
| You need to learn 3ds max. |
| I know, but there's no one in my neighborhood who can teach me some things.|
I've got 2 books about 3DS Max, but they are hard to follow (because the program is English and the books are in Dutch).
| Entering "3ds max tutorials" into google yields 172,000 hits. |
okay, I have made a plane with two textures for you to see how it can be accomplished. Th zip contains two small textures, a .3ds file and a Max5.1 file.
Have a look and report back.
If you want me to provide you with a detailed method to achieve what you want, just let me know and I'll try.
Hope this helps.
| I found some tutorial, using multi-sub materials.|
I got it to work and created a plane with 2 quads high and 3 quads wide.
I got into sub-object mode and assigned each quad a different ID.
In the material-editor, I created a multi-sub material with 6 sub-materials (because I have 6 different quads).
ID 1 (top left): texture "Bitmap1.jpg"
ID 2 (top middle): texture "Bitmap2.jpg"
ID 3 (top right): texture "Bitmap3.jpg"
ID 4 (bottom left): texture "Bitmap2.jpg"
ID 5 (bottom middle): texture "Bitmap3.jpg"
ID 6 (bottom right): texture "Bitmap1.jpg"
As you can see in the screenshot.
You can see the 3 different textures on the same object (plane), but they are strechted out to cover the entire plane.
I wanted to have one single plane with a lot of quads.
Each of those quads should have one bitmap that cover only that quad (not the entire plane).
This way I could create a complete road-system for my game, just using one plane (= 1 object to load in Blitz).
When I wanted to raise the roads somewhere, I would only have to move some vertices up or down.
So, I'm getting it to work, only the textures cover the entire plane.
How can I tell Max to only cover one quad?
I thought Max would apply the texture to a single quad, because they all have different ID's.
P.S.: IPete2, I cannot load your scene, because I only have Max4.2.
Loading the scene gave me an error that I was missing a DLL.
That's why I sent you a .3ds too! Use File - Import to load the .3ds file. If you need to re-load the textures, then do so as normal.
What you are saying leads me to suspect that you are not applying UV mapping.
Select the part of the mesh (I used a plane and divided it up into the same amount as your quad example) you want to use a texture on. Pull down the Modifiers menu and look for UVW Map. Then click on it. Adjust the type of mapping - play with planar and Box to begin with. Adjust the settings and you will have full control over where your texture will sit on the mesh.
When you export this, it should export the UV mapping co-ordinates automatically, so you can use it in B3d.
I haven't tried this with a quad, but I can't see why it wouldn't work so give it a try.
Hope that solves it.
PS To answer another Q in your initial post, B3d will optimise the way the it loads repeated textures. If it sees the same texture again, it will use the one it just loaded again - someone posted about this yesterday and that was the gist of the reply.
| I did it.|
I created a plane with 4 quads.
I used the modifier "Edit Mesh" on it and detached all quads.
I applied 2 different textures and edited the UVW coordinates for each quad.
But isn't this the same as creating 4 separate planes
and applying a texture map (material) to each one of them?