MNAの世界

ブログをリニューアルしました!コメント、リンク、ツイートなどはお気軽にどうぞ。

C/C++ 同人活動

PNGに対応

投稿日:2009年11月25日 更新日:

ついに新フレームワークでの動作を開始したZen-Ichiですが、フルカラー化&高解像度化の影響でロード時間がとてつもなく長くなってしまいました。
これではネオジオCDになってしまいます。
(ちなみに当方はROM版を所有していますw)

現代のPCにおいてボトルネックとなっているのはやはりHDD。
巨大なベタデータをバカ正直にロードしていたら時間かかりまくりです。

いい機会なので、libPNGを組み込んでみました。
libPNGもわかりやすいインターフェースなのであっさり実装完了。
ちなみにzlibはすでに従来のZen-Ichiで使用していますが、この機会に最新バージョンのソースでビルドしなおしました。

試しにゲームの画像をPNGに置き換えてみたところ、ロード時間が劇的に短縮されました!
やはり今時の「CPUの速度に比べてHDDのアクセスは非常に遅い」という構成ならもはやデコードの負荷など問題にはならず、読み出しサイズが小さくなることによる高速化の恩恵のみをバッチリ受けることができるようですね。

-C/C++, 同人活動
-


comment

リンクが多数含まれていると表示されないのでご注意ください。(スパム対策)

関連記事

no image

Ogg Vorbis に対応

新フレームワークのサウンド再生機能がほぼ出来上がってきたのでVorbisにも対応させてみました。 VorbisのAPIは非常にわかりやすくていい感じです。 しかもフレーム単位でのシークを標準でサポート… 続きを読む

コミックマーケット77 開催!

いつものように2日目の同人ソフトのほうで参加してきました! 当サークルはなぜか角に配置されていました! 見通しが良くていい感じかもw 今回は前回に引き続き、Zen-Ichi高解像度版を頒布していました… 続きを読む

no image

夏コミ2日目

どうにかCDも焼き終わったので、仮眠を取った後、親戚の集まりに参加。 昼食後にすぐ自宅に戻り、出発の準備。 こちらから搬入する荷物はプレス版Zen-Ichi100枚(1箱分)とお楽しみCD40枚。 こ… 続きを読む

no image

[C++]非staticなメンバ関数をコールバックで呼ぶ方法

!!!注意!!! これは思いついたことを試しにやってみたらそれっぽく動いたというお話です。 今はstd::functionとstd::bindが標準搭載されていますのでそちらを使いましょう。 現在、G… 続きを読む

no image

Zen-Ichiサントラ発売決定

今回の冬コミでは以前より要望が高かったサントラを販売します。 以前にも完全版では無いながらもサントラを出したことがありましたが、 今回はリベンジの意味も混めて、またもや延期となってしまいました MOO… 続きを読む