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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0425
ww302jpPNGファイルの読み込みプラグインとメリットについて8解決


ww302jp

リンク

2009/4/25(Sat) 03:41:10|NO.24798

今ノベルゲームを作っていて、それに使う画像をPNGにしよと思っているのですが、
HSPでは通常開けません。
ですので、プラグインを使って画像の読み込みを行いたいのですが、
そのプラグインがいろいろあって悩んでます。
どのプラグインが良いと思いますか?

基本的に求める事はこの三つです
・PNGフォーマットの画像ファイルを読み込み・作成(できたら)できる。
・PNGの特殊機能(アルファチャンネル等)に対応している
・読み込み・作成が早い

また、PNGの他にBMPがありますが、どちらの方が良いのでしょうか?
それぞれのメリット・デメリットについて、
またゲームの特性上、複数の画像ファイルを一度に展開するので、
その上でどちらの形式が有用であるかも教えて下さい。

よろしくお願いします。



この記事に返信する


check

リンク

2009/4/25(Sat) 13:46:12|NO.24803

BMP
無圧縮の画像データ
無圧縮なのでとても容量が多いが、画像の品質を損なわずにすむ。

PNG
可逆圧縮の画像データ
圧縮されていて容量もまあまあ軽く、また可逆圧縮なので画像の品質も損なわない。
αチャンネルも使える。

たくさんの画像を使うノベルゲームとかを作るのならやはりPNGか。
JPGという手もある。



tumo0b

リンク

2009/4/25(Sat) 23:23:08|NO.24821

JPGを使う場合ははノイズはいることもありますから、気をつけてください



GENKI

リンク

2009/4/26(Sun) 01:02:47|NO.24827

> 今ノベルゲームを作っていて、それに使う画像をPNGにしよと思っているのですが、
> HSPでは通常開けません。

開くだけでいいのならmod_img.asのimgload命令が手軽に使えますのでお勧めします。
標準でついているモジュールなのでインクルードするだけで使えるようになります。

PNG出力できるプラグインについてはこちらを。
http://lhsp.s206.xrea.com/hsp_tips3.html#1

> ・PNGの特殊機能(アルファチャンネル等)に対応している

ゲーム中はgcopyで画像をやり取りすることになるので、
ファイル読み込み時にしか適用されないαチャンネルではなく、
「gmode 7」を使用するようにしたほうがいいと思います。
(でもデータ用意するのがめんどくさいのでmode 2に落ち着いたりですね。^ ^;)


さて、私からもファイル形式について説明を…。


JPEGファイル
不可逆圧縮なのでノイズや劣化が残ります。

> JPGを使う場合ははノイズはいることもありますから、気をつけてください

これはブロックノイズ・モスキートノイズと呼ばれ、JPEGなら確実に入るノイズです。原理上回避できません。
写真のような画像の場合はあまり目立ちませんが、セルアニメ調イラストの場合とても目立ちます。


PNGファイル
写真のような画像の場合は圧縮率はJPEGに劣りますが、セルアニメ調イラストの場合はPNGの方がファイルサイズは小さくなります。
可逆圧縮なのでノイズや劣化はありません。


BMPファイル
無圧縮なのでノイズや劣化はありません。
無圧縮なのでファイルサイズがとても大きいですが、読み込みにかかる時間が多少短くてすみます。
といっても、最近のパソコンはとても速いので気にする必要はないでしょう。PNGもJPEGも十分速いです。


JPEG2000
JPEGの進化形。JPEGに比べノイズが低減されているが、その分処理に時間がかかるらしい。
可逆圧縮も可能。
HSPではHSPCVプラグインで対応されている。



KA

リンク

2009/4/26(Sun) 17:36:19|NO.24842

>>また、PNGの他にBMPがありますが、どちらの方が良いのでしょうか?
>>それぞれのメリット・デメリットについて、
>>またゲームの特性上、複数の画像ファイルを一度に展開するので、

PNGはBMPの保存として使っていますが、意見としては、
 1:一度に展開?(最初に全て読み込む)→PNGが吉
 2:一度に展開?(必要なとき読み込む)→BMPが吉

どちらにしても読み込んでしまえば、メモリ使用量は同じ(と思う)ですから、
HDがカリカリ動く(BPM)か、CPUを使う(PNG)の選択に成ります。



ww302jp

リンク

2009/4/26(Sun) 21:15:23|NO.24846

>checkさん
そうなんですか。ありがとうございます。
参考にさせていただきます。

>tumo0bさん
ご指摘ありがとうございます。確かにそうですね。。

>GENKIさん
詳しく説明して頂きありがとうざいます。
参考にさせていただきます。

>KAさん
ほぉ…なるほど。。
一度に読み込みって言うのは、最初からすべての画像ファイルを展開(読み込み)すると言うことです。
ご意見ありがとうございます。参考にさせていただきます。

まとめると、
BMPは読み込み速度は速いがファイルサイズが大きい→一度に読み込みするとメモリが凄い事に??
PNGは読み込み速度は遅いがファイルサイズが少々少ない→一度に読み込んでもBMPほどメモリを消費しない
って事でしょうか?

みなさん回答していただきありがとうございました。



panda

リンク

2009/4/26(Sun) 21:57:57|NO.24853

プラグインや、利用用途によりますけど、
大抵の場合一旦ビットマップに変換してからメモリ上に保管されるみたいです…。

・一般的な画像処理
PNGロード→[コンバート]→DIBデータ
JPGロード→[コンバート]→DIBデータ
BMPロード→[コンバート]→DIBデータ

上で皆さんがおっしゃってるのは、上図の[コンバート]部分が高速化されるだけであって、
最終的に消費するメモリはあまり変わらないと思います。

頻繁にHDDから読み込みを行うなら、[コンバート]作業がほぼ皆無なBMPの方が良い
→メモリ使用量が少なくてすむ

最近のPCは早いので気にするほどでもありませんが・・・



GENKI

リンク

2009/4/26(Sun) 22:32:44|NO.24854

蛇足です。

> BMPは読み込み速度は速いがファイルサイズが大きい
> PNGは読み込み速度は遅いがファイルサイズが少々少ない

表現に引っかかるものが…もう少し適切に表現するなら、
 BMPは読み込み速度は速いが、ファイルサイズが無駄に馬鹿でかい。
 PNG/JPEGは読み込み速度は遅いが、ファイルサイズが小さい。
でしょうか。
どのくらい小さいかは画像によって違ってくるので、実際に使用する画像でPNG/JPEGで保存してみて確認してみてください。

…と書いてみましたが、ファイルサイズの問題は極端に大きくなければ気にする必要はないでしょう。ファイルサイズはゲームには関係ありませんし。



ww302jp

リンク

2009/4/26(Sun) 23:23:46|NO.24859

>pandaさん
へぇー…知らなかったです。。
そうなんですか。ありがとうございます。

>GENKIさん
蛇足ありがとうございます。
なるほど…「少々」では無いんですね^^
それにBMPは「馬鹿」でかいのですね(笑)
参考になりました。ありがとうございます。



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