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年から始まったってことで良いのかな。

https://www.youtube.com/watch?v=rkKGel1AXtc

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

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

libigl python bindings


スポンサーリンク

関連記事

UnityでOpenCVを使うには?
ZBrushトレーニング
書籍『ROSプログラミング』
Unityの薄い本
PyMC:Pythonのベイズ統計ライブラリ
UnityのTransformクラスについて調べてみた
『スター・ウォーズ 最後のジェダイ』のVFXブレイクダウン まとめ
MLDemos:機械学習について理解するための可視化ツール
WordPressプラグインによるサイトマップの自動生成
VCG Library:C++のポリゴン操作ライブラリ
ArUco:OpenCVベースのコンパクトなARライブラリ
Autodesk CompositeとAutodesk MatchMoverが無料
ZBrushでアヴァン・ガメラを作ってみる パーツ分割
OpenCV バージョン4がリリースされた!
CLO:服飾デザインツール
ZBrushでアヴァン・ガメラを作ってみる 頭頂部と首周りを作り込む
GAN (Generative Adversarial Networks):敵対的生成ネットワーク
Amazon EC2ログイン用の秘密鍵を無くした場合の対処方法
AfterEffectsプラグイン開発
オープンソースのテクスチャマッピングシステム『Ptex』
Google製オープンソース機械学習ライブラリ『TensorFlow』のWindows版が公開された
OpenGVのライブラリ構成
ROSの薄い本
生物の骨格
書籍『開田裕治 怪獣イラストテクニック』
Mechanizeで要認証Webサイトをスクレイピング
クラスの基本
ブログが1日ダウンしてました
Maya には3 種類のシェーダSDKがある?
ZBrush 2018での作業環境を整える
Siggraph Asia 2009 カンファレンスの詳細
ZBrushでアヴァン・ガメラを作ってみる 下半身のバランス調整
粘土をこねるようなスカルプトモデリング
ZBrushでアヴァン・ガメラを作ってみる 下アゴの付け根を修正
WordPress on Google App Engineを1週間運用してみて
3D映画のポストプロダクション 2D-3D変換
布地のシワの法則性
Mixamo:人型3Dキャラクターアニメーション制作サービス
ラクガキの立体化 背中の作り込み・手首の移植
OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる
『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイクダウン
Adobe Photoshop CS4 Extendedの3Dモデル編集機能

コメント