物凄い勢いで誰かが質問に答えるスレ@ゲーム製作技術
■ このスレッドは過去ログ倉庫に格納されています
0300名前は開発中のものです。
02/08/03 16:21ID:H5P3RmVAclass MAIN{//メインウインドウのプロシジャふくむ。
}
このようにゲームのメインを担当するクラスがあります。
このなかにはSystemManagerやらGraphicsManagerやらゲームに関するいろいろなクラスがあるのですが、
たとえばSpriteManagerというゲェム中にでてくるキャラクタを管理するクラスがあったとします。
そしてその中にはSpriteクラスをvectorで保持しているメンバがあります。
SpriteクラスにはDrawという自身を描画するメンバ関数があります。
このSpriteのDrawメソッドはSpriteManagerにあるDrawメソッドからvectorのsize()によってforループで順に呼び出されます。
そして、Drawの引数にはGraphicsManagerへのポインタが必要です。
このGraphicsManagerなんですが・・・
GraphicsManager g
void foo(){
SpriteManager->Draw(g)
}
↓
SpriteManager::Draw(GraphicsManager* g){ ↓
for(int i=0;i<v.size();i++)
{
Sprite[i]->Draw(GraphicsManager)
}
}
のように2回引数として渡されるのですが、これがベストな方法なのでしょうか。速度に影響はありませんか?
GraphicsManager以外にも、SystemManagerのメンバ関数が必要だったりします。
もっとスマートな方法があったら教えてください。
■ このスレッドは過去ログ倉庫に格納されています