1

それほど大きくはないかもしれませんが、100 フレームか何かです。配列を作成し、各画像を個別にロードすることによってロードする唯一の方法はありますか?

load_image() は、画像をロードして BPP を変換する関数です。

expl[0] = load_image( "explode1.gif" );
expl[1] = load_image( "explode2.gif" );
expl[2] = load_image( "explode3.gif" );
expl[3] = load_image( "explode4.gif" );
...
expl[99] = load_image( "explode100.gif" );

彼らはより良い方法であるべきだと思われる..少なくとも私は願っています。

4

3 に答える 3

1

一般的な手法はスプライト シートです。スプライト シートでは、1 つの大きな画像がセルのグリッドに分割され、各セルにはアニメーションの 1 フレームが含まれます。多くの場合、ゲーム エンティティのすべてのアニメーション フレームは、単一の、場合によっては巨大なスプライト シートに配置されます。

于 2009-06-12T17:13:04.027 に答える
1

グリッドとしてロードする代わりに、すべてのフレームを 1 つの垂直ストリップ (同じ画像) に積み重ねます。次に、フレームあたりの行数を知る必要があるだけで、フレーム行オフセットへのポインターを設定できます。連続したスキャン ラインを直接表示したり、個別の画像に分割したりすることができます。

于 2009-06-13T02:34:03.133 に答える