ページ 11

Siv3D画像のロード

Posted: 2015年8月23日(日) 21:38
by Aya
Siv3Dについてです

Texture texture
で画像をロードが可能ですが
大量の画像をロードする場合に構造体などで一括で管理したいのですがどのようにすればいいのかわからないです

typedef struct{

const Texture texture1; //
const Texture texture2; //
const Texture texture3; //

}FiledTexture;

のように構造体を作ったとして
FiledTexture filedtexture ;
と宣言したいのですがそのあと画像のロードの仕方がわからないです

よろしくお願いします

Re: Siv3D画像のロード

Posted: 2015年8月23日(日) 22:11
by みけCAT

コード:

FiledTexture filedtexture = {L"texture1.png", L"texture2.png", L"texture3.png"};
または

コード:

FiledTexture filedtexture = {Texture(L"texture1.png"), Texture(L"texture2.png"), Texture(L"texture3.png")};
でどうでしょうか?
※テストしていないので、間違っているかもしれません

Re: Siv3D画像のロード

Posted: 2015年8月23日(日) 22:30
by Aya
警告 4 warning C4610: struct '<unnamed-tag>' を初期化できません。ユーザー定義のコンストラクターが必要です。
と出てだめでした

Re: Siv3D画像のロード

Posted: 2015年8月23日(日) 22:34
by みけCAT
Aya さんが書きました:typedef struct{

const Texture texture1; //
const Texture texture2; //
const Texture texture3; //

}FiledTexture;

のように構造体を作ったとして
Aya さんが書きました:警告 4 warning C4610: struct '<unnamed-tag>' を初期化できません。ユーザー定義のコンストラクターが必要です。
と出てだめでした
その構造体の作り方では無理である気がします。
コンパイラの警告 (レベル 4) C4610

Re: Siv3D画像のロード

Posted: 2015年8月23日(日) 22:53
by Aya
画像をまとめて管理できる案はないでしょうか?

Re: Siv3D画像のロード

Posted: 2015年8月23日(日) 23:03
by みけCAT
Aya さんが書きました:画像をまとめて管理できる案はないでしょうか?
構造体か配列、もしくはその両方を用いるといいのではないでしょうか?
std::mapなどを用いるのもいいかもしれません(できるかどうかはわかりませんが)。