Contents
Sponsored Feature: The All-Important Import Pipeline
 
 
Printer-Friendly VersionPrinter-Friendly Version
 


Part of:



[More information...]
 

Latest News
spacer View All spacer
 
February 9, 2010
 
EA Reduces Quarterly Loss, Claims #1 Publisher Position [5]
 
EA: Distribution Business To Be Pared Down, Headcount Stable In 2010
 
Game Developer Announces Salary Survey Call, Now Including Indies [4]
spacer
Latest Jobs
spacer View All     Post a Job     RSS spacer
 
February 9, 2010
 
Konami Digital Entertainment Co., Ltd.
Sound designer
 
Trion Redwood City
Sr. Graphics Programmer
 
Trion Redwood City
Sr. Environment Modeler
 
Vicarious Visions / Activision
Tools Programmer
 
Sparkplay Media
Senior Game Designer
 
Blue Fang Games
Producer: Online/Mobile
 
Blue Fang Games
Senior Server Engineer: Online/Mobile
 
THQ
Global Brand Manager with Video Game industry Experience!
spacer
Latest Features
spacer View All spacer
 
February 9, 2010
 
arrow Two Halves, Together: Patrick Gilmore On Double Helix [1]
 
arrow The Road To Hell: The Creative Direction of Dante's Inferno [18]
 
arrow The Sensible Side of Immersion [10]
 
arrow Jumpstarting Your Creativity [5]
 
arrow Truth in Game Design [49]
 
arrow Postmortem: Vicious Cycle's Matt Hazard: Blood Bath and Beyond [4]
 
arrow Developers React: The iPad's Future [16]
 
arrow The Next Big Steps In Game Sound Design [12]
spacer
Latest Blogs
spacer View All     Post     RSS spacer
 
February 9, 2010
 
[Lineage 2] Freya Update Is Just a Beginning ②
 
Swashbuckling for Landlubbers: Why you may already be encouraging piracy! [4]
 
[Lineage 2] Freya Update Is Just a Beginning ①
spacer
About
spacer News Director:
Leigh Alexander
Features Director:
Christian Nutt
Editor At Large:
Chris Remo
Advertising:
John 'Malik' Watson
Recruitment/Education:
Gina Gross
 
Feature Submissions
Features
  Sponsored Feature: The All-Important Import Pipeline
by Rod Green
6 comments
Share RSS
 
 
July 23, 2009 Article Start Page 1 of 4 Next
 

[In this sponsored feature, part of Intel's Visual Computing section, Rod Green discusses the creation of art pipelines for the firm's Project Offset engine/game, explaining why studios "should be aiming to sever the umbilical cord" and implement a 'common format' approach to art pipelines.]

It's no secret that the world of art development for games is getting more complicated, with dynamic rig LODs, real-time tessellation, sub-d surfaces, mega-textures, and the like. The complexity of assets is increasing, while at the same time, there's a drive to simplify the process to create them.

If the initial technical hurdle is lowered, artists will be free to be more creative and spend more time iterating art, and less time wrangling their tools to try and just get the assets into the game (or so the thinking goes).

One really good initial step toward helping your artists do what they do best is to alleviate their dependency on one specific software package. Long gone are the days when a studio could get by just with a copy of [insert your favorite package here].

Studios should be aiming to sever the umbilical cord and let their art teams work with what they know or what's best for any given task. Beyond the implicit benefits, there's also a world of good to be had in using this approach when working with outsourced employees.

The trick to making the switch is to change the studio's mentality by breaking down the export barrier and implementing an import-based pipeline.

Export vs. Import

What's the real difference between export- and import-based pipelines?

An export-based pipeline is typically structured so that assets are exported directly to a custom first-party priority native format. Once exported, the asset is loaded directly into the engine to be binarized. The format is often spec'ed in such a way that the content is written in a very specific structure dictated mainly by the engine's internal data structures. An example would be to de-index vertex data, triangulate, then section out materials, normals, and tangents.

Creating your own custom exporter initially seems like the path of least resistance. Why should we try to interpret or work with someone else's exporter? We can just quickly write our own and make it do exactly what we need!

While this is true and can help jumpstart production, it will ultimately confine and limit your production team.


Figure 1 (click for full size)

One of the problems with an export-based pipeline is it becomes challenging to support artists who are working in multiple art packages. A unique exporter has to be built and maintained for each software application.

Some studios avoid this maintenance nightmare by establishing one core package as the gatekeeper of data (see Figure 1), a practice that utilizes a range of third-party established formats to transfer between external packages while ultimately forcing all content to be passed through one primary package's exporter before it can be loaded in the engine.

But what if, during production, a superstar programmer develops tech for the engine that will allow you to render all meshes via subdivision surfaces? The programmer tells you that triangulated meshes aren't optimal for this new tech and the system would really prefer quads. You'll now have to update the engine's native mesh structures to support quads, modify the external exporter(s), and -- you guessed it -- re-export all the mesh assets!

Another more common example is that your project is targeted for multiple hardware platforms. You're going to have to maintain multiple exporters for different targets and at the very least re-export the assets in a way that suits that target platform, most commonly down sampling the assets in the process. Needless to say, in an export-based pipeline, managing two distinct sets of exported assets and art pipelines can get quite complicated (see Figure 2).


Figure 2 (click for full size)

On the other hand, an import-based pipeline shifts the task of native conversion from the export step to the import through a transparent background process. Rather than defining a custom export format, the pipeline makes use of a standardized format (for example, FBX or Collada for models and PSD or TIFF for textures).

The asset is saved to this common format and then sourced in the engine. The act of sourcing the "loading" of the asset in the engine triggers a background process that converts and imports the data from the source asset as needed. It might, for example, convert units, de-index vert data, Y-up to Z-up, combine, flatten, resize, recolor, and so forth.

 
Article Start Page 1 of 4 Next
 
Comments

Luis Guimarães
profile image
Workflow improvement is one of my favourite subjects.

Mark van Dijk
profile image
:) *refers to XNA*

Dan VanBogelen
profile image
Mega textures has got me wondering how they will have to adjust the pipeline software. While it seems that in the future you will be able to have huge textures, what balance would have to be made in the software that is used to create them? Will Adobe have to adopt some memory management system to be able to load and manipulate gigantic textures with all there layers, or are we going to start seeing new editing tools that are more specific to gaming art?

Donald Smith
profile image
I predict both will happen.

Adobe (or someone) will figure it out...

And when mega texturing becomes "mainstream" you will see editors supporting it by allowing 2 things. Mega textures to be generated from smaller textures (content creation process changing only slightly from what we currently see) as well as tools to allow addition of "layers" (dirt/blend/AO/GI) in the development environment (unreal editor, radiant, offset, cry-engine... whichever) otherwise, the amount of time required to create a single asset/environment would be too great. And editing a mega texture in photoshop would make an environment artist quit his/her job.

Also, rendering farms for baking levels/character maps/assets :)... fun!

My opinion... nothing more.

Luis Guimarães
profile image
Do we really need textures langer than 4096x4096? Technology development overgrows game development like 1000:1

Lost C1tY
profile image
That depends entirely on the end result a developer wishes to achieve. Megatexture is interesting for a number of reasons, primarily because it removes artifacts associated with tiling and in theory it can provide a unique look to a game's surfaces. Additionally, I doubt that an artist would required to hand edit a 128,000*128,000 pixel texture in a traditional sense.

As Carmack explains here, the direction their technology is taking, is making it easier for artists and designers to properly convey subtleties about the "story" (for want of a better term) of an environment.

http://www.youtube.com/watch?v=YB0JzR81SPE


none
 
Comment:
 


Submit Comment