ゲーム作ってるunityだけど質問があります
■ このスレッドは過去ログ倉庫に格納されています
マイクラのブロック拾った時の仕組みってどういうプログラムなん?
https://imgur.com/oz6Za9o.jpg
左みたいな感じ?
それとも1つのアイテムにつき1種類の関数用意する右みたいな感じなんだろうか?
左は関数一つで色々対応できるから便利そうだけど組み方がわからない
右の場合アイテムの種類数だけ関数用意する必要があるけど自分でも組めそう まぁ別にマイクラじゃなくてもいいんだけど
一般的にはどういうプログラム組むのかなっていうのを教えて欲しいー 知らんけどアイテム毎にID振ってあってそれに合わせて表示してるんじゃないの 基底クラスに右の取得処理あって全てのブロックが継承してんじゃない知らんけど え右なの?
右だったら自分もできそうだからうれしいけど
アイテムの種類が3桁とかなると大変なことになりそうだけど ( ´'ω'` )右の方がぐちゃぐちゃになって楽しいですよ 分かりにくいけど変数じゃなくて関数の話だな
つまりアイテム1個ずつ関数を山のように作るのか?と言う話
んな非効率なコピペする訳ないよ なんか右のほうが有り得そうな気がしてきた
まあ答えは実際のコード見ないとわからないけど ( ´'ω'` )こうです
GET(item){item+=1;unko+=1;} 何が手に入ったのか調べなくブロックが手に入ったのかは自明なのでそれを増やしてるだけ
その前の段階は位置や向きや押したボタンでブロックを拾うかリンゴを拾うかジャンプするかどうかの判定がある
ゲームなんて1ミリも作ったことないけど ( ´'ω'` )座標にアイテム置いて判定すればいいでしょ Unityならそもそもブロック側にスクリプトも必要でしょ
そこからアイテム指定してItemGet()に送るんだから
その間に関数なんて意味ないでしょ よくわからんけど、オブジェクトが多いゲームでそれぞれに関数持たせるのは重くないか?
俺ならタグやオブジェクト名で判断する ■ このスレッドは過去ログ倉庫に格納されています