0

ユーザーが手動でテクスチャをロードできる小さなゲームアプリを作成しています。そのような例の1つは、52枚のカードの標準的なデッキです。

処理情報を次のように保存するのは悪いことでしょうか。

Card_79x123_53_53.png

ファイルダイアログからファイル名を取得したら、アンダースコアを分割して次の情報を取得します。

  • ObjectType:リストに一致
  • (w、h)
  • 予想されるオブジェクトの数(末尾に空きスペースがある場合)
  • もちろん、追加情報(この場合は上のNに対する下向きのテクスチャの位置)と画像の寸法が残りを提供します。

もちろん、処理中にエラーが発生すると、テクスチャをロードする試みは拒否されます。

これが悪い考えである理由はありますか、それとも私はそれをいじり続ける必要がありますか?

4

2 に答える 2

0

おそらく、ファイルダイアログに追加のコントロールを追加するか、ファイルダイアログが送信された後に別のダイアログを表示することによって、画像を明示的に処理する方法についてユーザーに尋ねたほうがよいでしょう。この場合、ファイル名から取得した情報をヒントとして使用して、これらの追加のコントロールに値を事前に入力できますが、ユーザーは、間違っているものを修正し、不足しているものを埋める機会があります。

于 2013-02-27T04:19:03.527 に答える
0

これが悪い考えである理由はありますか、それとも私はそれをいじり続ける必要がありますか?

これは基本的に、ファイル拡張子によるファイルタイプのエンコードに似ています。ファイル名にファイルメタデータをエンコードすることの唯一の悪い点は、スペースが非常に限られていることです。適切なPNGメタデータフィールドを使用した場合、または別のファイルで使用した場合は、はるかに豊富なメタデータをエンコードできます。ファイル名にメタデータをエンコードすることは、オプションのフィールドなどを使用して、新しいバージョンの新しいフィールドで拡張するのは困難です。

たとえば、各フレームのサイズが異なるその他のスプライトシートが必要な場合は、個々のフレームごとに位置、サイズ、クラス名、およびシリアル番号をエンコードする必要があります。

将来、他の多くのメタデータをエンコードしたくない限り、問題ありません。

于 2013-02-27T04:33:29.223 に答える