トップページ > 過去ログ > 記事閲覧
LoadGraphで8bit画像として読み込み
名前:mxs 日時: 2010/11/14 00:24

LoadGraph関数で4096*4096のサイズの8bit bmp画像を読み込むと、 タスクマネージャで見たところメモリを100MB近く消費しているようです たぶん、フルカラー32bitの画像として読み込んで 4096^2(画像サイズ) * 4(32bit) = 67,108,864 で67MBを消費するんだと思います(残りは実行ファイル本体の何かで消費) パレットを読み込んで、それに対応する画像を読み込めば、 4096^2(画像サイズ) * 1(8bit) = 16,777,216で17MBになるはずです 2DSTGを作っているもので、特にメモリの消費を気にしているのですが、 8bitの画像として読み込むことは無理なのでしょうか? 回答よろしくお願いします

Page: 1 |

Re: LoadGraphで8bit画像として読み込み ( No.1 )
名前:Will 日時:2010/11/14 09:53

たしか画像のロードはSetGraphModeでColorBitNumで指定されたビット数でメモリ確保されるんだったと思います。 現在は16bitと32bitにしか対応していなので、8bitは無理しょうね。 ちなみに計算間違ってますよ。 1KB=1024B, 1MB=1024KBなので67,108,864Bは64MBです。
Re: LoadGraphで8bit画像として読み込み ( No.2 )
名前:mxs 日時:2010/11/14 10:51

8bitの対応は無理なんですか・・・ 16bitで妥協してみます・・・単純に2分の1になりそうですし 計算の間違いの指摘ありがとうございます 4096*4096の画像はWindowsのプロパティで見ると 16384KBでしたので完全に計算間違っていますよね 回答ありがとうございました
Re: LoadGraphで8bit画像として読み込み ( No.3 )
名前:いっち 日時:2010/11/21 17:46

URLが貼り付けにくいのでこちらに書き込みます。 パレットに関する過去のスレッドです(古い記事ですが)。 > ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=view&no=889 DirectXでパレットを扱うこと自体が非推奨というのをどこかで読んだ気がします。 (あいまいな伝聞ですみません)
Re: LoadGraphで8bit画像として読み込み ( No.4 )
名前:mxs 日時:2010/11/22 00:17

回答ありがとうございます どうやらリアルタイムに選択するパレットの変更は不可能なようですね・・・ DirectXを学んで自力で機能を実装するしかないのでしょうか・・・

Page: 1 |