ゲームプログラミング 関数分割
Posted: 2013年7月27日(土) 23:21
今日連続の質問になってしまいますが
無礼を承知で質問させていただきます
私、C言語初心者でございます
さきほど、こちらのサイトの龍神録の館を少しだけ読ませていただいたのですが
ファイルを分割し、様々な機能を散り散りに置いて、プログラム全体を把握しやすくするとありました
こちらのサイトで使われている変数はすべてグローバル変数のようでしたが
これをローカル変数に置き換えようとしたところで疑問に思ったことがあります
ゲームの描画処理をすべて一つの関数に任せようと思ったとき、
当然、敵やプレイヤーキャラやステージの情報をこの描画関数に渡す必要があるのですが
その描画関数に情報を渡す仕事をする関数を
一々、それぞれの計算用関数と別途に用意しなくてはいけないのでしょうか?
例えば、
プレイヤーキャラでいえば「プレイヤーキャラの計算用関数」と「プレイヤーキャラの情報を描画関数に渡す関数」
敵キャラでいえば「敵キャラの計算用関数」と「敵キャラの情報を描画関数に渡す関数」
ステージでいえば「ステージの計算用関数」と「ステージの情報を描画関数に渡す関数」
このようにわざわざ全ての種類のオブジェクトに描画関数に情報を渡す関数を作ってやる必要があるのでしょうか
それともなにか思い違いをしていますかね
よろしければご回答よろしくお願いいたします
無礼を承知で質問させていただきます
私、C言語初心者でございます
さきほど、こちらのサイトの龍神録の館を少しだけ読ませていただいたのですが
ファイルを分割し、様々な機能を散り散りに置いて、プログラム全体を把握しやすくするとありました
こちらのサイトで使われている変数はすべてグローバル変数のようでしたが
これをローカル変数に置き換えようとしたところで疑問に思ったことがあります
ゲームの描画処理をすべて一つの関数に任せようと思ったとき、
当然、敵やプレイヤーキャラやステージの情報をこの描画関数に渡す必要があるのですが
その描画関数に情報を渡す仕事をする関数を
一々、それぞれの計算用関数と別途に用意しなくてはいけないのでしょうか?
例えば、
プレイヤーキャラでいえば「プレイヤーキャラの計算用関数」と「プレイヤーキャラの情報を描画関数に渡す関数」
敵キャラでいえば「敵キャラの計算用関数」と「敵キャラの情報を描画関数に渡す関数」
ステージでいえば「ステージの計算用関数」と「ステージの情報を描画関数に渡す関数」
このようにわざわざ全ての種類のオブジェクトに描画関数に情報を渡す関数を作ってやる必要があるのでしょうか
それともなにか思い違いをしていますかね
よろしければご回答よろしくお願いいたします