学生の頃は、CG系のプログラミングと言えば全て自前実装するものだと思っていた。
ライブラリなんて何にも知らず、レンダラを作るためにMeshデータの構造から全部(Javaで)自前実装してました。画像ファイルの読み込み機能すら自作しちゃってた。良い勉強になったけどね。
当時は「世界トップレベルのCG研究者達は全部自前でプログラム書いてるんだスゲー」なんて思ってました。
会社に入って仕事で画像処理を扱うようになり、OpenCVを触るようになってから、「当たり前の機能」は自前実装する必要が無いことを知った。
ちょっと前置きが長くなったけど、CG系でも同じように、当たり前の機能・構造はライブラリがあるんだろうなぁ、と思って調べたらこれを見つけた↓
OpenMesh
OpenMeshは、ポリゴンメッシュを表現、操作するための汎用的で効率的なデータ構造を備えています。OpenMeshはアーヘン工科大学のコンピュータグラフィックスグループが開発したものです。このプロジェクトはドイツ連邦教育・研究省(BMBF)の出資を受けています。
このライブラリは、以下の理念に基づいて設計されています:
- 柔軟性:改造しなくても多くの異なるアルゴリズムの原理が利用できる。
- 効率性:メモリの使用を極力抑え、高速処理を実現する。
- 使いやすさ:複雑な内部構造を使いやすいインターフェイスで隠蔽する。
最新版は三条項BSDライセンス(修正BSDライセンス)。つまり、「無保証」であることの明記と、再頒布の際に著作権およびライセンス条文を表示が必要。
OpenMeshの各コンポーネント間の相互関係を示した図↓

このライブラリ、流行っているかどうかは良くわからないです。日本語で記事書いているのはこちらの方のブログぐらい↓
http://www.cloud.teu.ac.jp/public/MDF/toudouhk/blog/2015/04/10/OpenMesh/
追記:Qiitaに記事がアップされた↓
https://qiita.com/shohirose/items/d92447fcc07a623ebf24
CG系の人は普段何を使ってるんでしょうね。CGALとか?
会社員になってからというもの、何かプログラムを書くにしても既存のライブラリありきで実装プランを考えることが多くなった。
関連記事
ZBrushでゴジラ2001を作ってみる 姿勢の変更
Caffe:読みやすくて高速なディープラーニングのフレームワ...
COLMAP:オープンソースのSfM・MVSツール
仮面ライダー4号の最終話を観た
組み込み向けのWindows OS 『Windows Emb...
Blender 2.8がついに正式リリース!
hloc:SuperGlueで精度を向上させたSfM・Vis...
SculptrisとBlenderで作ったGodzilla ...
成果を待てない長学歴化の時代
Konashiを買った
SIGGRAPH 2020はオンライン開催
書籍『ジョージ・ルーカスのSFX工房』
映画『ドラゴンボール超 ブロリー』を観た (ややネタバレ)
Math Inspector:科学計算向けビジュアルプログラ...
機械学習手法『Random Forest』
ハリウッド版「GAIKING」パイロット映像
ZBrushでアヴァン・ガメラを作ってみる おでこ(?)のバ...
書籍『メモの魔力』読了
ZBrushのUV MasterでUV展開
Gource:バージョン管理の履歴を可視化するツール
Super Resolution:OpenCVの超解像処理モ...
ZBrushで仮面ライダー3号を造る 仮面編 失敗のリカバー
トランスフォーマーロストエイジのメイキング
映画『ハン・ソロ/スター・ウォーズ・ストーリー』を観た (ネ...
NeRF (Neural Radiance Fields):...
Ambient Occlusionを解析的に求める
Unity ARKitプラグインサンプルのドキュメントを読む
NumSharp:C#で使えるNumPyライクな数値計算ライ...
ラクガキの立体化 背中の作り込み・手首の移植
iPhone・iPod touchで動作する知育ロボット『R...
2020年9月 振り返り
仮想関数
ZBrushでリメッシュとディティールの転送
Google XML Sitemap Generatorプラ...
OpenGV:画像からカメラの3次元位置・姿勢を推定するライ...
ZBrushで仮面ライダー3号を造る 仮面編 横顔のシルエッ...
OpenCVのfindEssentialMat関数を使ったサ...
OpenCV 3.1のsfmモジュールを試す
UnityプロジェクトをGitHubで管理する
Mitsuba 3:オープンソースの研究向けレンダラ
Mitsuba 2:オープンソースの物理ベースレンダラ
レンダラ制作はOpenGL とか DirectX を使わなく...


コメント