Re: pipelines

"Research \(GameBrains\)" <[email protected]> Tue, 29 Apr 2003 07:47:47 +0800
Newsgroups gmane.games.devel.consoles
Organization GameBrains
Message-ID <[email protected]>
Should have been clearer :-)  Our 3d assets come out with a root file =
name and an extension as to their type (e.g. LVL001.BSP).  If the source =
asset needs/has platform specific versions (e.g. higher poly, =
multi-texture, etc.) it comes out with a platform code in the name (e.g. =
LVL001.PS2.BSP).  We use MAKE to process the files, extract the platform =
code, and pass the files to custom (platform specific) backend tools to =
generate optimized runtime assets.

The glue to hold it all together is XML via a scenegraph.  So for a =
given actor (or light, camera, texture, etc.), I specify the model name, =
attributes, position, etc., etc. in the XML (level editor can read/write =
scenegraph or you can use text editor).  It is here that we are =
currently specifying what pipes go with what assets on which platform.  =
Where the model data comes out with platform specific versions, all =
platforms use the XML scenegraph to build the runtime database.  Without =
the pipeline info in the XML, it is clean so I wanted to get it out, and =
I wondered how others are storing their shaders, etc. and keeping them =
linked to the assets they render.

In case anybody is wondering why we do it in XML and not MAX it's =
because a) it's easier b) the programmers can change the pipe without =
bugging an artist (or needing their own license for MAX) and c) we =
seldom need Tom's Big-Artist-Stick (tm) because the artists don't need =
to worry about pipelines (but they do use the various effects and our =
exporters figure out what they are trying to do and we take care of =
reproducing it on the console)

The final phase is building a runtime scenegraph with pre-selected, =
pre-instanced assets so that at runtime we just load the graph in the =
blink of an eye and we're done.  So we don't carry any excess baggage =
around, no load searching, etc.

So more exactly, is anybody binding the shaders/custom code to the =
assets in their tool chain like we are?  Or is the binding done ad hoc =
in code by programmers?  Or are the pipes loaded, asset tagged, and =
binding done at runtime?  Or are they being embedded in the assets in =
the 3d package?  Or???

Thanks,
Brett Bibby
GameBrains


----- Original Message -----=20
From: <[email protected]>
To: <[email protected]>
Sent: Tuesday, April 29, 2003 1:54 AM
Subject: Re: [GD-Consoles] pipelines


>=20
>=20
>=20
>=20
> > I hope I understand what you are saying, are you saying that you put =
all
> your data assets for every console into one file format, so one file =
can be
> loaded into any console?
>=20
> I read it as the first half, but not the second half. As in you'd =
author
> for cross-platform, and all of that data would be held in one file. =
Then
> you have back ends for each platform that compiles into platform =
specific
> formats.
>=20
> Even if your output container format is fundamentally cross platform =
(which
> I'd reccomend), most of your larger chunks are going to be platform
> specific (i.e. texture, model and audio data), or your load times are =
going
> to be needlessly long as you'd be doing the per-platform processing on =
the
> fly.
>=20
> Cheers,
> Phil
>=20
>=20
>=20
> -------------------------------------------------------
> This sf.net email is sponsored by:ThinkGeek
> Welcome to geek heaven.
> http://thinkgeek.com/sf
> _______________________________________________
> Gamedevlists-consoles mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/gamedevlists-consoles
> Archives:
> http://sourceforge.net/mailarchive/forum.php?forum_id=3D553


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Gamedevlists-consoles mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gamedevlists-consoles
Archives:
http://sourceforge.net/mailarchive/forum.php?forum_id=553