- 424 名前:370 mailto:sage [2009/07/31(金) 23:29:23 ID: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()が呼び出されたときに自動的にします) 前者だと既に作ったエフェクトのコードを「置換」で置換して回らないといけないかもしれないし どっちにしても設計的には変かもしれません・・ 後は普通に画像処理
|

|