始めに
透過pngを重ねて描画したいときに気づくまでに相当の時間かかってしまったので残しておく。
発生した問題
この円を連続で出してみる。色は少し加工してある
画像の円以外の透過されている部分が後ろの画像にかぶさってしまい後ろの画像が隠れてしまっていることがわかる。透過されている部分は後ろと重なり合って欲しい。
原因
原因は2つだった。
ofEnableDepthTest();
ofSetVerticalSync(bool);
の2つ。
ofEnableDepthTest()
深度テストを有効にする関数。3Dの立体の場合にありえない重なりになるのを防ぐ(つまり深度関係を明確にする関数)なのだが、これを加えた状態で透過pngを描画すると透過部分が上手く働いてくれなくなるみたいだ。僕はこれをこれを入れていたがばかりに思ったように描画してくれなかったようだ。
でちゃんとしたのがこちら。
透過部分が重なっている部分に影響を与えなくなったことが確認できた。これをやりたかったんだよ。
これに気づくまでにかなりの時間を有したが、振り返ると馬鹿みたいである...