Re: 要望?)pngやjpgをメモリに読み込む等 ( No.1 ) |
- 名前:ギウ 日時:2021/11/21 08:45
(最初の書き込み、少し修正しました)
|
Re: 要望?)pngやjpgをメモリに読み込む等 ( No.2 ) |
- 名前:管理人 日時:2021/11/23 07:12
> pngやjpg画像を、VRAMではなく直接通常のメモリに展開する関数はあるでしょうか。
はい、LoadSoftImage で読み込まれた画像はVRAMではなく通常のメモリに読み込まれます
// 画像ファイルを読み込みソフトウエアイメージハンドルを作成する
// 戻り値 -1:エラー -1以外:イメージハンドル )
int LoadSoftImage( char *FileName ) ;
> メモリ(読み込み済み画像ファイルの先頭アドレス)→メモリ(RGBAの配列)&画像サイズなどを取得
> というのがあると嬉しいです。
リファレンスに載っていませんが、GetImageAddressSoftImage という関数で画像データの
先頭アドレスを取得することが出来ます
// ソフトウエアイメージハンドルの画像が格納されているメモリ領域の先頭アドレスを取得する
void *GetImageAddressSoftImage( int SIHandle ) ;
画像のサイズは GetSoftImageSize で取得することができます
// ソフトウエアイメージハンドルのサイズを取得する
int GetSoftImageSize( int SIHandle, int *Width, int *Height ) ;
よろしければお試しください m(_ _)m
|
Re: 要望?)pngやjpgをメモリに読み込む等 ( No.3 ) |
- 名前:ギウ 日時:2021/11/23 11:28
ご回答ありがとうございます!
なるほどです。ファイルからはその関数でいけますね。
あと、独自の圧縮ファイルからメモリにpng等をまるごとLOADし、それをRGBA配列に変換することもあるのですが、その場合は
LoadARGB8ColorSoftImageToMem
これを使うのが良いでしょうか。(念のため確認)
LoadSoftImageToMem こっちだと256色のpngの時に面倒になる感じですね(?)
便利でありがたいです!
|
Re: 要望?)pngやjpgをメモリに読み込む等 ( No.4 ) |
- 名前:管理人 日時:2021/11/24 21:37
> あと、独自の圧縮ファイルからメモリにpng等をまるごとLOADし、それをRGBA配列に変換することもあるのですが、その場合は
>
> LoadARGB8ColorSoftImageToMem
>
> これを使うのが良いでしょうか。(念のため確認)
はい、その通りです
ライブラリ内部で LoadSoftImage で画像を読み込み、読み込んだ画像が ARGB( バイト順では BGRA )ではなかったら
ARGB に変換する、ということをしています
|
Re: 要望?)pngやjpgをメモリに読み込む等 ( No.5 ) |
- 名前:ギウ(解決) 日時:2021/11/25 09:15
ありがとうございます! 了解です!
|