ページ 11

画像の透過処理

Posted: 2008年11月17日(月) 17:42
by えっと
龍神録のProjectフォルダの中にある画像はどれも周りが黒く塗りつぶされていないのに、どうして描画したときに透過されるのですか?
試しにDrawGraph関数の第四引数をFALSEにしてみると、キャラ等の周りが2色くらいで塗られています。
それは何のために行うのですか?黒で塗りつぶさず、そうすることで何か利点があるのですか?
そしてProjectフォルダのimgフォルダを開いたとき(あるいはペイントソフトでその画像を開いたとき)に、キャラクターの周りが塗られていないように見えるのはなぜですか?
ゲームプログラミングの館4.にちょこっと書いてあった、「予め画像に透過処理をしてある部分」というのと何か関係があるのでしょうか?

Re:画像の透過処理

Posted: 2008年11月17日(月) 17:53
by Mist
PNGという種類の画像フォーマットを使用しているためです。
詳しくは下記のページか、PNGでググってください。

http://ja.wikipedia.org/wiki/Portable_Network_Graphics

Re:画像の透過処理

Posted: 2008年11月17日(月) 20:26
by Justy

>どうして描画したときに透過されるのですか?

 その画像には通常のカラー構成である R/G/Bの3つのチャンネルの他に
透明度を表す A(アルファ)のチャンネルが含まれているからです。



>imgフォルダを開いたとき(あるいはペイントソフトでその画像を開いたとき)に、
>キャラクターの周りが塗られていないように見えるのはなぜですか?

 imgフォルダを開いたときというのはよくわかりませんが、
そのペイントソフトがアルファチャンネルに対応していないからでしょう。

 対応したソフトを使えば、その部分が透明になっていることが確認できます。



>、「予め画像に透過処理をしてある部分」というのと何か関係があるのでしょうか?

 まさにそれです。

Re:画像の透過処理

Posted: 2008年11月17日(月) 20:33
by Dixq (管理人)
PNG画像には透過色が指定出来ることは既に回答に上がっていますね。


>それは何のために行うのですか?黒で塗りつぶさず、そうすることで何か利点があるのですか?

黒で表現した透過では表現出来ないことがあるのです。
例えば、「うっすら透けている」という表現を透過色黒のみで出来るかというと無理ですね。
レーザーのようにまわりがぼんやり透けている画像などはこの透過色を使うと簡単に表現出来るのです。

Re:画像の透過処理

Posted: 2008年11月18日(火) 01:04
by えっと
ありがとうございます!解決しました。
画像に透過処理を施せるフリーソフトを色々探してみたんですが、透過率まで設定できるものは結構少ないみたいですね。

Re:画像の透過処理

Posted: 2008年11月18日(火) 01:26
by 紅葉
30日程度しか使わないのでしたらPhotoShopCS3などの体験版で何とかなると思います。

シェアで良いのでしたら
Corel Paint Shop Pro Photo XI
がお勧めです。
6000円程度しますがフォーマットもいろいろ対応しているのと
画像を透過の他にもレイヤー管理などもでき便利です。

Re:画像の透過処理

Posted: 2008年11月18日(火) 01:39
by えっと
紹介していただき、ありがとうございます。
購入を検討してみようと思います。

Re:画像の透過処理

Posted: 2008年11月18日(火) 02:09
by Justy
 GIMP2もなかなかのものですよ。

GIMP - The GNU Image Manipulation Program
ttp://www.gimp.org/
ttp://www.geocities.jp/gimproject/gimp2.0.html

 もしよければお試し下さい。