FBX not setting filmGauge

Is the film gauge stuck at 35mm? My FBX cameras are not 35mm. How can I get the value provided by the FBX? It says it defaults to 35mm, so I figured it would get the value from the cameras, but I don’t see anything that relates to 36mm in the camera, or the camera attributes in the FBX tree.

This is not something currently supported by the FBXLoader. Not sure how hard it would be to add because FBX cameras can have a lot of features not supported by three.js.

If you can figure it out, a pull request would be welcome.

I wouldn’t know how to implement such a thing but I think I tracked down the relevant information. It seems they are setting the aperture width, and height in inches, and depending on the mode use using FOV or focal length




It seems I do have the relevant information to derive the film gauge. I’m afraid I’m just so bad at math I’m not sure what the formula is for the 4 modes (which is really just 2, using FOV or focal length… unless it means vertical fov and horizontal fov).

Ok, so FBX provides FilmWidth and FilmHeight. This is lens width/height in inches. When I convert filmWidth from inches to millimeters, rounded, I get 36mm, which matches blenders default camera

Math.round( 25.4 * FilmWidth )

Which will give you 36mm. Same as camera exported from Blender.

I think FBX is providing this data pretty straight forward, Three.js is just not making use of it.

Edit: kept wanting to say FilmHeight. I mean width.

See my comment here