掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.26328

ゲームの透明処理
投稿者---このマ(2006/03/03 17:19:36)


今、WindowsAPIを利用しゲームを作っています。
しかし、WindowsAPIの中には1つ1つのピクセルに透明どの情報を埋め込む事が出来ないようですが、1つ1つのピクセルに透明度を設定したいです。
それで、setDIBitsと言う関数を見つけました。
でも、その関数をどうやって使ったら良いのか分かりません。
しらべてみると、高度な関数らしいですが教えてもらえませんか。
お願いします。m(_ _)m


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:ゲームの透明処理 26329 wis 2006/03/05 16:18:29


No.26329

Re:ゲームの透明処理
投稿者---wis(2006/03/05 16:18:29)


透明度の情報は色情報として格納される場合があります。
基本的には ARGB の度数を DWORD 型32Bitのビット列で表し
それぞれの度数を0-255で表したものになります。(A8R8G8B8の場合)
ただしピクセルには確かにα値(透過情報)があるものもありますが、
含まないものも存在します (XRGBなどがこれに該当します)ので
注意してください。

>しかし、WindowsAPIの中には1つ1つのピクセルに透明どの情報を埋め込む事が出来ないようですが、1つ1つのピクセルに透明度を設定したいです。

上記で書いたとおり、色情報は全て32Bitのビット列で設定されます。
1つのピクセルの情報が分かれば、後はαを設定してもう一度セットしなおすだけでいいはずです。WinAPIにGetPixel・SetPixelなどがあります。
こちらのほうがピクセルのみを扱うには簡単でしょう。
(ただしデバイスが対応してないとだめですがこれも調べるAPIがあります)

#ゲームってことですが、恐らく処理速度的にかなりシビアだと思います
#まずは透明処理がどの様にして行われているかを学んだほうがいいようです。



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧