09/07/31 23:29:23 CaPJ3ISI0
>>407
度々レス遅れてすいません。一部解せない部分があったのでそれについてレスを。
他は>>407に書いた通りでよいと思います。「ProAnimatorや3D INVIGORATOR」のような感じ
についてはよく分かりませんでしたが・・
After Effectsは5万円以上するみたいですがそんな大金手にしたことはありません・・。
カメラやライトを共通にするのはいいと思います。プラグインごとにカメラがバラバラだと使いにくいので。
>2-4のような要望をしたのは、GPUとCPU間の転送によるボトルネックを解消し
負荷がそこそこのエフェクトもGLSL化すれば、OpenGLやDirectXレンダラでリアルタイムレンダリングが
可能になるのでは、と思ったからです。無ければ自分で作るしか。
それだけのためにこれらの処理を追加するのは、というのも分かりますが・・。
>2-4
まず画像データとサイズ以外に何も格納しないで出来るか・・を考えてみましたが、無理そうです・・・orz
「エフェクトを管理するクラスで判別」というのは、Bitmapに対応するテクスチャを連想配列に登録しておくという
事なんでしょうか。でもそうなると、エフェクト終了時にBitmapに変換する代わりに連想配列に登録
する事になりそうですが、どこで登録を削除するとかの問題がありそうです。
やるならやはり画像にテクスチャを設定した方が・・
>DirectXのエフェクトが増えてきたからそっちも、となると、それこそ個別に対応する意味が無くなってきて
>しまいます。
テクスチャもインターフェイスや抽象クラスにしておけばDirectXレンダラが追加されたりしても本体の方で対応する必要は・・
(そう言う事を言っているのではないのでしょうか)
こんな感じのを想定していました。
●GLSL(HLSL)を使ったエフェクトの処理
○初期化時
画像入力用のテクスチャと画像出力用のレンダーターゲットのテクスチャを最低2枚作成
○エフェクト処理
画像にテクスチャが設定されているかチェックすると同時に
GLSLならOpenGL、HLSLならDirectX用テクスチャであることを確認する。
(DirectXのエフェクトとOpenGLのエフェクトを組み合わせたときに
取り違えないようにするため)
設定されていなければ↑で用意された入力用テクスチャに書き込む
画像処理、画像にテクスチャを設定して返す
●普通のエフェクトの処理
○エフェクト処理
画像にテクスチャが設定されていれば、テクスチャから転送する
テクスチャにnullを設定(対応するテクスチャは無いと設定)
(エフェクトの前処理でやるか、画像クラスのlock()が呼び出されたときに自動的にします)
前者だと既に作ったエフェクトのコードを「置換」で置換して回らないといけないかもしれないし
どっちにしても設計的には変かもしれません・・
後は普通に画像処理