AssimpModelFormat

Description

sealed class Tinman.AddOns.Assimp.AssimpModelFormat

Derived from

ModelFormat abstract

Full source code is included in the Tinman 3D SDK download.

A ModelFormat implementation for:
Open Asset Import Library v5.*
https://github.com/assimp/assimp

The AssimpModelFormat is available if any of the following native libraries is present in the search path of the process:

  • 'assimp5.x32' : 32-bit dynamic link library

  • 'assimp5.x64' : 64-bit dynamic link library

  • 'assimp5' : dynamic link library

  • 'assimp.x32' : 32-bit dynamic link library

  • 'assimp.x64' : 64-bit dynamic link library

  • 'assimp' : dynamic link library

  • 'libassimp5' : dynamic link library

  • 'libassimp' : dynamic link library

This class assumes that the library interfaces of all minor versions are binary compatible.

To re-build the dynamic libraries that are included in the Tinman 3D SDK, please perform the following steps (you may use other library versions, toolsets or build options, of course):

  • Install CMake 3.30.4 (https://cmake.org).

  • Download Assimp release 5.4.3 (https://github.com/assimp/assimp/tags).

  • Choose generator 'Visual Studio 17 2022', using the 'Win32' and 'x64' platforms.

  • Use default build options of CMake, then apply the following:
    ASSIMP_BUILD_ASSIMP_TOOLS = FALSE
    ASSIMP_BUILD_TESTS = FALSE
    ASSIMP_BUILD_ZLIB = TRUE
    ASSIMP_DOUBLE_PRECISION = FALSE
    CMAKE_C_FLAGS += ' /DWINVER=0x0601 /D_WIN32_WINNT=0x0601'
    CMAKE_CXX_FLAGS += ' /DWINVER=0x0601 /D_WIN32_WINNT=0x0601'

  • Build the Assimp binaries (project assimp with configuration Release), then rename and copy each one into its respective SDK folder:
    bin/win.any/assimp5.x32.dll
    bin/win.any/assimp5.x64.dll
    bin/win.x32/assimp5.x32.dll
    bin/win.x64/assimp5.x64.dll

The ModelFormat.ReadModel method of this file format returns a IModelReader object that supports the following options:

Public / Constants

Instance


public static readonly attribute Instance → (ModelFormat)

Singleton instance of AssimpModelFormat (major version 5).