ページ 1 / 1
描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 10:02
by Sigma
初めましてです。
早速なんですけれども、一度描画された画面を更に変形させる方法が思いつかずに悩んでいます。
どういうことかといいますと、
背景1 ー
背景2 ー →描画→描画結果 ー ⇐これを更に潰したり歪みエフェクトなり付けたいんです。
背景3 ー
photoshopでいえばフォルダみたいな感覚でやりたいのですが…
どうすればいいでしょうか。
検索でもどういうワードでやればいいか分からず行き当たりばったりで探してましたが、
良さ気な記事が見つからず…
ちなみにC++でDXライブラリを利用してやろうと思っています。
要は東方の地霊殿以降にあったボス周りの歪みエフェクトを再現したいです。
Re: 描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 10:08
by softya(ソフト屋)
ごめんなさい。さっぱり説明がわかりません。
「photoshopでいえばフォルダ」もphotoshopに詳しくないので意味がわかりません。
背景1 ー
背景2 ー →描画→描画結果 ー ⇐これを更に潰したり歪みエフェクトなり付けたいんです。
背景3 ー
ここだけ見ると2レーヤー目だけ変形させたいようにも見えます。
あと開発環境や言語、使用ライブラリも明確にして頂けますか?
あっ書いてありましたね。失礼しました。
[追記]
>要は東方の地霊殿以降にあったボス周りの歪みエフェクトを再現したいです。
ごめんなさい。そちらも分かりません。
動画リンク等をお願いします。
Re: 描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 10:21
by 沖 滉均
Sigma さんが書きました:photoshopでいえばフォルダみたいな感覚でやりたいのですが…
説明がいまいちわかりませんが、エフェクトをつけたりしたいとのことなのでフォルダではなくフィルタなのではないかと…
Re: 描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 10:51
by Sigma
えっと、フィルタじゃなくてフォルダで大丈夫です。
複数のレイヤーを1枚にまとめたレイヤー(フォルダ)にして
この状態で1枚のレイヤーとして自由変形したいといった意味だったので。
描画結果を更に1つの「
テクスチャ」として扱えれば東方の歪みエフェクトとか
最新作ラスボスのような3D回転する(というか前後にパタパタする)オブジェクトをカメラの干渉なしにできるので…
一応動画をということなので。
前者の歪み(ボス周りのもやもやとしたやつです)
[nico]
http://www.nicovideo.jp/watch/sm15382463[/nico]1:55~・5:08~。
背景が変わってももやもやが継続してるので
おそらくは背景の描画結果をテクスチャとして扱って更に変形させてるのかと…
後者の3D展開オブジェクト
最新作故一応ネタバレ注意で
[nico]
http://www.nicovideo.jp/watch/sm15295887[/nico]8:22あたりで充電エフェクト後にボスの背後に展開されるでかい3枚葉っぱです
Re: 描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 11:09
by softya(ソフト屋)
これは、マルチパスレンダリングやシェーダ的な手法ですね。
マルチパスレンダリング
「オフスクリーンレンダリングはできますか?」
http://hpcgi2.nifty.com/natupaji/bbs/pa ... ew&no=1547
DXライブラリでのピクセルシェーダの使い方はこちら。
「自作シェーダの使用について」
http://hpcgi2.nifty.com/natupaji/bbs/pa ... ew&no=1643
ピクセルシェーダは別に勉強してください。
この2つを組み合わせれば出来ると思います。
ピクセルシェーダは使わなくても力技でできるかも知れませんが遅そうです。
[補記]
東方神霊廟には動作環境にシェーダ関係の記述がないので力技?
Re: 描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 11:17
by Sigma
おー、マルチパスレンダリングまさにやりたいと思ってた通りのやり方です。
これで展開オブジェクトも歪みもできそうです。
ありがとうございました!
Re: 描画された画面を更に変形する方法
Posted: 2011年9月13日(火) 11:21
by softya(ソフト屋)
歪ませ方でもう一つ思い出しました。
複数のメッシュで構成されたポリゴン板に絵を貼り付けてUVを使って歪ませる方法です。
[追記]
解決したら、解決ボタンをお願いしますね。