For those who forget the post you have to know first that TrueSpace 7.6 is now free.
Lot and lot of new things in it like shader, dx9 realtime preview ect…
And well fully support of X and DAE exportation
The panda tools x2egg seem to be allready strong to support animated model :
I’ve made some other test with some normal mapped model.
The x expoter of TrueSpace generated and well X file with map and normal.
It seem that x2egg ignore the normap map when parsing file
“TextureFilename” is the only checked info.
CVS\pandatool\src\xfileegg\xFileMaterial.cxx
////////////////////////////////////////////////////////////////////
// Function: XFileMaterial::fill_material
// Access: Public
// Description: Fills the structure based on the raw data from the
// X file's Material object.
////////////////////////////////////////////////////////////////////
bool XFileMaterial::
fill_material(XFileDataNode *obj) {
_face_color = LCAST(float, (*obj)["faceColor"].vec4());
_power = (*obj)["power"].d();
_specular_color = LCAST(float, (*obj)["specularColor"].vec3());
_emissive_color = LCAST(float, (*obj)["emissiveColor"].vec3());
_has_material = true;
// Walk through the children of the material. If there are any,
// there should be only one, and it should be just a Texture.
int num_objects = obj->get_num_objects();
for (int i = 0; i < num_objects; i++) {
XFileDataNode *child = obj->get_object(i);
if (child->is_standard_object("TextureFilename")) {
_texture = Filename::from_os_specific((*child)["filename"].s());
_has_texture = true;
} else {
if (xfile_cat.is_debug()) {
xfile_cat.debug()
<< "Ignoring material object of unknown type: "
<< child->get_template_name() << "\n";
}
}
}
return true;
}
After some seeking about the last format specifiacation on X file it seem that the old X file doc (v1.13 of the 13 january 2007) isn’t the best way now to parse X file.
The last DirectX SDK and especiatly the XNA kit seem to be more “up to date” about the last new feature on the X file format like the extention about the differente map type : (exemple from rhino exported model from TrueSpace 7.6 that fully support X export for XNA)
Material {
1.000000;1.000000;1.000000;1.000000;;
50.000000;
1.000000;1.000000;1.000000;;
0.000000;0.000000;0.000000;;
TextureFilename {
"file_0.jpg";
}
NormalmapFilename {
"file_1.jpg";
}
New extension reference in material add directly :
TextureFilename (diffuse)
NormalmapFilename
SpecularmapFilename
ect…
The idea is really good and more clean in ready and don’t generat lot of material and now those type of effect is generalised on the market.
I’ll to seek more info about those new extention.
I could be good after that to change the X2EGG tools to support all the last extention.
That could make the pipeline part of Panda3D really more easier with an professional modeling tools that support of the next rendering game effect (shader, post process ec…).