To export from 3ds Max, it's easiest to export to the VRML 97 format (extension
.wrl). VRML is an older version of X3D, it's basically a subset of X3D, and we support it 100% in the engine.
Choose the Export option from the main menu, then change the file type to VRML97, as seen on the screenshots on this page. A window with VRML97 Exporter settings will appear, at the beginning you can just accept the defaults — they are sensible.
To have the textures correctly picked up, you have to set the "Bitmap URL Prefix -> Use Prefix". It should be the directory, relative to the .wrl file location, where the textures lie.
The exporter by default does not export normals, and it also does not set the
creaseAngle field in VRML, leaving it at zero. This means that everything will have flat shading. The fix this, it's easiest to check "Normals" at exporting.
You could also edit the VRML file afterwards, or edit the VRML/X3D node graph when loading, to set
creaseAngle field at
IndexedFaceSet to something non-zero, to have auto-generated smooth normals.
creaseAngle is in radians, e.g. value 4 (greater than Pi) will make a completely smooth model. But that's usually more involved.
Note that we also support some other file formats that you could export from 3ds Max, like OBJ and 3DS. They work fine to export simple mesh with textures, but these format don't support animations, and many other advanced features. So it's better to use VRML.
Copyright Michalis Kamburelis and other Castle Game Engine developers.
Thank you to Paweł Wojciechowicz from Cat-astrophe Games for various graphics.
This documentation is also open-source and you can even redistribute it on open-source terms.