計算幾何学
計算幾何学
昔、GFXというミドルウェアを使っていたのだが、Flashで作ったコンテンツをゲーム上で動かせるように…だけならそこまで珍しくもないだろうけど、そのハイレベルのテクニックによってハイスピードにFlashコンテンツを再生することができる。再生というのはムービーダダ流しでもなくGPUを効果的に使うことができる。
ありがたいことにソースコードも見ることができたが、非常にハイレベルだった。
悲しいことに、読んだときの俺のレベルでは解読不能であったため、猫に小判ではあった。
まぁ、僕が感動したのはそんなところでもなんでもなくて、フォントがあるじゃないですか、アウトラインフォント。
これをですね、ソフトウェア的に三角形分割してるんですよねぇ。アウトラインって結局ベジェなんで、
今の僕の技術でもできないわけじゃない。だけど、変にそこに感動した。
感動したので、計算幾何学とか勉強したし、したけど、チンプンカンプンで何回も投げ出したけど…。
結局ボロノイとか、ドロネー図に行っちゃったから難しくなってしまったのだと約10ヵ月後に気づいた。
これって、結局、ベジェをどうこう以前に、多角形の三角形分割なんだよね。ベジェを多角形に近似するのは
コンピュータがやってくれるので、それで得た頂点に対して、三角形分割を考えてやればいい。
多角形の三角形分割だけなら、コンピュータ・ジオメトリの中でも比較的簡単な問題である。
ただし、面倒なのは、凸多角形とは限らず、凹かもしれないし、穴あき(RとかAとか)かもしれない。
これもコンピュータ・ジオメトリに書いてあった。
現在ゆっくり実装中。
感動しているのは、あの、自分に実装できると思ってもなかった機能がいま、手の届く範囲にあるということだ。
30も半ばになってこれだ。これだからプログラマはやめられない。