2009-05-23
立ち絵を表示するよ!
【せんせい】
この、背景に重ねて表示する人物画像のことを、立ち絵とか言いますです。
今日は、めんどーが無いよう、背景と同じサイズの画像に、一人だけ人物を表示する立ち絵を用意しました。
【でし】
でも、わかってきましたよ。
昨日背景を表示した表画面の上に、さらにこの立ち絵を重ねるんですね?
【せんせい】
そのとーりです。もちろん重ねるときには、人物以外の部分を透過するのを忘れずに。
【でし】
以前やられまくった画像合成ですね!
【せんせい】
画像合成改を使います(きっぱり)
ちなみに少々改造しました。といっても、透過色を0,0以外のところからも取得できるように、引数を追加しただけですが。
立ち絵だと、そんなことあまりないでしょうが、たとえば窓枠の中を抜きたいとか、あるでしょ?
もちろん省略すれば、0,0になるので、今までどおりに使えます。
というわけで、こんな感じ。
#-----母艦設計----------------------------------------------- !母艦設計=「母艦の可視はオフ」 母艦のタイトルは「アドベンチャー」 母艦を$000000で画面クリア。 母艦のスタイルは「枠固定」 母艦はオフに最大化ボタン有効変更。 母艦のクライアント幅は640。母艦のクライアント高さは480。 母艦を中央移動 母艦の可視はオン。 #------------------------------------------------------------ #-----宣言--------------------------------------------------- 裏_背景とはイメージ。その可視はオフ。 裏_背景の幅は640。裏_背景の高さは480。 裏_立ち絵とはイメージ。その可視はオフ。 表画面とはイメージ。その可視はオン。 表画面の幅は母艦のクライアント幅。表画面の高さは母艦のクライアント高さ。 表画面のXは0。表画面のYは0。 #------------------------------------------------------------ #-----背景を表示--------------------------------------------- 裏_背景の画像は「背景1.jpg」 裏_背景を表画面の0,0へ画像コピー。 #------------------------------------------------------------ #-----立ち絵を表示------------------------------------------- 裏_立ち絵の画像は「NAKO.bmp」 裏_立ち絵を表画面の0,0へ画像合成改。 #------------------------------------------------------------ #------------------------------------------------------------ # 関数 #------------------------------------------------------------ ●画像合成改({グループ=?}Sを{数値=0}X,{数値=0}Yで{グループ=?}DのX2,Y2へ) Cとは整数 //マスク画像はSの透過色を黒色、それ以外を白色にしたもの マスク画像をイメージとして作成 マスク画像→可視はオフ マスク画像→画像はS→名前 マスク画像のX,Yを画像色取得してCに代入 マスク画像をCで画像マスク作成 //ソース画像はSの透明色を黒色に変換したもの ソース画像をイメージとして作成 ソース画像→可視はオフ ソース画像→画像はS→名前 マスク画像を画像ネガポジ マスク画像をソース画像の0,0へ画像ANDコピー マスク画像を画像ネガポジ //合成実行 マスク画像をDのX2,Y2へ画像ANDコピー ソース画像をDのX2,Y2へ画像ORコピー マスク画像→壊す ソース画像→壊す #------------------------------------------------------------
コメントを書く
トラックバック - http://nadesiko.g.hatena.ne.jp/snowdrops89/20090523