Jump to content
  • Advertisement
Sign in to follow this  
Daivuk

Content pipeline in games like Tomb Raider and cie

This topic is 3628 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi Guys, I'm a 3D engine/tools programmer. I never posted in that section. It is maybe a technical question, but I think it is more a art section since it's about art content. In recent games like Tomb Raider, Assassin's Creed or Halo3. Maps are big, huge, and unique. Almost every part in the level is unique. Maybe some vegetation is reused, but a lot of the stones, destroyed walls, rocks, etc, is not repeated and completely modeled. Contrary to a game using the Unreal Engine 3 where every props is reused and copy pasted everywhere on brushes. So I am wondering what is the best way of developing on those project, if you have like 30 artists working on a theme/map. My guess is: modeling tools are Maya or 3Ds max. Some people are working on props (Trees, stoned, etc) separately, and one guy is working on putting those together in the map and building the actually map (Alone?). But I can't imagine all the props to fit perfectly to match, because those maps are unique in their design (Mostly talking about Tomb Raider Underworld here.) I can't imagine of a perfect tool to do this. Maybe a real time modeler. Like maya or 3D studio, but that everybody is connected to and only one guy can work on one Mesh at a time. And you can lock some mesh because you want to work on them after and don't want anyone to screw them up. And this, directly in the full world. Some can work on the general shape of the map, some on the vegetation, others on trims. Some pass behind and "destroy" the world to make it look like ruins. Any thoughts? I'm really thinking about creating a powerful tool to help the art team to work more together, and don't have to redo 10 times the same prop in a separate software, then loosing a bunch of precious time. What tool you guys would dream of to work on big maps like that with a big team to maximize your production? Thanks

Share this post


Link to post
Share on other sites
Advertisement
Yes we use subversion already. But still the process is complicated, and has to be very well coordinated and lot of time is probably wasted. The guy making the destroyed statue, that will be placed at that exact spot in the map. Has to make sure everything fits in. This sound stupid, but on a huge team this can be a pain.

You need to export the mesh. Checkin the file to subversion. Someone else checkout it, place it in the map: Oups, something changed, that part of the statue doesn't fit in my version because I changed this and this to the world around it.

Send an email to the guy or do a change request, etc. Repeating again and again.

I was dreaming of making a tools where you can visualize the map in real time like a multiplayer match. Connected to the art team. You place a prop in it, everybody sees it. And you can go edit the mesh directly in it.

EDIT: I'm brainstorming here. Tell me what you think, what you would like to see in the future. Maps in games are getting bigger and bigger and more complicated and more unique.

Share this post


Link to post
Share on other sites
This isn't really a software problem. It's a procedural one. If your artist doesn't have the model roughed out yet, you don't use the model in your levels yet. If you don't know whether your artist has the model roughed out yet without emailing him, you need to refine your development processes.

Share this post


Link to post
Share on other sites
Honestly all the big AAA games, whatever engine they use, have basically the same paradigm. Your perception of Unreal Engine games seeming more copy/pasted is often either a result of intentional art direction, performance limitations of the engine or budget/time constraints. It doesn't have anything to do with the process itself.

1) Designers grey-box the level sculpting out the play spaces and whatnot. Usually done in-editor with things like the BSP geometry in the Unreal Editor.

2) while that is happening designer is working with engineers to ensure that level streaming and compartments are set up correctly. This process ends up generally with the level split into many separate files. Typically you get layers as well (often separate files) for the same location. We have separate layers for: scripting (includes actual scripts and things like spawners), VFX, background, audio and terrain

3) Once the playable area is mapped out and the story beats roughly in place, concept artists give the grey-box some concept treatment. Sometimes done as a drawing over a printout of some screenshots of the gray-box. Lots of feedback loops here between artists, designers & producers to decide on look & feel and whatnot

4) Background artists then go to town creating props and detail objects for the scene.

5) As they're created, props are dropped down in the level files created in #2 which gradually replaces all the gray-box temp art with the actual production art. Sometimes there's a designated content integrator, sometimes the artists just do it themselves (all files are always in some source control system: most everyone professionally uses perforce). Since these are all binary files there is frequently contention for the file (because you can't merge), but having everything broken down into separate layers helps greatly.

6) Throughout this process there is feedback between the level designers, the produciton staff, the artists and the engineers to tweak the incoming content. They're looking for things like: playability (does an object interfere with sight lines/player movement/pathfinding), performance (did the artist use a giant texture, do we need to cut polys/texture detail in a scene)

As for tools:

Designers/Scripters: whatever your level editor is
Artists: Maya or Max
VFX artists: whatever in-game tools you have
Source Control: almost always Perforce, otherwise CVS, Subversion or Alienbrain and occasionally Source Safe (if the team hates itself)

Other stuff:

Props are always saved in their own separate files and your level editor will load them dynamically. On a big title you then have a final "cooking" process which concatenates everything in a level and optimizes it into a single easily loaded file (per streamed compartment). Generally your system is set up so you don't need cooking to run on PC but always need it for consoles (for shipped PC you cook for your final build because it speeds up load times)

-me

Share this post


Link to post
Share on other sites
Thanks for sharing.

Our first xbox/PC title is almost out of the door. I am the tool guy mostly, and I was wondering how I can help the guys building bigger maps in more complex environment. (For future projects)

Our current engine is tile based, and we can't cook the props because its xbla title and cooking requires more space. We are limited in size.

We've got a good process so far, but as I said, game is small and team is small (~5 artists). And only one guy can work on a map at a time. While others work on props. But on gigantic maps more than one people might have to decorate a map in same time. Splitting the map might be hard. A map editor allowing multiplayer map editing might be beneficial.

Share this post


Link to post
Share on other sites
I don't know just how big your maps are, but can't you partition them and then either "compile" them before loading into the game or just do this at run-time? I mean, if a map is zoned out into a 4x4 grid that is compiled back together in the game, that allows for 16 different sections of the map that can be worked on concurrently. Another idea is layers. If the terrain layer is different than the prop layer then you could almost certainly have each being worked on at the same time, depending on how your levels are structured.

[Edited by - zer0wolf on January 5, 2009 9:27:29 PM]

Share this post


Link to post
Share on other sites
Another good thing is to just have the modelers make low-res proxy objects to place in the level in order to get them positioned properly. Then once everyone is happy with the proxy objects in the level, they can go and make better high-res objects to replace the proxies.

That would at least save your modelers from having to redo detailed models over and over.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!