No announcement yet.

Best practice workflow

  • Filter
  • Time
  • Show
Clear All
new posts

    Best practice workflow

    Hi all,

    I am at the point of moving static meshes made in 3DS Max into UDK. No problem with the modeling, but with the texturing. I have watched the videos on the UDN site, watched a myriad of youtube videos and read countless tutorials and posts, but still am unclear on the "most correct" workflow between having a textured static mesh in 3DS and having it textured in UDK.

    How do you do it? How is it done in the real world? I don't necessarily need a step by step, but from a 50,000 foot perspective...then I can focus.

    Do you use the built in 3DS texture/material libraries like mental ray and then use "render to texture" to create texture maps? Is this what I should be doing, fully texturing an object in a 3D modeler (max, maya, whatever) and then rendering to texture to create maps? Is this how it's done in industry?


    Do you use unwrap UVW and create all textures originally, from power of 2 sized texture maps, avoiding built in material libraries and maps? You would lose access to all the procedural maps to build materials from the modeler...

    Just having a hard time making the connection from 3ds to udk and looking to the forum for some guidance. At this point I think I want to use ASE(ascii) over FBX because...I read it about it first, and don't really notice a difference?

    Thank you for any advice you can give...from a struggling, frustrated, but determined CG enthusiast.

    Basic process is you unwrap your UV's--which means giving new coordinates for how a flat image might be textured onto a 3D object. After that you create the texture, it doesn't matter how you create your texture. You can export out a UV template from Max and then paint over that in Photoshop. Or you can apply materials and use Render to Texture to bake a single image map, there's many ways of creating your textures. And for the regular texture map you don't even need to keep the 1x1 space, you can tile your UV's for that or tile your texture.

    After that you would export your mesh to UDK, and then in UDK you would import both the mesh and your texture files. From there you'd create your material and apply it to your static mesh. The materials in 3ds Max don't translate over, though you could use Render to Texture to bake them to a texture map that you could use on your mesh if you chose to. For the most part though those results probably wouldn't be what you're going for. Take for instance a wooden floor, there's lots of preset materials in 3ds Max for a wooden floor, but instead of doing anything at all with those I'd just find a nice wood image (maybe from and create a new UDK material set to tile the image and apply that material to the floor mesh.


      After I UV map something, I generally don't mess around with it much after that; although when I was first learning, I had to. As I made more mistakes back then, so I ended up going back to fix the UV map often. Now, I make the model and UV map it. I then get a rough texture idea going in Photoshop and will re-import the texture over and over in UDK, and apply it to the model, until it looks as good as I want it. Sometimes, the texture will look good in Photoshop but look pretty bad inside of UDK and can take some re-working to get it to look like you want.

      Also, I like to think that there is no full proof, 100% method of 3D modeling / UV mapping / Texturing that everyone can follow to succeed. Find a flow you enjoy and stick to that. The more time you spend doing this sort of thing, the quicker and more reliable your work will be come. Refining your process is just something that comes from time spent doing something.


        thank you both for your input. It sounds like both of you (I think) do more of the unwrap in your modeler and then texture in Photoshop - correct? Do you ever try to create the textures in Photoshop from scratch or do you mostly rely on quality texture images?

        So if I really want to learn this workflow, and get good at it, I am going to have to fully embrace and practice unwrap UVW and texture creation in Photoshop?

        Could you use an image from a site such as to make normal maps as well? I have the nDo script in Photoshop which builds them from your I on the right track?

        Finally - I get that UDK wants power of 2 textures, which end up being certain sized squares. What happens if I want a movie poster for example as a texture in a theater, would I just create a power of 2 square that had fill to the left/right of the poster?

        thanks again,


          There aren't that many rules, it's all about what you want.. Nothing says you have to use Photoshop, for one. The UV unwrapping method is the most important thing, and from there what you put on those UV's is a matter of creative preference. Regarding your last question, couple of ways. One is to make your texture in the target dimensions first, not in powers of 2. resize it to the nearest power of 2 (preferably scale up) when finished, and when you apply this material to your UV'd object, if the UV fits the dimensions of the object which is your target dimension again, the material will scale itself back to correct aspect.

          Or the UV itself could be in the proper aspect inside the square UV space, I suppose that makes more sense. I do it both ways.


            thanks Henrik - I was playing with both unwrap UVW (seemingly the most popular way for full control), and the render to texture. Render to texture automatically flattens the UV's and makes them smaller than they need to be, leading to blurry textures. So ease of use with the automatic flatten, but lower quality output. Render to texture also had lighting issues as the texture needs to be illuminated evenly, just extra steps. I guess I really need to embrace unwrap UVW.

            As for unwrap - if I am going to unwrap an object in 3DS - I wouldn't do any texturing in 3DS correct?...since that would just get obliterated when I do the unwrap. I should have the mindset of "If doing an unwrap, the textures will be made by in a 2D imaging program and/or with photos." Right? I *think* this is making more sense to me, just want make sure the ideas coagulating in my mind are correct.


              This was the first tutorial that gave me a insight onto taking a UV map and applying a texture to it with Photoshop:


                I don't remember exactly how UV'ing and texturing work in 3ds max so I will just say how things work with Maya. In Maya I think certain material nodes carry over to UDK, but very few. The generation of complex material effects is strictly done in UDK for all intents and purposes. I could decide I want to use a texture from Maya's own material library, and I could even use the "apply material to faces" functionality in lieu of UV'ing if the object is simple enough. But there are limitations here as UDK is picky about how it likes things done. If you have a model all set up with materials and textures in your 3d program, and export an FBX with embedded materials, that is no guarantee that UDK will actually use them, but if you do it properly, UDK will see and import everything. Like, don't use JPEG because UDK won't see that and you'd end up with randomly colored vectors as your final materials.

                There are several different UV'ing methods depending on the type of object. A head is usually unwrapped with spherical UV unwrap, an arm would use a cylindrical unwrap, and so on. Or you can use auto unwrap which takes its best guess at it. Afterward you can look at the UV view and drag the uv's around, resize them, relax them to get rid of pinched areas etc. I try to scale them up as much as possible so there is very little wasted space, but not so little that you find yourself with overlap errors. Having a "buffer zone" is important if you have several UV shells together in the same map space.

                When working with photo sources, I try to align the UV as much as possible to an image's natural orientation. Sometimes what you can do is, like with hair for example, you might have a texture image with a big row of perfectly straight strands and an alpha. With creative UV'ing you can utilize small areas of this one image at random, to come up with a whole head of hair that seems natural.

                Normal maps can be anything. I hear nDo is a really good solution, I still use CrazyBump often to generate some. Sometimes it works well to create the normal map from the original photo, but sometimes it looks absolutely terrible and using another image that would work well together with it is a better choice. Or even hand drawing. nDo had some nice examples in the video I saw. Then of course, there is the mesh detail you can get from higher subdivisions of your model if they exist.


                  You always want to UV map before setting up your textures.

                  For me mostly I'll take a texture off and just set the correct resolution in Photoshop and almost use it exactly that way. For other things you can draw it out in Photoshop.
                  3ds Max actually has a tool where you can paint directly onto the surface of your model to create the texture map. And as for unwrapping, it's got automatic unwrapping tools--you set your seams and it'll try to flatten it out with the most minimal distortion. So like a head you'd put a seam around the neck and one going from the back of the neck to the top of the head and that usually gets flattened pretty well from there. It's actually pretty simple to do although with objects with lots of pieces it can end up being annoying.


                    Then once your model is ready and textured how you like have a read through this
                    Sure this is the 3rd time ive linked to this in the last couple of days but its very handy. Naming conventions are pretty handy when exporting/importing to UDK. Name each part of the mesh the same just with _0, _1 and then the same for each texture map under a material. Say your material is called "MaterialName" then each subsequent texture map (diffuse, bump, specular) following that should be named "MaterialName_0", "MaterialName_1" Doing it this way enables you to import textures and create simple materials from them automatically based on what you've made in 3ds max, maya or blender, etc.

                    The materials in 3ds max don't translate over exactly, but having UDK create some base materials and plugging in texture samples saves you a lot of clicks and naming.