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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0215
リュウHSPの3.32のアップデートに関して7解決


リュウ

リンク

2014/2/15(Sat) 23:04:20|NO.60008

下記の文章の意味が分からず困っています。
このように説明がされているてことは何かが変わったってことですよね?
アルファチャンネルがどうこう書かれていますがpicload命令がどのように新しくなったのか
教えていただけないでしょうか。



読み込み可能画像フォーマットの追加について 標準で、PNG、TGA、PSD形式の画像を読み込むことが可能になりました。 (コンパクト版(hsp3c)ランタイムを除く) PNG形式 : 拡張子 PNG : Portable Network Graphicsデータ。 PSD形式 : 拡張子 PSD : Photoshop形式のデータ。(合成レイヤーのみ) TGA形式 : 拡張子 TGA : TARGA 形式のデータ。 ※従来通りのBMP、GIF、JPG、ICO形式もサポートされます。 ただし、インターレース形式のPNGファイルには標準では対応していません。PNGがサポートするすべての形式を読み込む場合は、imgloadまたはhspcvプラグインをご使用下さい。 PNG、TGA、PSD形式で透明色(アルファチャンネル)を含む画像を picload命令で読み込む場合、画像のアルファチャンネルが適用されます。 picload命令のモード1(現在の画面の上にロード)で読み込んだ場合、 アルファチャンネルを適用した状態で合成されることになります。 モード0(画面を初期化してロード)の場合は、通常通り白色の背景で 画面を初期化した上で、読み込みを行ないます。 HSP3.32では、新しくモード2(黒色で画面を初期化してロード)が追加 されています。これは、黒色の背景で画面を初期化した上で、 読み込みを行ないます。これにより、透明部分が黒色になりgcopy命令等で 黒色を透明としてコピーする場合に有効です。 また、celload命令での画像読み込み時は、常にモード2と同様に 黒色の背景で画面を初期化して読み込みを行なう動作となっています。



この記事に返信する


kanahiron

リンク

2014/2/15(Sat) 23:16:34|NO.60009

そもそもHSP3.32以前ではpngを読み込めませんでした
picloadは第二引数を省略あるいは0にすると、スクリーンを画像のサイズに変更した上で初期化し、画像を読み込みます
第二引数を1にするとスクリーンの初期化を省略して現在のスクリーンのカレントポジションに読み込みます
3.32で追加されたモード2(第二引数を2)は、モード0の黒背景版です



リュウ

リンク

2014/2/15(Sat) 23:19:58|NO.60010

>kanahironさん
なるほど〜そういうことだったんですね。
あと、もう一つ質問なんですが

画像のアルファチャンネルが適用されます
とはどういう意味なんでしょうか?



kanahiron

リンク

2014/2/15(Sat) 23:28:14|NO.60011

アルファチャンネルは画像の透明情報です
HSPではまともにアルファチャンネルを扱えませんが…
普通ピクセルの色情報はRGBで表しますが、アルファチャンネルの画像はRGBAで表します
まぁググってください
タブレットで文字打つの面倒k(ry



リュウ

リンク

2014/2/15(Sat) 23:43:47|NO.60013

>kanahironさん
調べてみたところ、Aというのはアルファ値で透明度の度合いを表すものなんですね。
知識が増えました。ありがとうございます。
それと、疑問に思ったのですが画像のアルファチャンネルが適用されるというのは
アルファチャンネル付の画像を扱えるということではないんですか?
kanahironさんはHSPではまともにアルファチャンネルが扱えないといいましたが
3.32で扱えるようになったんでしょうか?
何度も同じようなことを質問してしまって申し訳ありません。



kanahiron

リンク

2014/2/15(Sat) 23:56:20|NO.60014

まともに使えないと言ったのには理由があります
普通、アルファチャンネル対応と言うと、バッファーに読み込んだ画像にも透明度の情報が残っています
しかしHSPでは読み込むときにアルファチャンネル合成してくれるだけで、透明度の情報は残してくれません
なので例えば背景が透明の画像をモード0でバッファーに読み込み、
黒いスクリーンにgcopyしても背景が白くなってしまいます(黒+透明とはならずにバッファーに読み込んだ時点で透明が白になってしまっている)
元から黒いスクリーンにモード1で読み込んでしまえばいいのですが自由度が下がります
まあこれは工夫すればgmode 7で使えるんですがね

いかがでしょうか



kanahiron

リンク

2014/2/16(Sun) 00:02:08|NO.60015

あ スクリーンとかバッファーとか区別して書いているみたいですがpicloadの動作自体に違いはありません(念のため)



リュウ

リンク

2014/2/16(Sun) 00:09:40|NO.60016

>kanahironさん
なるほどです。
詳しく説明していただき
本当にありがとうございました!



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