OSS探訪

40種類超の3D形式を共通データ構造へ読み込み、変換・後処理をasset pipelineへ組み込む

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
13,242
主要言語
C++
ライセンス
未判定
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

Assimp(Open Asset Import Library)は、FBX、glTF、COLLADA、STLなど40種類を超える3D形式を読み込み、共通のメモリ上scene構造へ変換するC/C++ライブラリです。形式差を吸収しながらmesh・material・animationを扱い、asset変換やgame/toolingの入力層へ組み込めます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

多数の3D形式を共通scene構造へ正規化する

個別形式のloaderをアプリごとに実装せず、40種類を超えるimport形式を共通のscene、mesh、material、animationなどとして扱えます。export対応形式も継続的に拡張されています。

出典:[1][3]

読み込み後のmeshを後処理して利用しやすい形へ整える

normal・tangent生成、triangulation、vertex cache locality改善、重複vertexやdegenerate primitiveの整理、material統合などの後処理を組み合わせられます。

出典:[1]

C/C++ APIとcommand-line toolをasset処理へ組み込む

主実装はC++でC APIも提供し、Android/iOSを含む複数環境で利用できます。build optionでassimp-cmdなどのtoolも有効化できます。

出典:[1][2]

向いている用途

game engine・viewer・converterなど複数形式を受け入れるasset pipelineに向く

ユーザーや制作toolから異なる3D形式が入ってくる製品で、import層を共通化し、後段のrendererや変換処理へ一貫した構造を渡したい場合に向きます。

出典:[1]

導入前の確認

rendererやDCC toolではなく、読み込み・変換層として組み込む

Assimp自体はsceneを描画するrendering engineではありません。GPU resource化、shading、scene management、editor UIなどは利用側または別のengine/toolで担います。

出典:[1]

source buildではCMakeとC++17/C99対応compilerが必要

公式Build手順はCMakeとC++17・C99以上を扱えるcompilerを前提にします。shared/static、tool、testなどbuild optionがあるため、配布物やCIに必要な構成だけを有効化します。

出典:[2]

GitHubのSPDX自動判定はNOASSERTIONなのでLICENSE本文を確認する

v6.0.5のREADMEはmodified 3-clause BSD licenseを案内し、LICENSEには再配布条件とendorsement禁止を含むBSD系の条件が記載されています。自動判定だけで単純化せず、配布形態に応じて実際のLICENSE本文を確認してください。

出典:[1][4][5]

参考にした公式資料

  1. [1]Assimp v6.0.5 README(2026-10-03)
  2. [2]Assimp v6.0.5 build instructions(2026-10-03)
  3. [3]Assimp supported file formats(2026-10-03)
  4. [4]Assimp v6.0.5 LICENSE(2026-10-03)
  5. [5]Assimp v6.0.5 release(2026-10-03)
編集部からの補足

3D形式ごとのparserをアプリ側で個別実装せず、共通scene構造へ寄せたい場合に特に有効です。読み込んだsceneをそのまま描画するengineではないため、rendererやasset変換工程との責務分担を先に決めると導入しやすくなります。

3ステップで試す

  1. 1

    Assimp v6.0.5のsourceを取得する

    stable releaseのsourceを固定して取得します。buildにはCMakeとC++17/C99対応compilerが必要です。

    git clone --branch v6.0.5 --depth 1 https://github.com/assimp/assimp.git && cd assimp
  2. 2

    最小構成をNinja向けにconfigureする

    READMEのDeveloper quickstartに沿ってtestとinstall targetを省いた検証用build directoryを作ります。

    cmake -G Ninja -DASSIMP_BUILD_TESTS=off -DASSIMP_INSTALL=off -S . -B build
  3. 3

    libraryをbuildする

    configure済みbuild directoryをcompileし、3D asset importer libraryがこの環境でbuildできることを確認します。

    cmake --build build
公式READMEで確認

成長

成長の推移 · 直近30日

13,242 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
37
Open PR
74

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • asset-pipeline
  • assets
  • game-development
  • c-plus-plus
  • assimp
  • patreon
  • stl
  • dae
  • collada
  • ifc
  • fbx
  • android
Stars
13,242
Forks
3,249
Watchers
299
Open Issues
479
Contributors
340
所有者種別
Organization
主要言語
C++
ライセンス
未判定
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?