Converting OBJ with Textures

PDF3D ReportGen and PDF3D.IO development SDK can be used to convert OBJ formats to 3D PDF. When converting OBJ, textures may be preserved.

When converting 3D Photogrammetry Meshes with large textures, using OBJ format, a number of adjustments can be made to improve the conversion.

Here are some hints, and notes:

  1. Load just the .obj file into ReportGen. Internally this automatically finds the .mtl and associated textures. If textures fail to load, look at the .mtl file to check for hard-coded file-paths or typos.


  1. PDF3D has multiple interfaces which are compatible with OBJ. When converting, choose DCC Interface, this is generally preferred over OSG.

  1. For large textures, sometimes Adobe Reader can drop out sections of the texture or reduce image resolution. On the “Geospatial” tab, enable “Texture Split” options, this can often help in this case.

Normally the default tile size of 4k x 4k works well, however smaller tiles of 2k x 2k may work better on older graphics cards. This process breaks up the OBJ mesh into sub-meshes, and subdivides the large texture down into tiles to apply onto each sub-mesh.

If the texture is really large, and still causing troubles, try enabling Texture Subsample, and set = 2, or even higher 3, 4… At each increment this will reduce the image resolution by half (every other pixel in rows and columns, making resource size 1/4). This decimation will lose some details but the PDF will be smaller and faster.

  1. If shading and image color is dull or not well matching the original, then material settings can be used to improve the conversion.
    On Visual Effects tab, set color options and set their values:

    Diffuse Color = black
    Specular Color = black
    Emission Color = Near-White
    Ambient Color = black
    Shininess = 0.0

This will reduce lighting-shading and glossiness of the surface, and preserve the original image colour appearance.


  1. If the OBJ Mesh is large (i.e. obj file greater than 100 mb) then mesh simplification can help to reduce the file size, and avoid “3D Parsing Error”.

On Advanced tab, enable Simplifcation Options,
set Threshold Triangles Count = 1000000 (1 million)
set RGB weight = 0.0001