Jet Resource File Formatting Framework

This framework provides a set of classes that can hold all the information describing a 3D resource, and can format that data into the proper format for each proprietary Auran Jet resource file. Individual 3D resource projects will use these classes, and be responsible for extracting the 3D resource data from their associated 3D editor, and loading this framework with that data. They can then have the framework write out that data as properly formatted Jet resource files.

Last updated: 01/13/2002


Status

08/30/01 - 11/25/01: During this period, the framework was developed as part of the Blender Resource Export project (other projects had to extract the classes individually to use them outside the Blender utilities). All such code is now obsolete, and you should replace it with the current code described below.

12/01/01: Separated from the initial Blender project and created as a stand-alone class framework and removed all references to the original Blender FileConverter project (removed #include "FileConverter.h" from all files).

01/13/02: Added additional classes to create Jet animation files (*.kin), and modified existing classes to work with the new animation file classes. Changes in this update include

Various Classes Removed various obsolete lines that were already commented out.
CBaseResourceFormatter
  • Changed a number of things internally to handle a second output file type.
  • Changed SetOutputFileHandle to SetIMOutputFileHandle for Indexed Mesh file output.
  • Added SetKINOutputFileHandle for animation file output.
  • Added WriteOutTheKINFile for animation file output.
CKINViewer Changed to fix a bug in reporting file position in the INFO header file.
New Animation Classes CKINHeader, CKINInfoHeader, CEvent, CEventDetail, CSkeleton, CSkeletonBone, CFrame, CFrameDetail.

Note: The addition of the second file creation classes has required some changes in the name of the method used to create Indexed Mesh classes. This will require a change to your current code if you are alreacy creating Indexed Mesh files. Specifically,
CBaseResourceFormatter::SetOutputFileHandle() has changed to
CBaseResourceFormatter::SetIMOutputFileHandle()

At this time, the only example code showing how to create an animation file is in the Blender project (of this same SourceForge.net project) in
CBlenderAnimationSource::ProcessTheBlenderExportFile()

This is test code only, and does not yet represent live data that has been used successfully within a Jet application.


Known Problems/Gotchas:


Files

I have not yet succeeded in setting up a full SourceForge project, but I do have a zip file containing the files for this portion of the project. You can download the FileFormatter.zip files here. Note: this is a WinZip file, not a UNIX zip format. It contains pretty much the whole development project, which will be most useful to other developers.


Usage

Projects unique to a specific editor can use these classes as follows