Workflow - Meshes, Texturing, Importing, etc...

I’m currently evaluating Unity, and quickly completed the basic tutorials and am now distracted by having my head buried in Blender. (The last full 3D app I used was Lightwave in '99 to make animatics…) My background in games is primarily modding for quake and half-life.

Now the question:

The Unity Manual states: “You don’t build your meshes in Unity, but in another application.” … Yet, there is the ability to build and texture primitive shapes in Unity. I understand that if I were to be building a complicated game object (Helicopter, Space Shuttle, Donut), you’d do that in another app., but when it comes to the workflow around constructing a simple structure or building (loading dock, hallway, donut shop), would you model and texture this externally as well? or would this be constructed from prims in Unity? What’s the most effective method?

Though it really depends on what you want to be making, it’s agreed by most that you definitely want to be building all your assets externally. The unity primitives are great for placeholders etc… even planes for floors, but ultimately, you have no control over mesh density or uv maps.

We use LW, Modo and XSI with Unity to model, UVmap, textiure and export to FBX, plus of course for 3D renders etc.

Yeah, it’s much better to import geometry, unless it’s for something that doesn’t require UV maps. Like a bill board, or a wall with tiled textures. Build your stuff out of primitives in Blender, then join the meshes where possible and cut the UV maps before importing. It helps to combine your meshes; Unity will render one model w/ 1000 polys better than 10 models w/ 100 polys each, for example.

Blender works great w/ Unity, except for skeletal animation, we’re hopeful that will be supported soon. Some find the interface confusing, and it can be a pain to learn, but it’s worth it if you keep at it. Good luck!

Unity doesn’t have an environment builder like Hammer, you can’t create blocks and cut them, etc.

You could create a block (join 6 planes in one object), and then apply a material to each face independently, but to create more complicated objects (i.e. not box shaped) it is not easy.

I also advise you to try an external app, like blender (free) if you can’t afford another.

Regards,
Afonso

The primitives are really… well… primitve. They can be fitted with basic shaders (color, phong shading) inside Unity. I wont recommend using them, unless you build very very incomplex scenes or structures. You also wont be able to create Texture or UV Maps inside Unity.
You also dont use Brushes like in Modding Apps like the GTK Radiant for example to texture your Scenes. Texturing is always done with external apps. However you can place or (ex)change finished Textures as you desire, shift them around, replace and so on…

With blender you are right when it comes to level design. For Animation you need different 3D apps. But Blender changes very fast and fluently. So it might already be possible and i just havent noticed yet ;). There are lots of developers here on the forum using Blender, so advice concerning Blender and Unity can also be found here.

In my project i create levels completely inside the 3D app (Cinema 4D zBrush) and then they are exported in whole (or level-parts) to fbx (wich Unity can automatically do for you, when using the right 3D apps - search the online manual or the Unify-Wiki to check the supported apps).
For Texturing i use a combination of Bodypaint, Photoshop and zBrush. In most 3D apps Textures applied to your models are ported to Unity along with the mesh, so you only need to adjust the shaders later.
The final arrangement howevher is always done in Unity.

I hope this helped.

Frank

Ah, and one thing i forgot, wich could answer your question more clearly.

The less objects you use, the better the performance will be. If you combine parts of your level to become a single large object its much better for ingame performance. You should go for Mesh-Sizes around 1500 - 4500 Polygons (Triangles) for optimum performance (actual graphic cards). However next gen games use around 15.000 Polys per Mesh in max LOD.