私はゲーム制作の真のスタートのためにシンプルな汎用エンジンを構築しています。そして、エンジンの制作において何らかの形で整理され、まともなものにしようとしています。つまり、私が横に投げるものにしたくないのです。計画したものを作ったら。
表示するオブジェクトを追加します。s、drawObject
これらは移動するか、移動しないか、アニメーションを作成するか、または作成しないかのいずれかです。
彼らがアニメーションを持っている場合、私は単一を初期化したいですanimationSet
、そしてこれはその中にanimationSet
xxxを持ってanimationComp
います。私はきちんとしようとしていて、メモリとCPU使用率の「最適化」(すでにロードされているイメージポインタの共有など、頭に浮かんだものは何でも)に取り組んできたので、配列で未使用のメモリを要求したくありませんでした。
そのため、最初は、追加したアニメーションが必要なオブジェクト、つまりアニメーションではないためメモリを使用していないオブジェクトに対してのみ、後でanimationSetS* animationSet = NULL;
実行することを計画していました(正しいですか?)。そして、この質問がポップアップしました!(タイトル)animationSet = animationSetS[spacesINEED];
NULL
struct animationComp {
SDL_Rect* clip;
int clipsize;
};
struct animationSetS {
animationComp* animation;
int currentFrame;
int currentAnimation;
int animationNumber;
};
struct drawObject { // Um objecto.
char* name;
SDL_Surface* surface;
bool draw = true;
float xPos;
float yPos;
bool willMove = false; // 0 - Won't move, 10 - Moves alot, TO IMPLEMENT
bool isSprite = false;
animationSetS* animationSet;
};
質問にたくさん手を出して、ごめんなさい。ここでの説明の返信については、次の10分以内に返信します...おそらく1時間ですか?以上。ありがとう!