kurt miller's homepage
( My development journal and homepage has moved to a new system here: kurtm.flipcode.com )

Flexporter and Game Levels 31 October 2003, 12:14PM

The artist I'm working with for my game is most comfortable using 3DSMAX for his creations. This is good news for me, because it minimizes the number of tools I need to develop. We've worked out a nice little system to export scenes and game markers directly to the game engine. The key element is Flexporter, an excellent, free utility plugin written by Pierre Terdiman.

Flexporter is designed as a plugin for which you write your own plugins. You can code in your own format using the plugin SDK and have 3DSMAX export to it directly. I did this once, but found it was easier instead to export using the text file format provided with Flexporter, then write a converter from that input to my own game's format. This way when changes need to be made, I edit only the converter rather than the Flexporter plugin. Its generally easier to work with my own code than an external SDK.

One of the cool things about 3DSMAX is that you can set user properties for any object. So to specify special areas, triggers, and other tags for the game, the artist/designer need only create a primitive (such as a box to specify a volume in which a door auto-opens), and then set the user properties (Right-click on the object, select Properties, then User Defined) by adding tags that the game engine understands. There's room there to specify simple things directly, or perhaps just add references to more complex scripts that are to be executed by the game engine. This process has worked very nicely so far.

The only case where I can really see using a commercial package like 3DSMAX for level content as a disadvantage would be when your player-base would otherwise have the ability to make mods. I suppose that's what gmax is for, but I've yet to look at it.






Complete List Of Journal Updates:
  • Auto-Terrain Texturing (15 November 2004, 12:27PM)
  • On Orientation Interfaces (14 November 2004, 7:30PM)
  • Basic Terrain Generation (10 November 2004, 4:39AM)
  • Engine Tool Interface (07 November 2004, 2:37AM)
  • Render Buffer Ranges (02 November 2004, 5:15AM)
  • wxWidgets GUI Toolkit (29 October 2004, 2:31AM)
  • Generic Rendering Interfaces (27 October 2004, 6:55PM)
  • Source Documentation with Doxygen (25 October 2004, 6:34PM)
  • Signs of Life? (25 October 2004, 5:14PM)
  • Key Value Scripts (08 November 2003, 4:32PM)
  • Octrees for Potential Colliders (01 November 2003, 4:09PM)
  • Flexporter and Game Levels (31 October 2003, 12:14PM)
  • New Project and More Updates (31 October 2003, 6:14AM)
  • HSL Color Space (07 May 2003, 6:14AM)
  • A Couple Graphics Books (02 December 2002, 5:12PM)
  • Texture Detail Using Colored Triangles (02 November 2002, 3:26AM)
  • Voxel Mesh Creation and Rendering (27 October 2002, 11:30AM)
  • Development Journal (25 October 2002, 10:57AM)



  • Site Contents Copyright (c) 2002-2004 Kurt Miller. Please do not reprint this jibberish anywhere.