Home Technical Talk

UE3 asset workflow...

Recently I've been wondering what steps people take when they create an asset (static mesh) for UE3. Anyone want to share from beginning to end the basic steps they take when creating a static mesh of UE3? Here are a couple steps to give you an idea of what I'm looking for. I'm putting these in no specific order.

- Gather Reference
- Create High Poly
- Create Low poly
- Gather textures
- Create Normal map

etc.

I know that you may think that this is different for everyone but I'm just curious on how different people work.

Thanks.

Replies

  • Talbot
    Options
    Offline / Send Message
    Kevin Johnstone made a post I found discussing this is great detail.

    http://boards.polycount.net/showthread.php?p=678052#post678052
  • gamedev
    Options
    Offline / Send Message
    gamedev polycounter lvl 12
    Kevin's post pretty much sums it up but I'll share anyway. I have to say though, I wish I had the kind of time he does to spend on assets at work. No doubt they crank out an amazing amount of content at such a high quality bar, but the LD's there are masters of reuse and repurposing assets!

    The workflow and process of others has always really interested me. A lot can be learned by simply watching someone else and how they do things. It took a while for me to really focus on a workflow for all assets and try to stick to it and not jump around (within reason, as no two assets / enviros, etc are the same). But when I did, it was much easier to hone in on areas where vast improvements in speed and quality could be made and are still being improved.

    Not sure how in depth you wanted to get, but here is an overview for a basic asset that would end up in a game engine (UE3 for example):

    1 - Gather reference photos, make quick sketches, acquire concept, etc.

    2 - Break down how asset will be used, what makes it interesting (where detail can be placed), and identify any technical / artistic hurdles.

    3 - If modular (not a unique set piece), block out quick cubes / volumes that are to scale to ensure asset will snap on grid and give you an idea of the space you have to work with, and plan how mesh will be broken up to increase reusability and reduce the number of materials to mesh ratio to as close to 1:1 as possible. Seriously, don't overlook a little planning. It will really go a long way and save your ass!

    4 - Model high poly asset / pieces. Keeping in mind how asset pieces will be exploded for baking / paired up w/ low res counterparts. Mudbox elements where needed.

    5 - Use high poly assets as base for the low poly. Sometimes removing constraining edges / misc geo to make low poly, majority of the time creating a new low poly inside the volume of the high.

    6 - UV map unique low poly meshes. Parts that will be instanced / duplicated / used elsewhere on the model are added last, almost right before export. With elements of the model that need unique UV space, put all UV chunks / islands in the 0,1 space for baking later. Scale all UV chunks relative to each other to ensure even texel density.

    7 - Setup projections for baking if used. Bake Normal maps, Ambient Occlusion maps, and masks (flat colors for different materials for easy selection in Photoshop) for all exploded elements. Bake AO map w/ all low poly elements combined as well for additional detail.

    8 - Combine baked texture maps into one texture map per type (i.e. take all normal maps baked out from different element and combine them into one normal map for the model)

    9 - Add any additional normal detail by modeling detail bits on a plane over the assets UV layout or cleanup any normal map errors / smoothing issues.

    10 - Use AO map and masks as a basis for color maps.

    11 - assemble complete low res asset (attach all elements, instance any duplicated elements etc). Export to engine and test smoothing, lighting, etc w/ normal map and base AO map on asset.

    12 - Introduce photosource for color maps. Add well placed detail before adding grunge and othe misc overlays. At the same time begin thinking about and working on the spec map.

    13 - Get texture maps in engine and begin tweaking a shader. Add any additional maps if needed (masks, reflection, emissive, height, etc). Iterate on textures and materials till its fabulous!

    14 - create collision geometry and lightmap UV's if not vertex lit.

    15 - profit.

    And hopefully you're done. Man, writing that out is tedious. We do a lot shit to make some art players are just going to run on by!

    Cheers,

    Tyler
  • ae.
    Options
    Offline / Send Message
    ae. polycounter lvl 12
    Ill just drop in here real quick, usually alot of people model there high-poly assets and then make a low-poly to bake in the normals, i kinda do it a little differently.

    What i find easier (for myself) is to make a medium polygon model wich has a bunch of edge loops and extra geometry that a low-poly doesent need but helps me build a good high-poly model around i use it to help define the shapes that will be on the high-poly and then be baked down into the lowpolygon model.

    i find this easier than making a highpoly model and then making a low-polygon model.

    but it depends on what you are more comfortable with.
  • Peris
    Options
    Offline / Send Message
    Peris polycounter lvl 17
    i agree with ae. Get a mockup of your lowpoly as good as possible first so you know it will work for gameplay and the uv's are laid out perfectly, often so they can be reused in various configurations. It's very important to plan this out perfectly, it will save you alot of time in the end if you have highly optimised textures that can be used in different ways.
    I really think making a highpoly first is a bad idea, except for in some situations or specific parts of the model. Really depends on what you are making!
  • WOLO
    Options
    Offline / Send Message
    Me and my buddies follow this workflow:
    1. Brainstorm basic object
    What's its purpose, how weathered would it be, how old, etc.

    2. find lots of reference pictures
    What does painted metal look like after water damage, or reference pictures of little doodads like cracks, or gauges, etc. Go back and draw or redraw your own reference pictures prior to modelling.

    3. Create cage mesh
    this is a preparatory mesh for importing into mudbox or whatever and doing the highres detail. At this point, it can either be NURB'd and worked on in max or whatever (adding little bolts, etc) if its something very machined and precise like a transmission or engine, or it can be exported into mudbox or something for the highres if you're doing something like a wartorn concrete column to get the nitty gritty organic detail.

    -don't listen to people who say stay away from triangles because they don't tessellate on highres meshes. They DO tessellate well, what they're really saying is stay away from really thin triangles. On that note, stay away from really thin polygons too.
    -Pay attention to your edgeflow, and make sure you don't have tiny polygons on one area but vastly larger ones somewhere else. when creating a highres mesh from this, its frustrating to have to add another tesselation just to get the same detail on the feet as the hands or face.

    4. Create Highres mesh
    If i'm doing something pretty damaged, i'll take the cage mesh into mudbox and add dents and missing chunks etc. The beauty of mudbox is that after you're finished with your highres, you can then then go back to the base import (cage mesh) and mudbox will have already automatically adjusted the model to perfectly conform to the dimensions of the highres for pretty much perfect baking.

    -This may seem a bit obvious, but don't bother creating detail on the highres thats bulging out from the model so much that it drastically changes your silhouette. Of course, mudbox will take this into account and modify the lowres you imported, its usually just weird and screws up things when you're UVing or something.
    -Keep in mind the size of the texture you're baking to--and the filesize as you add more tesselation. You don't want to overdetail, because then you're just wasting time and computing power.

    5. Unwrap/optimize cage mesh
    Remove excessive edgeloops etc on nonorganics like guns and remove every vertex that doesn't define a shape. Now's the time to lower the polycount in areas that don't need as many as other places, or places that don't bend like elbows or knees.

    -Try and unwrap it in large chunks, many people are afraid of distortion but if you do it right, you don't usually have to worry about this. Use the relax dialogue!

    6.
    Baking everything
    Using your new lowres, bake AO and normals from your highres.

    -At this point you should do some realtime tests of your AO and normals on the lowres. If you have max or UE3, do it.

    7. Diffuse
    Paint diffuse, remember to leave out any specular highlighting and excessive shadows.

    8. Specular/Glow
    Depending on the diffuse, you can either take the diffuse and modify the crap out of it to get a good spec, or you might have to make one from scratch.

    9. Ingame
    Compile model and tweak your shaders.

    Oh boy, that got a bit longer than i expected.
  • Talbot
    Options
    Offline / Send Message
    Thanks. Everything people posted was exactly what I was looking for. :)
Sign In or Register to comment.