libigl:軽量なジオメトリ処理ライブラリ

このlibiglは、ヘッダーファイルだけで構成された軽量なジオメトリ処理系のライブラリだそうです。ライセンスはMozilla Public License(MPL)で、特許を含まないコードなら改変、再頒布OK。

libigl



libiglは、シンプルなC++ジオメトリ処理ライブラリです。libiglには、離散化された微分幾何学計算、余接ラプラシアンや対角化質量行列などの有限要素行列、シンプルなファセット面とエッジベースのトポロジデータ構造、OpenGLやGLSLのためのMesh表示ユーティリティ幅広い機能が備わっています。また、行列操作のための豊富なコア機能により、Eigenライブラリの機能をMatLabのように扱うことができます。

これは、ヘッダーのみのライブラリです。使用前にライブラリをビルドする必要はありません。iglヘッダー(例:#include )をインクルードするだけでそのまま利用できます。各ヘッダーファイルには関数が1つずつ入っています。(例:igl/cotmatrix.hにはigl::cotmatrix()関数が入っている)。ほとんどがn行3列の頂点位置座標行列V、m行3列の三角形インデックス行列Fに格納された一般的な三角形Mesh上で動作するよう調整されています。

また、必要に応じてライブラリをStatic Libraryにプリコンパイルしておけば、あなたのプロジェクトの全体のコンパイル時間を短縮することもできます。これはあくまでコンパイル時間の短縮のみです。(実行時の動作・パフォーマンスは変わりません。)ハッキリしない場合、ヘッダーのみのデフォルトモードを使用してください。(つまり、使いたいヘッダーファイルのみをインクルードしてください)

libiglは、Eigenライブラリに大きく依存しています。我々はMATLABで多くのプロトタイピングを行っており、便利なMATLABからlibigl+Eigenへの変換テーブルを用意しています。

我々は定期的にMac OS X環境のclang、Linux環境のgcc、Windows環境のVisual Studio 2015 Community Editionでコンパイルテストを実施しています。


スポンサーリンク

libiglを利用しているプロジェクト一覧を見ると、Adobe ResearchとかPixar Researchがいたりして、業界のデファクトスタンダード感がありますね。(オイラは全然知らなかった。。。)


スポンサーリンク


中にcopyleftっていうサブディレクトリがあるけど、逆に言うと、このサブディレクトリ以外は改変・配布しちゃまずいってことなのかな?

チュートリアルが充実しているようなので、ちょこちょこと遊んでみるかな。

Tutorial

libigl tutorial



libiglのリポジトリの成長をGourceで可視化した動画見つけた。2011年から始まったってことで良いのかな。



http://www.gradientspace.com/tutorials/2020/1/2/libigl-in-unreal-engine

最近はPythonバインディングも用意されています↓

libigl python bindings


スポンサーリンク

関連記事

ZBrushで仮面ライダー3号を造る 仮面編 ClipCurve
ZBrushの作業環境を見直す
ゴジラ(2014)のメイキング
ZBrush キャラクター&クリーチャー
Geogram:C++の3D幾何アルゴリズムライブラリ
Mayaのポリゴン分割ツールの進化
TorchStudio:PyTorchのための統合開発環境とエコシステム
UnityプロジェクトをGitHubで管理する
NICOGRAPHって有名?
昔Mayaでモデリングしたモデルをリファインしてみようか
AnacondaとTensorFlowをインストールしてVisual Studio 2015で使う
ZBrushで仮面ライダー3号を造る 仮面編 Dam Standardブラシでディティールを彫る
openMVGをWindows10 Visual Studio 2015環境でビルドする
グローバルイルミネーションに手を出す前に、やり残したことがあるんじゃない?
なんかすごいサイト
PureRef:リファレンス画像専用ビューア
第20回 文化庁メディア芸術祭『3DCG表現と特撮の時代』
Raspberry Piでセンサーの常時稼働を検討する
OpenMVS:Multi-View Stereoによる3次元復元ライブラリ
科学技術計算向けスクリプト言語『Julia』
iPhone x ロボットハッカソン~RomoのiPhone用SDKで目覚ましアプリを作る~
WordPress on Google App Engineを1週間運用してみて
GeoGebra:無料で使える数学アプリ
ZBrushトレーニング
OpenGV:画像からカメラの3次元位置・姿勢を推定するライブラリ
株式会社ヘキサドライブの研究室ページ
Alice Vision:オープンソースのPhotogrammetryフレームワーク
CNN Explainer:畳み込みニューラルネットワーク可視化ツール
3分の動画でプログラミングを学習できるサイト『ドットインストール』
映画から想像するVR・AR時代のGUIデザイン
OpenCVで顔のランドマークを検出する『Facemark API』
Model View Controller
Texturing & Modeling A Procedural ApproachをGoo...
ZBrushで仮面ライダー3号を造る 仮面編 リファレンス画像の表示
MPFB2:Blenderの人体モデリングアドオン
映画『シン・仮面ライダー』 メイキング情報まとめ
Python for Unity:UnityEditorでPythonを使えるパッケージ
為替レートの読み方 2WAYプライス表示
Point Cloud Utils:Pythonで3D点群・メッシュを扱うライブラリ
Raspberry PiのGPIOを操作するPythonライブラリ『RPi.GPIO』の使い方
CGのためのディープラーニング
ZBrushでアヴァン・ガメラを作ってみる 脚のポーズ調整

コメント