Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
6. September 2013


As I mentioned in the prior tutorial section creating a UVMap is basically like wielding a pair of virtual scissors to cut your 3D object up so it can be smushed flat.  As we saw earlier, the default unwrap map is pretty, subpar:


Default unwrap:



Let’s start cutting things up.  First we will default the wings.  In 3D view, make sure you are in Edit mode and Edge selection, then select the edges at the base of the wing, like so:



Now we want to mark the selected as a seam.  Press CTRL + E to bring up the Edge menu, and select Mark Seam.



Or you could use the button in the Tools panel of 3D View:



Both options do exactly the same thing.  Once the seem is marked it will appear as red:



Now you can see the result of marking a seam.  In 3D view, select all edges ( A ) and take a look at the UV window:



We now have a completely separate collection of UVs ( called a UV island ).  I still wouldn’t want to paint over these UVs yet, so we have a bit more work to do.  In order to be able to flatten the wing even more, lets mark another set of seams, like below:



Now look what happened to the UVs



That is certainly much easier to paint over!  Of course, you could have split the wing top and bottom easy enough but each additional seam makes painting a bit trickier.


Remember the textured view of our jet from the previous tutorial:


Instead of a checkerboard texture on the wing, you just got a white blotch.  Now that we marked the wing seams, look at the result:



MUCH better!  Ultimately our goal is to make the entire jet have a checkered texture like that.  The process is exactly the same, just keep marking seems in the model until the UV layout makes sense.  Let’s repeat the same process on the back wing and then the tail.  If you make a mistake, you can simply Clear Seam on the selected seam.  To completely undo your changes, select all edges and do CTRL+E –> Clear Seam and you are back to default.


I marked the following seams on the back tail and wing:




Resulting in this UV layout:



And in our rendered view:



Next lets cut the jet in half vertically.  Select the continuous loop all the way around the jet, it will meet up with the wing cut:










You want a continous edge around the entire jet that will cut it between top and bottom.  Once selected, mark the seam.



Now mark the area surrounding the air intake:



This however results in an unwanted seam, shown below marked in green:



Select those edges and then select Clear Seam.


Now we have:



And the following UV layout:



Keep in mind, Blender automatically sets the positions, so yours might be a bit different layout wise.


Finally, lets seperate the cockpit away from the fusalage:



The cockpit:



And finally, the tail:



And now our fully UV mapped model:


As you can see, the texture pattern flows pretty well over our image.  There are portions where we might get into a bit of trouble but they aren't areas where we are going to need details, so we should be good to go!



Well, that sucked, there has to be an easier way!


Yeah, actually, there is.  Blender has something called a Smart UV Project.  To use it, in 3D View, in edit mode, select all, then press U.  In the resulting menu select Smart UV Project:




Then a dialog will appear:



As I understand it, Smart UV looks at your model and separates UVs based on the angle between shapes.  So for example, since the wing essentially meets the fusalage at 90 degrees, it will easily be split into it’s own UV group.  Play around with the angle limit until you get a grouping you like.  Here is the result at 66 degrees.




Not ideal, but certainly a hell of a lot easier!



We only touched on a very small bit of what you can do with UVmaps.  Just keep in mind, if you add another seam ( and thus generate another Unwrap ), the positions will be reset.  Otherwise you can scale, turn, relocated, etc… UV coordinates to your hearts content.  If you don't want them to be scaled again, you can Pin (p) a UV in place.


Selection Options


You may find that you want to select Polygons from the UV layout screen.  By default it’s setup that what you select in the 3D view will be selected in the UV view, but it’s possible to do the opposite.

You need to click the “Keep UV and edit mode mesh selection in sync” button.



Now making a selection ( such as using the B)ox select mode ) in the UV window:



Will select the corresponding polygons in the 3D view:


Click here for the Next Part



6. September 2013


Now we are going to start the process of texturing ( drawing an image on the surface of ) our jet.


This first step may not need to be performed.  We need to verify that our model has a material applied.  By default one will be created for you, but if you are following along using my Blend file, for some reason in the past I deleted it. ( I had applied a quicky wireframe material to make a beauty shot earlier )  No matter, its a simple enough process to create a material.


In 3D View, make sure your jet is selected.  In the Properties window locate the Materials tab:



Check to see if there are any materials applied, if there aren't, create one:



When done, it should look like this:



If it already looks like that, you don't have to do any of this.



Before getting too far into this you need to understand the concept of a texture.  Simply put, this is a 2D image that is pasted on a 3D object.  We have many cases of textured object in the real world, such as wallpaper or a globe.  Here for example is the image that would be glued on a sphere to create a globe:



This 2D imaged, combined with the 3D sphere would go together to create a globe.  This process can be handled in Blender using something called Spherical Projection.  On the other hand, when you have an arbitrary shape like your model, your mapping gets a great deal more tricky… and a map is required.


UV Unwrapping

So what exactly is UV mapping?  It’s actually very simple.  Meshes are 3D objects and textures are 2D images, so how then are you supposed to put a texture on a mesh?  That’s where UV coordinates come in.  There is nothing special to UV values, they are just numeric values describing the position of a texture on a face, just like normal XY values… except of course the values X and Y were taken, thus U and V.

Now that works wonderfully if your mesh is a single flat quad, but obviously that isn’t all that common.  Enter the UV Map, which is exactly what it’s name implies, its a mapping of UV coordinates to positions on a 3D model.  So how exactly do you pull this trick off?  Well simply put, you squash your 3D object into 2D.

Imagine that your 3D model was made out of construction paper and to paint it, you wanted to flatten it.  This is basically exactly what we are about to do.  We tell Blender where you would make scissor cuts in your model to enable it to flatten and Blender takes care of the rest.

You define these cuts ( or in Blender terms “Seams” ) in EDIT mode in 3D View.  Then they show up in the UV/Image panel.  UV coordinates are component based, so you apply them at the vertex/edge/face level.  To see them in the UV window, they need to be selected in the 3D view.


I am going to set up my Blender for UV editing.  What I generally do is set up a 3D view on one side of the screen and a UV/Image Editor pane on the other.




Like this:



Let’s start off creating a texture to help us with UV mapping.  At the bottom of the UV panel, select Image->New Image.  Note the contents of that menu may be slightly different, its dynamically populated based on context.



In the resulting dialog, give it a name so you can find it later ( we will be deleting this texture later ) and under Generated Type set it to UV Grid, like so:



Now in your UV panel you should see:



Congratulations, you’ve just created your first texture!  This grid pattern is handy for seeing if your UV unwrapping job needs work or not, you will understand shortly.


Now, let’s set up Blender to show unwrapping Live.  In the 3D View, open the tools (T) panel, locate and select Live Unwrap.



Now Blender will automatically unwrap for you as you mark seams.  You need to also enable Live Unwrap in the UV panel.  Select the UV menu and click Live Unwrap.



You don’t need to do this step, instead you need to manually unwrap ( using U then Unwrap ) with every change you make otherwise.  It’s your call.


Now let’s apply the grid texture to your jet.  In 3D View, in edit mode, select All ( A ).  Then in UV view, select the image:



Now in the UV view, you will see the UV map over the grid texture:


If you dont see the wireframe, you probably don’t have anything selected in the 3D UV.  This view updates based on the selections in 3D View.  That is what your model looks like flattened.  Don’t worry, we will make it a bit more logical soon.


You will find the UV window uses almost the identical keys as the 3D view.  You can pan and zoom the exact same way, you can use box selection, G to move, R to rotate etc.  So, while Blender may have had a nasty user curve at first, it’s very consistent once you know it.


As you can see in the 3D viewport ( as long as you are in textured ), our texture layout isn’t exactly ideal!  With a good layout, the checker pattern will flow much more cleanly across the model.



If you don’t see the texture mapping, its probably your settings.  You can toggle between showing textures and not in the 3D view using the Viewport Shading selection:



Set it to Textured.  Rendered mode wont work, as the grid texture hasn’t actually been applied to our model ( this will make sense later when actually apply a texture ).

If your model still isn’t showing up with the grid texture, there is one other setting you have to configure.  In the 3D View, open up the properties ( N ) panel.



GLSL can show some more details than other modes, but it also has some limitations.  Most of the time I personally have mine set to Multitexture.


OK, this got pretty long so I will break it into another section.  Coming up we will start cutting up and laying out or UVmap into something a bit more useful!


Click here for the Next Part



29. August 2013


In this post we are going to, for the most part, complete with the modelling portion.  In the end, I am going to stick with a relatively low polygon model so it can easily be used in a real-time 3D game, as well as for rendering a sprite.  Additionally, a lower polygon count makes texturing more straight forward.  That said, if you are rendering to sprites, the polygon count really doesn’t matter to you ( except of course for your PC being able to run Blender that is! ).  Later on I may take a look at adding more detail, as well as rendering a normal map to give the illusion of more detail on a low polygon model.  That said, I cant spend forever on this or we will never get to texturing!


So… back to our model.  In our last stage we ended here:



Certainly more jet like than box like, but there are obviously some major exceptions.  First the cockpit is still basically just a box.  Second, the nose is about as aerodynamic as a toaster at this point.  Third, there is no engine yet, although you could argue that is just wasted polygons given the shape of the jet ( aka, you cant generally see the engine… ), so for now I am simply going to skip modelling an engine.  Finally we can do a bit of tweaking and movement in general.


The Cockpit

First we start off with our friend the loop cut.  Create one more loop cut along the edge of the cockpit like so:



Now move the outer edge of the cockpit down a bit, like so:



Now we are going to create out first triangle!  A few triangles here and there aren’t a bit deal, especially if they make sense.  What we want to do is basically change our edge loop so it loops around the cockpit.


To do this, we are going to make use of the Knife tool.  You use the knife tool by hitting K, then clicking here you want to start cutting from, then click where you want to cut to.  Finally click enter to complete the cut.  Hit K then click on the two locations marked.  Be sure you get the special square indicator that shows you are cutting to an existing vertices or you will create extra un-needed and un-wanted geometry.




Now repeat the process for the back of the cockpit and your new edge loop should look like:



Now shape the cockpit to suit.  I am not all that pleased with the initial results, so I will probably tweak later, but its at least a cockpit now instead of a box.




Modelling the nose


Now let’s do something about that nose.  We are going to collapse all of the vertices at the end into a single vertex.


Box select all of the vertices at the front of the jet, like so:



Then hit X and choose Edge Collapse



And Voila!



As you can see above though, our newly created uber vertex isn’t at the mirror point any more.  Make sure to move it back to 0 along the X axis:




Now we have one small problem… our plane is really really really boxy and we don’t want that!  You can spread the vertices out by hand but there is a much easier solution.


First make sure you don't have any interior geometry ( lines/vertices created along the X axis ) , like I do now.  You will need to be in Xray (Z key) mode to spot extra geometry.



If you do, select the edges and delete them ( X ). 

Now select the boxy edge loop making up the front of our nose:



And run the To Sphere tool.  ( Alt + Shift + S ) and:



Now move the selected edge loop back from the front of the nose:



Now repeat the same process with the next edge loop ( closer to the cockpit ).



Obviously we have a bit of cleaning up and tweaking to do now.  After a couple tweaks and moves we have:




At this point I turned off the background reference images and played around by hand and selectively set smoothing.  To set smoothing, simply select the face you want to be displayed smooth and click Smooth under Shading in the tools panel:



I made a number of small tweaks, such as extending the wings, shrinking the cockpit and main body and just smoothing things out.


So, this was our original design:




And this is where we ended up:







Pretty close to my original concept.  Not perfect by any means, but I’m happy. 


You can download a zip containing the blend file right here.


Time to move on to texturing!

Click here for the Next Part



28. August 2013


As you may have noticed yet we ( somewhat prematurely ) reported on Maya LT, a new indie focused version of Maya.  Today marks the official release of Maya LT. I also got the opportunity to get some additional clarification from Autodesk, in an interview below.


Here is the official press release:

Autodesk Unveils Maya LT for Indie and Mobile Game Developers Starting at $50 a Month



Powerful Tools and Affordable Pricing Expand 3D Options for Independent Game Developers and Small Studios

SAN FRANCISCO, Calif., August 28, 2013 — Autodesk, Inc. (NASDAQ: ADSK) today introduced Autodesk Maya LT 2014, a new 3D modeling and animation tool tailored for independent and mobile game developers. Available immediately and compatible with certain industry-standard game engines, Maya LT draws inspiration from award-winning Autodesk Maya software to bring an intuitive, affordable new toolset for the creation of professional-grade 3D mobile, PC and web-based game assets.MayaLT__HyperShade_DX11_UberShader__1920x1080

“We see indie game developers as a key part of the industry, driving innovative new production techniques and gameplay,” said Chris Bradshaw, senior vice president, Autodesk Media & Entertainment. “The market is fiercely competitive, and Maya LT can provide indie developers and small studios with a powerful, yet simplified workflow for designing and animating remarkable 3D characters, environments and props – at a price that fits within even the most modest budget. It’s a practical solution that closely matches the needs of the mobile game development production cycle and helps developers rise above the noise and really shine.”

Smaller studios like Phyken Media, creators of the mobile game Wizard Ops Tactics, saw both the economic and workflow benefits of the new product.
“I jumped at the chance to try Maya LT, as the cost flexibility means we could grow the studio much more comfortably,” said Phyken Media President Kunal Patel. “With an option like Maya LT, our small team can accept bigger challenges and take on various new types of projects that may require more artists without having to worry much about any large upfront expenses. We even found operating expenses are much easier to determine.”

Maya LT for Game Developers
Maya LT debuts with an easy-to-navigate user interface (UI) and industry-renowned 3D modeling and animation tools that enable independent game developers to rapidly deliver 3D assets into game engines. The software integrates seamlessly into game development workflows with out-of-the box support for Unity 3D Engine and Unreal® Engine™ through the FBX file format for primary data exchange, and the ability to import certain 3D asset formats [Maya (.ma, .mb), Maya LT (.mlt), OBJ, FBX, AI, EPS] and texture formats (BMP, PNG, DDS, EXR, TGA, TIFF), as well as export 3D assets in FBX and .mlt.

MayaLT__HumanIK_AnimationGraph_and_Outliner__1920x1080Key Features
Maya LT has a number of features customized specifically for the needs of mobile and independent game developers: powerful modeling tools to help create and alter 3D assets of any size and export FBX files containing up to 25,000 polygons per object, animation tools that include a skeleton generator and inverse kinematics with Autodesk HumanIK, and high-quality viewport previews to help developers view assets as they would appear in game, reducing iteration and asset creation time. Other key features are lighting and texture baking, giving designers professional global illumination tools to help simulate near realistic lighting through baking lighting data into texture maps, and vertex maps.


Pricing and Availability
Autodesk Maya LT 2014 is now available for Mac and Windows at a starting price of $795* SRP per perpetual license. Term licenses will also be available as part of a monthly, quarterly or annual rental plan in the near future, starting at $50* SRP, $125* SRP and $400* SRP respectively.

Learn More About Game Development with Autodesk Maya LT
For more information, and to download a free** trial of Maya LT, visit: Connect with the Maya LT development community at:


I got the opportunity to get a bit more detail from the team at Autodesk.  Answers where provided by Wesley Adams (WA), Autodesk Industry Market Adams  and Frank Delise (FD), Autodesk Director of Game Solutions.


Question: What are your target audience with this release.  Are you aiming primarily at game developers working with UDK and Unity, or indie developers in general?

Answer (WA) : Maya LT was specifically created to address the needs of indie game developers who want to create 2D and/or 3D assets for mobile platforms and much of its feature set is dictated by these requirements. It is primarily a 3D asset creation tool although it has a broad range of animation tools as well. It is engine agnostic and the assets created in Maya LT can be exported to any game engine via FBX including both Unity and UDK. Maya LT is designed to expand our portfolio of mobile game development tools, which already includes the Scaleform Mobile SDK with a Unity plugin. The Mobile SDK is based on the core technology of Autodesk Scaleform, but enables developers to use it as a standalone Flash runtime to port games to mobile platforms. This gives indie and mobile developers two different ways to access technology that was somewhat inaccessible to them previously.


Question: Are you considering launching a similar program for other tools such as Softimage or Max?

Answer (WA): Although we cannot talk specifically about future product releases, we do intend to continue to evaluate many different productization strategies, including LT versions, for our core entertainment markets of Film, Games and Television as well as to address new markets. However, it is not our intent to release multiple products for new markets. In this case we are targeting game developers who want to create 2D (sprite sheets) and 3D assets for mobile games. They require a solution that works both on PC and Mac and so we chose Maya as the basis.


Question: Will it be possible to white list certain plugins.  For example, the current no plugin policy will make it impossible to use Maya with Project Anarchy's art tools from Havok.  Will Autodesk be working with third parties in this regard?

Answer (WA): Yes, our intent is to work with third parties to build a healthy plug-in eco-system around Maya LT. In many ways Maya LT is a v1 product and we plan on an aggressive development path for it.


Question: Any possibility of an end-to-end Autodesk bundle ( such as versions that output specifically to Scaleform ) at indie friendly pricing. Or in a Creative Cloud type subscription service?

Answer (WA): We have no further announcements to make at this time regarding other new products and offerings, but we will indeed offer customers the option of purchasing either a perpetual license (with or without subscription) or a monthly rental plan.


Question: Are there going to be upgrade options available like other Autodesk LT products to move from LT to full versions?

Answer (WA): Right now there are no upgrade options available to move from Autodesk Maya LT to Autodesk Maya or any other Autodesk 3D animation product, primarily because it was not designed as an entry level product to Maya but to go after a new market.


Question: Is LT based on 2014? Is the intention to keep them at release parity? How long is the outright license purchase eligible for support?

Answer (FD): While Maya LT is based on Maya 2014 it is not intended to just be a reduced version of Maya but follow its own trajectory as a solution for indie developers developing for mobile platforms. So while we plan to keep Maya LT and Maya very close in terms of those Maya features that are relevant to indie game development, in some cases we may take different approaches to solving certain problems or needs. This could mean Maya LT specific capabilities not available in Maya for example.


Question: Doesn't the 25K limit on export heavily handicap certain usage scenarios, such as using Maya as a level editor?

Answer (FD): No, Maya LT can handle the same scene sizes as Maya. Therefore you can create large complex scenes. When exporting to a game engine, you’ll need to export the scene in modular pieces, up to 25k per object via FBX. This is a typical scenario when building games, using modular design. For example, you can create a car that’s over 70k polys, but export the body separate from the wheels. Maya LT also supports hi-res to low res texture baking for complex asset work.


Question: Does removal of MEL also prevent creation of toolbar shortcuts? What is the reason for removing MEL in general, is it not remarkably core to the Maya experience?

Answer (FD): In Maya LT, you can still create custom toolbars; however, Mel was removed. Maya LT is not a replacement for Maya in games; it is designed for asset creation for many indie game assets. We still expect Maya to be used by game developers who want the functionality to build custom pipelines\tools and advanced features.


Thanks for taking the time to answer guys!


27. August 2013


This one comes care of Tom’s Hardware:


Autodesk has introduced Maya LT, a new 3D animation product based on their award-winning Maya software. This new product also brings with it a subscription pricing model that they hope will make it more affordable to indie developers.



Indie developers, whether working for mobile, PC, or web-based games, need a professional 3D animation software that can be used to create 3D and 2D assets to be used in game engines. Autodesk has developed Maya LT as a new product whose focus is on the needs of indie game developers. It brings the established tools of Maya into the affordability range of indie game developers and also allows them to import assets that were created in Maya proper (as well as OBJ and FBX), giving them access to thousands of available models from sites like Turbosquid. Through support for FBX export, Maya LT also can be used for game engines like Unity Engine and Unreal Engine.


I have been advocating for an indie friendly version of Autodesk products for a long time, as they are easily the most expensive aspect of the game development tool chain.  This release certainly lowers the price, but does it lower it enough?


Pricing and Availability

Maya LT is available immediately for both OSX and Windows at a price of $795 for a perpetual license. Term licenses are available as part of a monthly, quarterly or annual rental plan in the near future, starting at $50, $125 and $400, respectively.


So, 800$ is certainly a better price than 3,675$ for a license of the full version.  The monthly and quarterly licenses are certainly a great option for short term game development and complement the Adobe Creative Cloud offerings nicely.  But


What exactly do you give up for that savings?  Well, here is where things get a bit tricky.

  • Does not support external renderers; cannot render 'scenes' or animations
  • No MEL support, and currently no plugin support or SDK.
  • Export to FBX format of up to 25,000 polygons per scene (but the .mlt format allows denser meshes within Maya LT)


The first item, the inability to render scenes means you cannot use Maya LT to create pre-rendered animations, such as cut scenes.  Perhaps worse, you also can’t even create a composited still, or any graphic more complicated than a rendered sprite.  So if you were thinking about rendering your title screen using Maya LT, you are out of luck.


No MEL support; that either sucks or is a non-issue depending on your workflow.  No plugin support is the same story with a bigger downside.  The inability to support plugins makes Maya LT completely useless for game engines that require plugin support such as the indie friendly Project Anarchy.


FBX export limited to 25,000 polygons.  This is probably the biggest problem as higher polygon count meshes are becoming more and more common as devices improve in power.  Granted, you generally wouldn’t use this many polygons on a standard mesh in a mobile title, yet.  On a desktop title though, you certainly would.  Perhaps the biggest downside is, this limit pretty much precludes you using Maya LT as your level editor.


In the end, it is certainly a step in the right direction but falls flat for me.  If Blender didn’t exist and wasn’t getting better with every release, this might be more appealing. At 800$, that is getting incredibly close in price to Modo, Lightwave and Maxon in price.


Oddly enough, Tom’s Hardware is the only source of information right now.  There are no details on Autodesk’s site.  I will update more information as it becomes available.



The Tom’s Hardware link is now down and as it was the primary source of this information there may be something fishy with this story.  I have found no other source to verify the story, nor have I heard back from Autodesk.


EDIT: 2:37PM

Shawn McClelland from Autodesk’s games solution group made the following post, with a great deal of clarification over on the Polycount forums:


Hey guys!
My name is Shawn McClelland and I am a product designer over on the games solutions group. I'll pause in case people would like to throw any objects at me upfront.

I wanted to come in and clarify a couple of things with regards to the Maya LT release and hopefully answer any questions you all might have or listed to your input/feedback.

As far as the 25k poly limit goes this is purely on export so the FBX file will not store anything larger than 25k. You could stuff a gigajillion polygons into a Maya LT scene and still save out the LT file and have zero issues but when you want to export that out to your game engine it needs to be packed in 25k chunks. We felt that limiting the contents of the scene was dumb but wanted to manage things on export a bit better so that's the reasoning there though we're not adverse to hearing your input and changing this to suit your needs.

With regards to the scripting I will say yeah it's a bit of a bummer and I totally get the disappointment of some tools guys or folks that like to rely on third party scripts floating out there on the web. We've heard this feedback and it's loud and clear to us that you need a scripting solution as part of this offering so we're going to see what we can do here. There is no Script Editor inside of Maya LT by the way just to clear that up as well.

JonJones: Your feature list isn't actually all that far off from what LT provides We did our best to provide a feature set that was enticing to the non-highend crowd so we removed things like rendering features, dynamics and various other things that cause a ton of UI bloat but aren't really all that useful to the indie, mobile, casual games developer or the freelance modeler. While we don't provide an SDK out of the box we do provide ShaderFX, FBX and Turtle all as pre-compiled included plug-ins. For third-party stuff we have a few ideas we've been mulling about but I don't think I can go into specifics just yet but if there are plug-ins you feel are a necessity to your work please let me know and I'm happy to work with dev on it.

For Rendering output we're relying on the VP2.0 and playblast options to output essentially hardware renders of your scene. Turtle is also provided for map baking needs as well and we've got a pretty sweet build of ShaderFX included as well that will let you build node networks for surface shaders. I have a few sample scenes I've built up using ShaderFX if people are interested including a version of the DOTA2 Hero Shader I've been working on as a ShaderFX graph.

Hopefully I've answered some questions and concerns here. If you have any further questions please don't hesitate to ask me via these forums or you can reach me direct at shawn(dot)mcclelland(at)autodesk(dot)com. If you're interested in becoming a beta tester you can also email me about beta participation and I'd be happy to get you added to the LT program.



It basically confirms the majority of what was said earlier.  They are listening for feedback though, so if you strongly disagree with the 25K limit or removal of scripting for example, let them know!


AppGameKit Studio

See More Tutorials on!

Month List