Browse our Products

Aspose.3D for Python via .NET 23.5 Release Notes

Improvements and Changes

KeySummaryCategory
THREEDNET-1359Exporting to OBJ - Image/texture files not copied to OBJ directoryTask
THREEDNET-1361Decouple the dependency of System.DrawingTask
THREEDNET-1360Allow export PBR material definition and normal mapping in OBJ exporterImprovement
THREEDNET-1357Missing material and texture when loading obj fileBug fixing
THREEDNET-1358When importing an obj file, ControlPoints encountered an error reading data and read it as normal vector dataBug fixing

API changes

Added class aspose.threed.profiles.FontFile

Added class aspose.threed.profiles.Text

A FontFile can be used with Text to define profile from a string, then it can be used by other procedural modeling classes like LinearExtrusion

Added members to class aspose.threed.formats.DracoSaveOptions, aspose.threed.formats.GltfSaveOptions, aspose.threed.formats.ObjSaveOptions:

Set this to true to make the exporter rescale position coordinates of meshes by Scene.AssetInfo.UnitScaleFactor, this option works for Gltf/Obj/Draco file.

        # Apply <see cref="AssetInfo.UnitScaleFactor"/> to the mesh.
        # Default value is false.
        @property
        def apply_unit_scale(self) -> bool:
                ...
        # Apply <see cref="AssetInfo.UnitScaleFactor"/> to the mesh.
        # Default value is false.
        @apply_unit_scale.setter
        def apply_unit_scale(self, v : bool):
                ...

Sample code

    from aspose.threed import Scene
    from aspose.threed.formats import ObjSaveOptions
    s = Scene("test.fbx")
    opt = ObjSaveOptions()
    opt.apply_unit_scale = True
    s.save("output.glb", opt)