Announcement

Collapse
No announcement yet.

How to make a commercial UDK game for only the $100 UDK license

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    How to make a commercial UDK game for only the $100 UDK license

    Alternate Title: My Import Pipeline using only free programs.

    Pre-amble: A few months ago a good friend of mine threw out an idea for a game he would like to see made. We don't have a lot of extra money so doing it on the cheap is a necessity.
    {
    I was really bored with life at this point and we both felt we needed a project. As I kept digging and digging into what we needed and what alternatives we could use to the $4k max / maya
    and the $700 photoshop, I ran out of excuses to not start work on the project.

    The following bits of information are how I figured out how to do that. I tried to write it up in a general fashion, so please forgive any awkwardness in addressing the reader. It was also originally conceived as an internal document, but as much as I have learned from the internets I felt it only right to give back. On the gathering of the this information Ive found out that the internet has all the answers I needed. It just sometimes took me a week or two to learn what my question actually was. (Im by no means the sharpest knife in the drawer, but Im pretty single minded sometimes) If this is something you are looking into and find this useful but not making any sense, google the things that you don't know. Normal maps, UV layouts, ect.
    }

    Also Please keep in mind, This is all stuff I learned in the past 3 months or so with 0 experience of any kind of modeling or 3D rendering. The only thing I count as useful is a joy of gameplaying, and an introductory C+ programming class I took a few years ago. If any of this is horribly wrong, please correct me.

    I see this as being useful to people that want to make a game but don't know how to start. Or how to just get content into UDK in general.
    And now on to the goodies.

    This first bit covers getting Blender output into UDK. A free open source 3D modeling Program available here: http://www.blender.org/
    I followed a lot of CGBOORMAN 's tutorials on youtube for learning blender as well as other general internet searches. http://www.youtube.com/user/cgboorman

    I'll likely add to this when we get to the menu system, with scaleform practices.
    In keeping with the cheap route, we plan on using a 'rented' Adobe Flash professional. As preleminary research makes it look very difficult / impossible to interface a free / open source flash system into udk.


    Blender Black Magic Level 1. Static Meshes

    All Notes Reference Blender 2.62
    I know there's a new one out but I learned on 2.62 and everything works.
    I really don't want to poke something and have it break.

    Code:
    The scope of this document assumes a working knowledge of blender and gimp.  
    It is not intended to teach either of these programs. This is to facilitate 
    a smooth workflow from blender and gimp into the UDK engine.
    
    Rough polygon numbers from UDK- using unreal tournament 3 content:  Rocket 
    launcher weapon and the shock rifle weapon have ~5kish triangles, or 2.5k 
    quads. Hero set pieces, (unique focal meshes,) run about 5-6 thousand triangles.
    
    As of yet we do not yet know what our ideal polygon budget per asset is.
    Blender works in 4 sided polygons.  Unreal works in triangles.  Unreal will 
    automatically triangulate imported meshes. Imo it is easier to work with 
    quads in blender and let unreal take care of the triangulation.  If Triangulation 
    is desired in Blender for polygon optimization, it is fine to do it after 
    uv unwrapping. (Which is a ***** if you are working with triangles.)
    
    
    Black Magic Level 1.  Blender Static Mesh
    
    
    The mesh for export must Not be scaled in object mode.  Un-even rotation of meshes
     in object mode is also a problem. Scaling:  1 meter in blender = 1 unreal unit.  
    The blender scale can be changed in the scene tab (image of cylinder and ball) of the 
    properties window under units. Average height of human in UDK is 96 unreal units.  
    If average human is 6' tall that makes 16 meters per foot in blender to the conversion.
    
    Objects need to fit to an unreal grid which is based on the power of 2.  ideal models
    are sized to snap to a 8,16,32,64.... grid.  That is, its x,y dimensions are multiples
    of 2 at least, better yet is 4 or 8. Because of this it is recommended to open a new 
    blender project,  Lock all rotation and scaling in object mode.  Switch units to metric, 
    and then save user settings under file.  This will make all new projects open optimized 
    for fast workflow. 
    
    For Light Mapping within the UDK engine 2 sets of UV's are required.  UV's can be 
    generated within UDK but these are far from optimal. The first set of uv's are for 
    texture mapping, diffuse, specular, normal, ect.  The second set is recognized by 
    UDK as the lightmapping UV's.  (UDK starts naming at 0 so when checking light map
    uv's they should be using channel 1) uv sets can be accessed via the inverted 
    pyramid on the properties panel.  click the '+' button beside uv's to add a second
    set of uv's.  These can be named within blender to keep them sorted.  Each uv set is 
    unique and can be arranged however desired.  Light mapping should allocate the most space 
    to the biggest most prominent faces of the object.  UDK automatically generates these
    textures to give the impression of shadows cast by the local lighting in the level.
    
    For Normal Mapping. (Black magic Level 2)
        Need low polly and high polly version of the same model. Ive had the best luck 
    with the low polly version on top of the high polly version, completely blocking it 
    from view.  The low polly model, The working model, needs to be uv unwrapped and to
    have a material. The high polly version just needs to exist.  These objects need to 
    occupy the same space as exactly as possible. Make sure the UV editor window is open 
    along side the 3d viewport.  Get a new image into the uv editor.  Keep poking at it 
    until you get a new solid black image. Select the high polly model, then the low 
    polly model.  Go to the camera icon on the properties window. Open the bake tab. 
    Change full render to 'Normals.'  Make sure normal space is selected as 'tangent'. 
    And check the box of  'selected to active.'  Hit the bake button and cross your 
    fingers.
    
    Before Export the following need to be checked:
    
    Check the normals.  View the object as a textured solid.  If everything is white 
    and black, you are good to go.  If you can see inside the mesh, you have a borked normal. 
    The left toolshelf has an option under normals: recalculate.  This should fix the situation. 
    If not normals can be recalculated on a case by case basis, select the offending face(s), 
    press 'w' select 'Flip Normals.' 
    
    Check for manifold errors. In vertex select mode, have nothing highlighted then press 
    ctrl+alt+shift+M.  If nothing highlights you are good to go.  Anything highlighted is borked. 
    It might be a un-applied mirror modifier, which will go away when the mirror is applied. 
    Otherwise it might be a floating face or a set of borked extrusions.
    
    Remove doubles.  Quick and clean fix for a ham fisted extrusion mistake. Left toolshelf under 
    remove.
    
    Only one mesh per .fbx export. Mesh does not need to be joined by vertex.  I.E. it is 
    acceptable to have a cylinder shoved into a cube as long as they are both joined, (Select Both 
    and press Ctrl+J) parenting does not work for this(possibly a lie), the meshes must be 
    joined to each other. And show as one object on the outliner.(After writing note:  The 
    above might not be totally accurate, Collision Meshes can be
    Exported along with the target mesh)
    
    
    Filenames should avoid spaces,  this causes an extra step on import.  Descriptive concise 
    names are preferred for naming.  SM can proceed a static mesh, and SK can proceed a skeletal 
    mesh if desired. Or if working on similar named objects.  SM_rocket; SK_rocket.
    
    Export Checklist:
        -Manifold errors
        -Proper normals
        -2 sets of uv's
        -Make absolutely sure that the scale in object mode reads as: 1,1,1.
        -Origin should be at 0,0,0.  And make sense for the model.  Modular 
    pieces should have it in the corner, most others in the center of geometry, 
    which may or may not be 0,0,0.
        -Dimensions make sense.  16 meters / foot in game. 
        -Filename Does not contain spaces or off characters '_' works well here. 
    
        Export the file as .fbx autodesk format.  Using default settings for blender 2.62 works well.

    Skeletal Meshes and Animation - Blender continued
    Code:
    Skeletal meshes follow all the same rules as static meshes.
    
    Before adding an armature, look over the model and make sure it is a finished 
    piece.  Feel free to add extra polygons around a prominent joint, to avoid 
    excessive texture stretching while the model is in motion.
    
    In object mode with nothing selected press shift+A, add new object 
    armature->Single bone. 'Armature' should appear in the outliner. At this point
    in the outliner, there should only be one model, camera, light, and armature.  
    As work commences make sure a second instance of armature does not appear.  
    This would be bad.  At this point the armature will have its own hierarchy
    and not be set to parent of anything.  The mesh will not yet move with the bones.
    With the bone selected press the armature tab button on the properties window. 
    Check x-ray mode under display.  This will make the bones always visible through the mesh.
    Only add new bones while in edit mode of the armature, IE there is a full bone 
    selected in edit mode.  Not doing so is inviting more instances of armature.
    Add new bones as needed in 3d space inside the model.  Shift+D, and extruding 
    both work in this mode.  Shift+A should directly give a new bone.  If not, 
    it is being done in the wrong mode.
    
    Bone names and parents are set in the bone tab of the properties window. 
    It is not necessary to connect bones to each other.
    
    Naming conventions should be followed for clarity. 
    MajorDesignation_MinorDesignation.R or .L for right or left designation of 
    bilateral symmetry.  Example,   Bone:  Arm_Lower.R  or Finger_Index.L.  
    This is for easy categorization and finding of specific bones when working 
    and animating.  As well, blender recognizes the .R .L suffix and if the Right
     side armature is copied and rotated to occupy the left left side.  
    With flipped bones, usually designated .001, selected press 'w' and select flip bone names.
    
    A root bone needs to be placed lower center front of the model.  Preferably at 0,0,0.  
    This bone needs to be the highest bone in the hierarchy.  All other bones within the 
    armature are children, grandchildren ect, of this bone.  Make sure this bone has the 
    deform option unchecked in the bone properties tab.
    
    Once all bones are placed.  Move into pose mode, accessible via mode select 
    with armature selected.  Make sure the skeleton is working as intended.  Check 
    parenting,  children are following parents, and everything uniformly following 
    the root bone.  The mesh will not yet move with the bones.
    
    Once satisfied that all is well it is recommended to save a copy of the working 
    file,  In case rollbacks are needed.
    
    In object mode Select the mesh first, shift+Right click on any bone.  
    Ctrl+P to parent the mesh to the armature.  Select armature deform->with automatic weights.
    
    In the outliner, the mesh will disappear and become a child of the armature.  
    Movement of the armature within pose mode may reveal unexpected vertexes moving with 
    random bones.  Go to object mode and select the mesh.  Select 'weight paint mode' 
    from mode select.  The mesh should become shaded in blue and red.  Display mode may 
    need to be set to solid.
    
    The left toolshelf should now have 'brush' expanded down. Expand down 'tool'
     and change 'mix' to add or subtract.  For adding or removing vertices to a vertex group.
    
    Select bones in this mode by right clicking on them.  If they are not visible, 
    make sure the armature is set to draw in x-ray mode.
    
    With a bone selected its influenced vertexes are colored.  Solid blue 
    is un-influenced.  Solid red is 100% influence.  Bones can be moved in this mode 
    similarly to pose mode, so vertices can be easily checked.
    
    The armature modifier is not 'applied' prior to export.  It does not 
    ever need to be applied, afik.
    
    Prior to export rename the armature in the outline to something descriptive of the model. 
    No spaces in this name.  Upon UDK import the name of the armature will become the default
    name of the animation set.
    
    Export as .fbx autodesk with default blender settings in version 2.62.
    
    
    
    Animation
        (This is less extensive but should function for rough workflow at this point in time)
    Open a window as the 'dope sheet.' Select action editor from the currently named dopesheet 
    vertical select box.
    
    Click the '+new' button and rename the default 'action' the name of the animation.  
    This can be repeated indefinitely afik,  for a set of animations.
    
    Make sure the correct animation name is selected in the action editor.  This can be 
    changed by clicking the inverted triangle immediately to the left of the name and selecting
     previously entered names.
    
    Animation is now as normal.  'I'  to insert key frames.  Alt+I to remove keyframes.  
    Animation is set distinctly to the different animations.  Blender will automatically 
    copy the current animation into a new animation set.  These keyframes can be deleted 
    with Alt+I with the time line over the desired key frame and the mouse cursor in the 3dviewport.
    
    Best practices are unknown for animation at this point.
    
    A single .fbx file can be imported into UDK containing: one mesh, one skeleton, 
    and multiple animation sets.
    
    Filename and Armature object do not contain spaces please.
    Export as .fbx.  Un-check 'Optimize key frames' for now, just to be safe.
    
    Note: On udk import.  Viewing animations: Un-check 'anim rotation only' 
    under anim set tab->anim set vertical expand.   Before borking out that an animation is 
    not working.  If it still does not work, then bork out.

    This bit is using the free graphics program GIMP available : http://www.gimp.org/
    Code:
    From Blender export the UV's you are using for texture mapping through the UV editor window, 
    UV's-> Export UV layout.  Export as PNG, I like to export with 0% opacity fillrate, to avoid 
    color distortion when using it as an overlay gimp.
    
    Open this file in GIMP.  Add a new layer and work in this layer.  Don't highlight the 
    layer that the UV's are on. 
    
    Stock Photos can be grabbed from CGtextures.com.  These are free for us to use and 
    manipulate as model wrap.  An account is needed to download these files and a 15mb/day 
    download limit is enforced.  Using a download program to re create a local library is an 
    invitation to the ban hammer.
    
    Gimp has a normal map generator plug in accessed here: http://code.google.com/p/gimp-normalmap/. 
    Install as in the read me.  This allows generation of normal map from textures and images. 
    Normal map chunks can be pasted into the normal map for the model.
    
    UDK only accepts textures in square power of 2 increments.  32,64,128,512,1024,2048. 
    
    File names should end in _D for Diffuse texture. _N for normal map, _EM for emissive.
     _S for specular if a detailed specular map is required.  
    See here: http://www.hourences.com/tutorials-ue3-texture-optimization/ for notes on 
    how we can generate specular maps within UDK to reduce the memory footprint of our work.
    
    Save as .PNG, and default settings work well for UDK.  Other Lossless filetypes are also supported. 
    (bmp, Float, pcx, psd, and tga)
    
    To view your textures on your model, Fire up blender and select your model.  Make sure 
    it has a material, then click on the checkered texture button next to it. add new.  Change 
    'clouds' to image or movie. Open your file. Change the mapping to UV and the set you named 
    for your diffuse UV.   Then make sure the influences are correct.  Diffuse gets color.  
    Normal and specular don't.  Normal gets geometry-> Normal.  And specular gets its own family.
     
     If things are not as expected, check your lamp, The spotlight is useless for udk scaled models.  Also
    make sure you have the right file's loaded,  and that they are rotated correctly to line up with your uv's.

    As far as UDK itself goes this: http://udn.epicgames.com/Three/WebHome.html is your best friend.
    Want to make a totally new game start here: http://udn.epicgames.com/Three/BasicGameQuickStart.html

    Editing unreal script: I like notepad++ free text editing program. Using the UnrealScript Plugin bit, located here: http://sourceforge.net/apps/mediawik...nguage_Files#U
    Posted on these forums here: http://forums.epicgames.com/threads/...autocompletion

    -Giggity

    #2
    I always thought FBX for skeletal meshes only allowed a single animation per file, but maybe that's changed. As an alternative there's also the PSK/PSA exporter that handles full animation sets.

    There are now 3 (three!) complete IDE solutions for scripting:
    http://forums.epicgames.com/threads/...v2-4-Available
    http://forums.epicgames.com/threads/...DK-IDE-Updated
    http://uside.codeplex.com/

    Other useful free programs include Inkscape, XNormal, Audacity, Zinewave Podium and Sculptris.

    Comment


      #3
      Originally posted by Spoof View Post
      I always thought FBX for skeletal meshes only allowed a single animation per file, but maybe that's changed. As an alternative there's also the PSK/PSA exporter that handles full animation sets.
      That used to be the case, luckily the fbx exporter's been worked on in the last few releases of blender and now exports rather nicely. My team switched from psk/psa completely once we saw the quality of the current Blender-UDK fbx capabilities.

      Also, good tut!

      Comment


        #4
        I'll check out the FBX option this month then, it was a little clunky last time I tried (last year).

        Comment


          #5
          And what about smoothing groups in FBX, as far as I remember we couldn't do it. Has sth changed since..hmm....4-5 months?

          Comment


            #6
            Smoothing groups came in fine for me. So far I've only imported one model that had one smoothing group.

            The thing that initially threw me with FBX was the model orientation, it either gets a little wierd, or Im just missing a couple things.

            I tried to get the PSK/PSA format to work with blender, but the plugin I found and was using was far to picky, and I could never get it to work. (Again could be completely contributed to lack of know how)

            I forgot to mention Sculptris, and I'm off to check out audacity.

            -Giggity

            Comment


              #7
              Originally posted by Spoof View Post
              Not trying to take the wind out of your sails, but I wouldn't call all of them a "complete IDE solution" yet.
              The Unreal-X Editor doesn't consider itself an IDE, I think. It's more an advanced text editor for UnrealScript, but it lacks the awareness of relations between classes and a debugging feature.
              Eternalcrisis IDE lacks a bit of that awareness as well, but it provides the first debugger that I actually got to work from any of the IDEs, although it's still a bit buggy and tends to freeze with the application in some cases.
              Alex's UScript IDE always made me some trouble to set it up properly with the reliance on the Visual Studio Shell, so I can't really judge it. Never liked the bloated VS environment anyway, though.

              I would rather recommend WOTgreal, which, despite being quite old, is really worth being called an UnrealScript IDE. It provides so many comfort features and is optimized to every aspect of UnrealScript that I wouldn't want to ever code without it these days. Debugger doesn't work properly in the UDK, but the rest of it is more than making up for it.


              As for free Flash alternatives for Scaleform: You could still use the old-fashioned Canvas-approach if you want to keep things cheap. Check the link in my signature.
              Requires a bit understanding of UnrealScript but then it's quite easy. And examples are provided.

              Comment


                #8
                Originally posted by Slamm View Post
                Alternate Title: My Import Pipeline using only free programs.

                Pre-amble: A few months ago a good friend of mine threw out an idea for a game he would like to see made. We don't have a lot of extra money so doing it on the cheap is a necessity.
                {
                I was really bored with life at this point and we both felt we needed a project. As I kept digging and digging into what we needed and what alternatives we could use to the $4k max / maya
                and the $700 photoshop, I ran out of excuses to not start work on the project.

                The following bits of information are how I figured out how to do that. I tried to write it up in a general fashion, so please forgive any awkwardness in addressing the reader. It was also originally conceived as an internal document, but as much as I have learned from the internets I felt it only right to give back. On the gathering of the this information Ive found out that the internet has all the answers I needed. It just sometimes took me a week or two to learn what my question actually was. (Im by no means the sharpest knife in the drawer, but Im pretty single minded sometimes) If this is something you are looking into and find this useful but not making any sense, google the things that you don't know. Normal maps, UV layouts, ect.
                }

                Also Please keep in mind, This is all stuff I learned in the past 3 months or so with 0 experience of any kind of modeling or 3D rendering. The only thing I count as useful is a joy of gameplaying, and an introductory C+ programming class I took a few years ago. If any of this is horribly wrong, please correct me.

                I see this as being useful to people that want to make a game but don't know how to start. Or how to just get content into UDK in general.
                And now on to the goodies.

                This first bit covers getting Blender output into UDK. A free open source 3D modeling Program available here: http://www.blender.org/
                I followed a lot of CGBOORMAN 's tutorials on youtube for learning blender as well as other general internet searches. http://www.youtube.com/user/cgboorman

                I'll likely add to this when we get to the menu system, with scaleform practices.
                In keeping with the cheap route, we plan on using a 'rented' Adobe Flash professional. As preleminary research makes it look very difficult / impossible to interface a free / open source flash system into udk.


                Blender Black Magic Level 1. Static Meshes

                All Notes Reference Blender 2.62
                I know there's a new one out but I learned on 2.62 and everything works.
                I really don't want to poke something and have it break.

                Code:
                The scope of this document assumes a working knowledge of blender and gimp.  
                It is not intended to teach either of these programs. This is to facilitate 
                a smooth workflow from blender and gimp into the UDK engine.
                
                Rough polygon numbers from UDK- using unreal tournament 3 content:  Rocket 
                launcher weapon and the shock rifle weapon have ~5kish triangles, or 2.5k 
                quads. Hero set pieces, (unique focal meshes,) run about 5-6 thousand triangles.
                
                As of yet we do not yet know what our ideal polygon budget per asset is.
                Blender works in 4 sided polygons.  Unreal works in triangles.  Unreal will 
                automatically triangulate imported meshes. Imo it is easier to work with 
                quads in blender and let unreal take care of the triangulation.  If Triangulation 
                is desired in Blender for polygon optimization, it is fine to do it after 
                uv unwrapping. (Which is a ***** if you are working with triangles.)
                
                
                Black Magic Level 1.  Blender Static Mesh
                
                
                The mesh for export must Not be scaled in object mode.  Un-even rotation of meshes
                 in object mode is also a problem. Scaling:  1 meter in blender = 1 unreal unit.  
                The blender scale can be changed in the scene tab (image of cylinder and ball) of the 
                properties window under units. Average height of human in UDK is 96 unreal units.  
                If average human is 6' tall that makes 16 meters per foot in blender to the conversion.
                
                Objects need to fit to an unreal grid which is based on the power of 2.  ideal models
                are sized to snap to a 8,16,32,64.... grid.  That is, its x,y dimensions are multiples
                of 2 at least, better yet is 4 or 8. Because of this it is recommended to open a new 
                blender project,  Lock all rotation and scaling in object mode.  Switch units to metric, 
                and then save user settings under file.  This will make all new projects open optimized 
                for fast workflow. 
                
                For Light Mapping within the UDK engine 2 sets of UV's are required.  UV's can be 
                generated within UDK but these are far from optimal. The first set of uv's are for 
                texture mapping, diffuse, specular, normal, ect.  The second set is recognized by 
                UDK as the lightmapping UV's.  (UDK starts naming at 0 so when checking light map
                uv's they should be using channel 1) uv sets can be accessed via the inverted 
                pyramid on the properties panel.  click the '+' button beside uv's to add a second
                set of uv's.  These can be named within blender to keep them sorted.  Each uv set is 
                unique and can be arranged however desired.  Light mapping should allocate the most space 
                to the biggest most prominent faces of the object.  UDK automatically generates these
                textures to give the impression of shadows cast by the local lighting in the level.
                
                For Normal Mapping. (Black magic Level 2)
                    Need low polly and high polly version of the same model. Ive had the best luck 
                with the low polly version on top of the high polly version, completely blocking it 
                from view.  The low polly model, The working model, needs to be uv unwrapped and to
                have a material. The high polly version just needs to exist.  These objects need to 
                occupy the same space as exactly as possible. Make sure the UV editor window is open 
                along side the 3d viewport.  Get a new image into the uv editor.  Keep poking at it 
                until you get a new solid black image. Select the high polly model, then the low 
                polly model.  Go to the camera icon on the properties window. Open the bake tab. 
                Change full render to 'Normals.'  Make sure normal space is selected as 'tangent'. 
                And check the box of  'selected to active.'  Hit the bake button and cross your 
                fingers.
                
                Before Export the following need to be checked:
                
                Check the normals.  View the object as a textured solid.  If everything is white 
                and black, you are good to go.  If you can see inside the mesh, you have a borked normal. 
                The left toolshelf has an option under normals: recalculate.  This should fix the situation. 
                If not normals can be recalculated on a case by case basis, select the offending face(s), 
                press 'w' select 'Flip Normals.' 
                
                Check for manifold errors. In vertex select mode, have nothing highlighted then press 
                ctrl+alt+shift+M.  If nothing highlights you are good to go.  Anything highlighted is borked. 
                It might be a un-applied mirror modifier, which will go away when the mirror is applied. 
                Otherwise it might be a floating face or a set of borked extrusions.
                
                Remove doubles.  Quick and clean fix for a ham fisted extrusion mistake. Left toolshelf under 
                remove.
                
                Only one mesh per .fbx export. Mesh does not need to be joined by vertex.  I.E. it is 
                acceptable to have a cylinder shoved into a cube as long as they are both joined, (Select Both 
                and press Ctrl+J) parenting does not work for this(possibly a lie), the meshes must be 
                joined to each other. And show as one object on the outliner.(After writing note:  The 
                above might not be totally accurate, Collision Meshes can be
                Exported along with the target mesh)
                
                
                Filenames should avoid spaces,  this causes an extra step on import.  Descriptive concise 
                names are preferred for naming.  SM can proceed a static mesh, and SK can proceed a skeletal 
                mesh if desired. Or if working on similar named objects.  SM_rocket; SK_rocket.
                
                Export Checklist:
                    -Manifold errors
                    -Proper normals
                    -2 sets of uv's
                    -Make absolutely sure that the scale in object mode reads as: 1,1,1.
                    -Origin should be at 0,0,0.  And make sense for the model.  Modular 
                pieces should have it in the corner, most others in the center of geometry, 
                which may or may not be 0,0,0.
                    -Dimensions make sense.  16 meters / foot in game. 
                    -Filename Does not contain spaces or off characters '_' works well here. 
                
                    Export the file as .fbx autodesk format.  Using default settings for blender 2.62 works well.

                Skeletal Meshes and Animation - Blender continued
                Code:
                Skeletal meshes follow all the same rules as static meshes.
                
                Before adding an armature, look over the model and make sure it is a finished 
                piece.  Feel free to add extra polygons around a prominent joint, to avoid 
                excessive texture stretching while the model is in motion.
                
                In object mode with nothing selected press shift+A, add new object 
                armature->Single bone. 'Armature' should appear in the outliner. At this point
                in the outliner, there should only be one model, camera, light, and armature.  
                As work commences make sure a second instance of armature does not appear.  
                This would be bad.  At this point the armature will have its own hierarchy
                and not be set to parent of anything.  The mesh will not yet move with the bones.
                With the bone selected press the armature tab button on the properties window. 
                Check x-ray mode under display.  This will make the bones always visible through the mesh.
                Only add new bones while in edit mode of the armature, IE there is a full bone 
                selected in edit mode.  Not doing so is inviting more instances of armature.
                Add new bones as needed in 3d space inside the model.  Shift+D, and extruding 
                both work in this mode.  Shift+A should directly give a new bone.  If not, 
                it is being done in the wrong mode.
                
                Bone names and parents are set in the bone tab of the properties window. 
                It is not necessary to connect bones to each other.
                
                Naming conventions should be followed for clarity. 
                MajorDesignation_MinorDesignation.R or .L for right or left designation of 
                bilateral symmetry.  Example,   Bone:  Arm_Lower.R  or Finger_Index.L.  
                This is for easy categorization and finding of specific bones when working 
                and animating.  As well, blender recognizes the .R .L suffix and if the Right
                 side armature is copied and rotated to occupy the left left side.  
                With flipped bones, usually designated .001, selected press 'w' and select flip bone names.
                
                A root bone needs to be placed lower center front of the model.  Preferably at 0,0,0.  
                This bone needs to be the highest bone in the hierarchy.  All other bones within the 
                armature are children, grandchildren ect, of this bone.  Make sure this bone has the 
                deform option unchecked in the bone properties tab.
                
                Once all bones are placed.  Move into pose mode, accessible via mode select 
                with armature selected.  Make sure the skeleton is working as intended.  Check 
                parenting,  children are following parents, and everything uniformly following 
                the root bone.  The mesh will not yet move with the bones.
                
                Once satisfied that all is well it is recommended to save a copy of the working 
                file,  In case rollbacks are needed.
                
                In object mode Select the mesh first, shift+Right click on any bone.  
                Ctrl+P to parent the mesh to the armature.  Select armature deform->with automatic weights.
                
                In the outliner, the mesh will disappear and become a child of the armature.  
                Movement of the armature within pose mode may reveal unexpected vertexes moving with 
                random bones.  Go to object mode and select the mesh.  Select 'weight paint mode' 
                from mode select.  The mesh should become shaded in blue and red.  Display mode may 
                need to be set to solid.
                
                The left toolshelf should now have 'brush' expanded down. Expand down 'tool'
                 and change 'mix' to add or subtract.  For adding or removing vertices to a vertex group.
                
                Select bones in this mode by right clicking on them.  If they are not visible, 
                make sure the armature is set to draw in x-ray mode.
                
                With a bone selected its influenced vertexes are colored.  Solid blue 
                is un-influenced.  Solid red is 100% influence.  Bones can be moved in this mode 
                similarly to pose mode, so vertices can be easily checked.
                
                The armature modifier is not 'applied' prior to export.  It does not 
                ever need to be applied, afik.
                
                Prior to export rename the armature in the outline to something descriptive of the model. 
                No spaces in this name.  Upon UDK import the name of the armature will become the default
                name of the animation set.
                
                Export as .fbx autodesk with default blender settings in version 2.62.
                
                
                
                Animation
                    (This is less extensive but should function for rough workflow at this point in time)
                Open a window as the 'dope sheet.' Select action editor from the currently named dopesheet 
                vertical select box.
                
                Click the '+new' button and rename the default 'action' the name of the animation.  
                This can be repeated indefinitely afik,  for a set of animations.
                
                Make sure the correct animation name is selected in the action editor.  This can be 
                changed by clicking the inverted triangle immediately to the left of the name and selecting
                 previously entered names.
                
                Animation is now as normal.  'I'  to insert key frames.  Alt+I to remove keyframes.  
                Animation is set distinctly to the different animations.  Blender will automatically 
                copy the current animation into a new animation set.  These keyframes can be deleted 
                with Alt+I with the time line over the desired key frame and the mouse cursor in the 3dviewport.
                
                Best practices are unknown for animation at this point.
                
                A single .fbx file can be imported into UDK containing: one mesh, one skeleton, 
                and multiple animation sets.
                
                Filename and Armature object do not contain spaces please.
                Export as .fbx.  Un-check 'Optimize key frames' for now, just to be safe.
                
                Note: On udk import.  Viewing animations: Un-check 'anim rotation only' 
                under anim set tab->anim set vertical expand.   Before borking out that an animation is 
                not working.  If it still does not work, then bork out.

                This bit is using the free graphics program GIMP available : http://www.gimp.org/
                Code:
                From Blender export the UV's you are using for texture mapping through the UV editor window, 
                UV's-> Export UV layout.  Export as PNG, I like to export with 0% opacity fillrate, to avoid 
                color distortion when using it as an overlay gimp.
                
                Open this file in GIMP.  Add a new layer and work in this layer.  Don't highlight the 
                layer that the UV's are on. 
                
                Stock Photos can be grabbed from CGtextures.com.  These are free for us to use and 
                manipulate as model wrap.  An account is needed to download these files and a 15mb/day 
                download limit is enforced.  Using a download program to re create a local library is an 
                invitation to the ban hammer.
                
                Gimp has a normal map generator plug in accessed here: http://code.google.com/p/gimp-normalmap/. 
                Install as in the read me.  This allows generation of normal map from textures and images. 
                Normal map chunks can be pasted into the normal map for the model.
                
                UDK only accepts textures in square power of 2 increments.  32,64,128,512,1024,2048. 
                
                File names should end in _D for Diffuse texture. _N for normal map, _EM for emissive.
                 _S for specular if a detailed specular map is required.  
                See here: http://www.hourences.com/tutorials-ue3-texture-optimization/ for notes on 
                how we can generate specular maps within UDK to reduce the memory footprint of our work.
                
                Save as .PNG, and default settings work well for UDK.  Other Lossless filetypes are also supported. 
                (bmp, Float, pcx, psd, and tga)
                
                To view your textures on your model, Fire up blender and select your model.  Make sure 
                it has a material, then click on the checkered texture button next to it. add new.  Change 
                'clouds' to image or movie. Open your file. Change the mapping to UV and the set you named 
                for your diffuse UV.   Then make sure the influences are correct.  Diffuse gets color.  
                Normal and specular don't.  Normal gets geometry-> Normal.  And specular gets its own family.
                 
                 If things are not as expected, check your lamp, The spotlight is useless for udk scaled models.  Also
                make sure you have the right file's loaded,  and that they are rotated correctly to line up with your uv's.

                As far as UDK itself goes this: http://udn.epicgames.com/Three/WebHome.html is your best friend.
                Want to make a totally new game start here: http://udn.epicgames.com/Three/BasicGameQuickStart.html

                Editing unreal script: I like notepad++ free text editing program. Using the UnrealScript Plugin bit, located here: http://sourceforge.net/apps/mediawik...nguage_Files#U
                Posted on these forums here: http://forums.epicgames.com/threads/...autocompletion

                -Giggity

                I used to use all those programs until I sold my car and bought the Autodesk creation suite and Adobe creation suite...............I'll never go back to free software because very little input goes into development!
                Its a bit like free education! Poor quality and under funded...

                Comment

                Working...
                X