Totally new to game development here– I know models are never built in Unity, but what about environments? Is it common to say, build an office building environment with hallways and doors (sans furniture and props) in Blender and import that into Unity and assemble the scene there?

  • \$\begingroup\$ This totally depends on your workflow. Some teams build environments in Unity using the built-in terrain tools or a collection of kit parts like wall and floor modules. Other teams model the whole space in a 3D modelling tool and import it as one or multiple meshes. The right workflow is going to depend on your team and what you're trying to build. \$\endgroup\$ – DMGregory Jan 3 '17 at 22:18

For general questions I hope general answers are okay, I do like to rant and I assume GameDev is probably more relaxed than the other stack exchanges.

Generally all "hard surface" 3D models in a game today environmental or otherwise are created in a 3D modeling application such as 3DSMax, Maya, Blender, or Zbrush.

The common exception to this is terrain generation. Game engines like Unity tend to include a tool for creating and deforming very large ground plane meshes that are tailored to perform well and include features like texture blending. Once you learn about UV unwrapping, you'll understand that a special shader is usually required for terrain, since the textures are usually several different textures tiling and alpha-blended together, often based on a height map.

The other less common exception is any case where meshes are being generated programatically.

In the past engines did rely on built in tools to make a lot of geometry out of adding and subtracting primitives. I am no expert, but my gut feeling is that doing things that way helped integrate an engine's binary space partitioning calculations. Source and Unreal 3 are both engines that did this. These are your "brushes" in Hammer. https://developer.valvesoftware.com/wiki/Brush

Today almost everything is a static mesh, enabled due to vast performance improvements across the board. Killing Floor 2 for example, despite being built in Unreal 3, is constructed entirely of modular stage segments/slices. Tripwire has built in their own custom functionality to merge those meshes to make that system practical.

If you're interested in gamedev, want to make 3D games alone, and don't have money to spend, I can tell you Blender is a very powerful tool. However, learning any 3D modelling application is a serious undertaking and you should look for a structured resource to learn from, either a paid online video course or a book. While you can learn a lot from Google, these applications are highly contextual and easy to get lost (and even lose progress in) unless you understand the big picture of what's going on in all their little windows.

| improve this answer | |
  • \$\begingroup\$ this answer seems to focus on the individual models, while the question appears to be asking about setting up the broader scene using these individual models \$\endgroup\$ – Gnemlock Jan 4 '17 at 0:08
  • \$\begingroup\$ While the answer is a little broad he does touch on some useful key points so I'd have to say the answer was valid. Common practice if assets are being constructed for the game instead of being purchased from a source such as the Unity Asset Store would be to have them constructed in a 3d application such as 3dsMax or Blender and then import them into the Unity environment. Some teams make use of features such as the terrain generator or other plugins for Unity that let you build specific elements within the game. Depending on his game he may take advantage of both of these routes. \$\endgroup\$ – Raeles Jan 4 '17 at 7:27
  • \$\begingroup\$ This is great, thank you. You wouldn't generally use Unity's terrain generator or World Generator for indoors right (like in my example, an office)? I assume the halls, stairs and so on would be built in a modeling program? \$\endgroup\$ – aroooo Jan 4 '17 at 8:45
  • \$\begingroup\$ No you wouldn't. You'd be best of building your office in blender or 3dsmax. \$\endgroup\$ – Raeles Jan 4 '17 at 14:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.