First off, please excuse any errors as I am new to Polycount.
So I have watched some videos (Halo's Sprint Series) where the game designer is building the entire level in a modelling application like maya then imports it into an engine. But I have done the opposite where I build single assets then import them into an engine and assemble them to make the environment. I was wondering what are the pros and cons of both? Is there a preferred method or is it based on numerous factors?
Also, sorry if the title is misleading. I didn't know how to word it.
Replies
I have worked with where it gets assembled in engine personally.
I would think some of the reasons for doing it straight in the 3D program is:
Keeping what's familiar for a lot of people.
Lots of tools and scripting abilities.
Iteration time, not having to export/import into the engine.
But the downsides to level editing in a 3d modeling app are the problems of using an app that wasn't designed with level editing in mind. Instancing, physics, sound, interactables, etc., any game-required elements need to be tacked onto your 3d app.
Sometimes precision is a problem, since 3d apps are not as concerned with precision across a large distance. So when you try to snap together pieces far from the origin you get position errors.
Previewing is also a pain, you still have to export to your game to run around in your level. Wysiwyg is a very important feedback mechanism in level editing, which you don't really get in a modeling app.
Also since modeling apps aren't built for it, often you end up banging your head against custom scripting/programming limitations. Which you don't necessarily have in a game editor.
imo the disadvantages of that approach are really huge.
Do very successful games get made using that approach? Yes.
Does that mean it's a the best approach? No.
@ERIC CHADWICK and @MARKS I tried building a level all in the 3d app but it was more difficult for the reasons you guys stated. Good to know it better to build in the engine. Thanks!
But after you try it, you realize how broken the 3d app is, under the hood. You have to work around many limitations and bugs. It ends up taking more time to fix the problems, than it would to create your own specialized tool.