Well, let me clarify this.
Models of VF2 are made with softimage. And they can be opened with that, wich doesn't mean they are on the CD the way they were for soft.
They are exported from their original format to a C like style, for example:
/* SOFTIMAGE_SEGA_SATURN_EXPORT v2.5 */
#include "sgl.h"
/* first the vertices: */
POINT point_cube1[]={
POStoFIXED(-1.000, 1.000, 1.000),
POStoFIXED(-1.000, 1.000,-1.000),
POStoFIXED(-1.000,-1.000, 1.000),
POStoFIXED(-1.000,-1.000,-1.000),
POStoFIXED( 1.000, 1.000, 1.000),
POStoFIXED( 1.000, 1.000,-1.000),
POStoFIXED( 1.000,-1.000, 1.000),
POStoFIXED( 1.000,-1.000,-1.000),
POStoFIXED( 0.732, 0.996,-2.012),
POStoFIXED( 0.732,-0.468,-2.012),
...
POStoFIXED(-1.866, 1.837,-3.128)
};
/* Then ... */
POLYGON polygon_cube1[]={
NORMAL(-1.000, 0.000, 0.000), VERTICES( 82, 80, 81, 83),
NORMAL( 0.000, 0.000,-1.000), VERTICES(126,124,125,127),
NORMAL( 1.000, 0.000, 0.000), VERTICES( 86, 84, 85, 87),
NORMAL( 0.000, 0.000, 1.000), VERTICES( 4, 0, 2, 6),
NORMAL( 0.000, 1.000, 0.000), VERTICES(284,282,283,285),
NORMAL( 0.000,-1.000, 0.000), VERTICES(138,136,137,139),
NORMAL( 0.967, 0.000,-0.256), VERTICES( 19, 16, 17, 18),
NORMAL( 0.000, 1.000,-0.004), VERTICES( 1, 5, 8, 10),
NORMAL( 0.000,-0.885,-0.466), VERTICES( 7, 3, 11, 9),
NORMAL(-0.967, 0.000,-0.256), VERTICES( 20, 23, 22, 21),
NORMAL( 0.963, 0.000,-0.268), VERTICES(122,120,121,123),
NORMAL( 0.000, 1.000, 0.005), VERTICES(118,116,117,119),
NORMAL(-0.963, 0.000,-0.268), VERTICES(114,112,113,115),
NORMAL( 0.000,-0.872,-0.489), VERTICES(110,108,109,111),
NORMAL( 0.384,-0.771,-0.507), VERTICES( 7, 9, 17, 16),
NORMAL( 0.526, 0.838,-0.142), VERTICES( 8, 5, 19, 18),
NORMAL( 0.130, 0.000,-0.992), VERTICES( 38, 36, 37, 39),
NORMAL( 0.575, 0.000, 0.818), VERTICES( 5, 7, 16, 19),
NORMAL(-0.384,-0.771,-0.507), VERTICES( 11, 3, 20, 21),
NORMAL(-0.526, 0.838,-0.142), VERTICES( 1, 10, 22, 23),
NORMAL(-0.130, 0.000,-0.992), VERTICES( 34, 32, 33, 35),
NORMAL(-0.575, 0.000, 0.818), VERTICES( 3, 1, 23, 20),
NORMAL( 0.130,-0.000,-0.992), VERTICES( 8, 18, 24, 25),
NORMAL( 0.130, 0.000,-0.992), VERTICES( 17, 9, 26, 27),
NORMAL( 0.130, 0.000,-0.992), VERTICES( 18, 17, 27, 24),
NORMAL( 0.130, 0.000,-0.992), VERTICES( 9, 8, 25, 26),
NORMAL(-0.130,-0.000,-0.992), VERTICES( 22, 10, 28, 29),
NORMAL(-0.130, 0.000,-0.992), VERTICES( 11, 21, 30, 31),
NORMAL(-0.130, 0.000,-0.992), VERTICES( 21, 22, 29, 30),
NORMAL(-0.130, 0.000,-0.992), VERTICES( 10, 11, 31, 28),
NORMAL( 0.467, 0.875, 0.127), VERTICES( 31, 30, 33, 32),
NORMAL(-0.965, 0.000,-0.262), VERTICES( 28, 31, 32, 34),
NORMAL( 0.608,-0.777, 0.165), VERTICES( 29, 28, 34, 35),
NORMAL( 0.965, 0.000, 0.262), VERTICES( 30, 29, 35, 33),
NORMAL(-0.608,-0.776, 0.166), VERTICES( 25, 24, 37, 36),
NORMAL( 0.965, 0.000,-0.264), VERTICES( 26, 25, 36, 38),
NORMAL(-0.467, 0.875, 0.128), VERTICES( 27, 26, 38, 39),
.....
NORMAL( 0.000, 0.000, 0.000), VERTICES(455,457,469,467)
};
/* And finally:*/
ATTR attribute_cube1[]={
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight),
....
ATTRIBUTE(Single_Plane, SORT_CEN, 0, No_Palet, No_Gouraud, CL256Bnk|MESHoff, sprNoflip, UseLight)
};
PDATA pdata_cube1[]={
point_cube1, sizeof(point_cube1) / sizeof(POINT),
polygon_cube1, sizeof(polygon_cube1) / sizeof(POLYGON),
attribute_cube1
};
OBJECT object_cube1[]={
pdata_cube1,
TRANSLATION(0.0000,0.0000,0.0000),
ROTATION(0.0000,0.0000,0.0000),
SCALING(1.0000,1.0000,1.0000),
NULL,
NULL
};
That thing is the model of a small robot, in SGL... that is the real output of SoftImage when talking about saturn. Finally, that is compiled and not in readable ASCII.. so you can't just decodify it that easily.
(That code is used in the small program i have been using to cotrol rotation, scaling and stuff of the robot on screen with sprites on the FG)