Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
29. May 2011

 

Well here is one out of nowhere.  StudioGPU have released their flagship product MachStudio Pro 2 for free.  Real free too so far as I can tell, not free with an asterisk free.  For those of you that have never heard of MachStudio, it is in very rough terms a near to realtime renderer that makes use of your GPU.  In their own words:

 

StudioGPU's MachStudio Pro reinvents the 3D visualization production pipeline by putting the power of real-time graphics processing at your fingertips.

Render times that typically take hours or days are reduced to minutes and even seconds, limiting artists only to the scope of their creativity.

MachStudio Pro lets you truly Work at the Speed of Thought!

 

 

A Blender exporter is coming soon, but for now it does support importing FBX files.  Previous to this announcement, MachStudio sold for 4 grand!

 

Now the downside… you need a 1GB Direct X 11 GPU to run it.  In the world of desktops, that’s not too demanding.  For people like myself that buy only laptops, then it gets a bit trickier.  My best GPU is currently 512MB, but I am downloading it anyways to see what happens.

 

At that price though, if you have the system to run it, what are you waiting for, go download it now!

 

 

For those who ignore minimum requirements, just an FYI, it simply refused to run on my non-DX11 card.

Art


18. May 2011

 

You bet your ass it does!

 

When moving between applications, each has it’s own unit of measure and frankly 1 has a very different meaning from application to application!  In Wings, a Wings “unit” is completely arbitrary.  So for example if you make a cube 1 by 1 by 1, the “1” means absolutely nothing or frankly, whatever you want it to.  This however gets a bit tricky when moving to another application.

 

In Blender, up until version 2.5 and higher units were completely arbitrary as well.  This means 1 could be a foot, a metre, a cord, a hand or a pan-intergalactic squible, it really didn’t matter.  The problem is, it did, a lot.

 

You see, once you start attaching physics to your models, size truly does matter.  Gravity does not cause things to fall at 9.2 feet per second, it’s 9.2 metres per second and mixing this up will cause things to be wrong by close to a factor of 3 times.  So unless you want gravity to be extremely powerful in your virtual world, you need to standardize on a unit of measure.

 

Now unfortunately to our American and English readers…  Unity picked the standard for us.  In Unity “1” is 1 metre  ( or meter again, for our American readers! Winking smile ) and given that Unity is providing the physics engine, I guess we better conform.  On the bright side, there are systems in place to make the transition as smooth as possible.

 

First off, when working in Wings3D simply treat 1 as 1 metre, then when you export to Blender it should appear as 1 metre in size.  That said, when moving from Wings to other Untitledprograms you may find that the results are exceedingly small.  There however is a fairly simple though remarkably imprecise solution.  Craft your object in Wings, then import it into your graphics program of choice.  Beside it create an object in the native program with that is 1x1x1m in size as a reference, you can then use Wings “Export scale” when exporting to automatically scale up your object when exported until the sizes match.  Once your export looks about right, use this scale factor for all future exports.    Clicking the square icon for the File –> Export –> Collada will bring up the export options window ( as shown to the right ).  The value surrounded in red is the important field.  A value of 1.0 means no change, while 2.0 would be twice as big and .5 would be half the size.  Again, while working with Blender, so long as you treat 1 Wings unit as 1m, you shouldn’t have to do anything.

 

With Blender, fortunately since version 2.5 you can now specify what units are.  Instead of re-inventing the wheel, I will refer you this excellent blog post on the subject.  They do a very good job of describing how to work with actual units.  Once configured, your export to Unity should be configured properly and compatible with the physics system.

Art


18. May 2011

 

We 354px-Cartesian-coordinate-system.svgare all familiar with 2 dimensional Cartesian coordinates for describing positions in 2D space, often used to represent pixels on screen, but ultimately the very foundation of algebra.  The two values, x and y can be thought of to represent Left <-> Right and        Up <->Down respectively, at least when dealing with two dimensions.  But when you throw one more dimension in the mix, it gets a bit trickier.  I mean sure, coming up with Z as the label wasn’t exactly rocket science, but what does Z represent and here is where everything goes to hell!

 

 

 

See, there are two schools of thought on this subject and unfortunately both make perfect sense.  On one hand, one group views X,Y as already representing Left/Right and Up/Down on a computer display, so the most logical conclusion is that Z should represent depth.  Imagine for a second if you could reach INTO your monitor… that would be the Z coordinates.  If you have already done some 2D graphics work, X and Y are probably pretty well entrenched in your mind as representing screen position, so this probably makes a lot of sense to you.  For the record, this type of coordinate system where Z represents depth is referred to as a Y-up as Y represents the up direction.  Personally, this is the most intuitive to me.

 

 

But then there are these other types of people in the world… engineers and architects and to them X,Y are viewed in a much different context.  See instead of thinking in terms of a computer monitor in front of them, they think in terms of blueprints on a table.  With a system 300px-Z_axislike Autocad, the Z-axis is added when the blueprint is extruded in the 3rd dimension.  Think about it in terms of building a house from a floor plan, the X,Y coordinates represent the layout of everything on your floor, then Z represents the distance of things UP from the floor.  So, to a CAD person, it makes complete sense for Z to represent “UP” and Y to represent “depth” like in the figure to the right.  This obviously is referred to as Z-up.

 

 

 

 

 

Now you may be asking yourself… how exactly does this affect me?  Well, that’s an easy one… all kinds of tools work with a different axis set.  Of the 3 we use, Wings 3D is Y-up, Blender is Z-UP and Unity 3D is Y-up.  So… as you are creating your assets they spend a lot of time flipping around between programs!

 

With Wings 3D, if going directly to Unity, you are in luck, no more work has to be done.  Most of the time though, we will be going from Wings to Blender first.  Fortunately this fix is pretty easy.  When you export your model ( via the menu File->Export->Collada ), click the little box icon to bring up options.  Then make sure you select “Swap Y and Z axis” checkbox as shown in the picture below, then OK and export.  This setting is “sticky” so you should only have to choose it once.

UntitledSetting Wings 3D to export Z-up friendly

 

 

 

 

 

 

 

 

Now in Blender things get a bit trickier and therefore it’s really easy.  Frankly, there is nothing you can do.  The axis system is fixed so you can’t change that, and there are no options when exporting.  I suppose you could model everything rotated but that would add a great deal of confusion.

 

 

So that leads us to Unity, currently the importer (version 2.57b ) is working properly, so thankfully you *shouldn’t* have to do anything, it automatically rotates it for you.  That said, this importer isn’t always the most… stable thing.  In cases where it doesn’t import correctly, you have one of two options.  First you can rotate manually 90 degrees about the X axis when you create an asset in Unity.  Otherwise, you can perform the conversion as part of the import process by creating an AssetPostProcessor which is a script run during the importation process, allowing you to make last second alterations.

 

 

 

For the record, this isn’t only a Blender/Unity problem, Max, Maya and Softimage are all Z-Up modelers by default, while I believe Cinema 4D is Y-up.  It is something to be aware of when moving from one application to the next. If it seems like your model is doing a backflip, the axis difference is most likely the cause.

Art


9. May 2011

I have published up a list of tools used/to be used, both for creating the game and for authoring the website.  In a few cases, tools that are just bloody useful in general are listed.  This is very much a live document, so I will be adding to it as time goes on.  Each program listing includes a link to where you can get it and a list of strengths and weaknesses.

Without further ado, the list.

General


30. April 2011

6a00d8341c858253ef00e54f2306618834-640wiSo, choosing Blender for my art pipeline has some very big upsides, and a couple massive downsides.

 

Amongst the biggest downsides is that Blender is in the midst of a very long move from 2.4x to 2.5x, which means you are effectively using beta software in production.  Frankly, the 2.5x branch is probably as stable as the 2.4x branch with some major feature improvements.  That said, there is a giant downside… all kinds of documentation is simply and massively WRONG.

I just spent 2 hours trying to get a textured model into Unity, and for the love of all that is, I simply couldn’t get textures to work.  After many google sessions, I read that TexFace needs to be enabled… simply press F5 or F9, but again, these instructions are for 2.4x and are outdated.

I finally found the way after much confusing.

Properties->Material Icon ( the Ball )->New Material->Assign, then scroll down to Options and click Face Textures.  Done.  That was intuitive now, wasn’t it?

 

The following video illustrates that process.  Again of key note If you are using Blender with Unity, your textures WILL NOT WORK if you do not follow this process.

 

Enabling TexFace in Blender 2.56

Art


GFS On YouTube

See More Tutorials on DevGa.me!

Month List