HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0701
あっくんこんばんは5解決


あっくん

リンク

2010/7/1(Thu) 22:17:33|NO.33511

こんばんは、前回も質問をさせて頂いた者ですが。
アクションゲームを作成しているのですが
(まだ完成がほど遠いというような状態です)
キャラクターの周りの色だけを消す方法があるでしょうか
一度キャラの周りを黒にしてgmodeでキャラクターの周りの黒を消してみましたが
目の部分や髪の毛の部分が消えてしまい困っています
アドバイスお願いします。



この記事に返信する


ext

リンク

2010/7/1(Thu) 22:35:27|NO.33512

透過処理を行う部分と、行わない部分で色を区別するといいですよ。

例えば、目や髪などを透過させたくないのであれば、
ペイントを使って、
背景のR,G,Bのそれぞれの輝度を全て[0]で塗り、
目、髪などのR,G,Bの輝度のいずれかを[1]や[2]で塗るといいでしょう。



MillkeyWeler

リンク

2010/7/1(Thu) 22:37:55|NO.33513

gmode で行う透過色の指定は、黒だけかな?

↑の答えで、考えてみてね^^



SYAM

リンク

2010/7/1(Thu) 22:45:11|NO.33515

(1)透明にしたくない黒を、黒に近い色にする
 gmode 2 で透明になるのは、完全な黒 (赤0, 緑0, 青0)だけです。
 たとえば黒に近い青(赤0, 緑0, 青1)にしたら透明ではなくなりますが、それを青だと認識できる人間はそうそういません。いたら超すごいよ、そいつ!

(2)gmode 7 を使う
 gmode 7は、コピー元の右半分を「マスク」として、左半分をコピーするというものです。
 下のサンプルは、screen 0 で作った横長の画面のうち、左半分を screen 1 で作った画面にコピーしています。
 このとき、screen 0 で作った画面の右半分の白い部分と同じ形に、左半分を切り取ってくれます。


screen 0,128,64,0 : cls 4 pos 64,0 font msgothic, 64 color 255,255,255 mes "猫" color 255,0,0 boxf 0,0,64,64 screen 1,200,200,0 gmode 7 pos 16,16 gcopy 0,0,0,64,64 stop



木村

リンク

2010/7/1(Thu) 23:13:20|NO.33519

 Artlet2Dを御存知ですか?
http://sprocket.babyblue.jp/html/hsp_artlet2d.htm
 私もここの掲示板にてGENKI様より教えていただき、使わせていただいているのですが
PNG形式が利用できるので透明色を気にせずに画像を処理する事ができます。
 命令数は少し多めですが、ツクールのフリーデータ(透過色が黒や紫など多岐に渡る)の
処理に頭を悩ませずに済むなど便利ですので使ってみてはいかがでしょうか?


※補足:PNG形式  (A,R,G,B)の32Bitデータを扱う形式。(R,G,B)はHSPと同仕様、(A)は透過度(αブレンドと 呼ばれる事もあるらしい)の意味で0が完全な透明、255が完全な不透明を示す。  透明度がRGBに依存しないので透明色を気にせずに画像を利用できる。  また、隣のドットとの色合いの差が等差である際に強力な圧縮形式である為、ゲーム画像の 圧縮力が高い。24BMP形式の1.3倍近い情報量だが、保存時は大概BMP形式より軽くなる。  GIFやJPEGのように保存時にデータが劣化しないのも強み。



★追伸
 スレッドのお題を『こんばんわ』のような本題の分かり辛いタイトルにするのはやめた方が
良いかと。……まあ、『どの口がほざくかこの戯け!!』とは自分でも思いますけど……



あっくん

リンク

2010/7/2(Fri) 17:31:00|NO.33523

有力なアドバイスありがとうございました。そうですね タイトルは悪かったと思います
木村様 ソフトを紹介して頂きありがとうございます 出来る限り頑張りますが
これから質問する時があるかもしれませんので その時は宜しくお願いします。



ONION software Copyright 1997-2023(c) All rights reserved.