- ベストアンサー
プログラミング上達のためのお題・中規模のもの
- プログラミング学習のために中規模のプログラムを作成するお題を求めます。ゲーム制作に興味があり、弾幕シューティングゲームを作りたいと考えています。しかし、敵の移動指定や敵弾の発射タイミングなどの情報入力が難しいと感じ、ツールの作成を考えています。プロジェクトユーラーやAOJでの練習はしていますが、自分で中規模のコードを書いた経験が少ないため、それを補えるようなお題を希望します。
- プログラミング初心者が中規模のプログラムを作成するためのお題を求めます。弾幕シューティングゲームを作りたいと考えていますが、敵の動きや弾の発射タイミングなどの情報入力が難しいと感じ、ツール作成に興味があります。プロジェクトユーラーやAOJでの練習はしていますが、自分で中規模のコードを書く経験が少ないため、それを補えるお題を探しています。
- プログラミング学習のために中規模のプログラムのお題を探しています。特に弾幕シューティングゲームを作りたいと思っており、敵の移動や弾の発射タイミングなどの情報入力が難しいと感じています。そのため、ツール作成に取り組んでいますが、自分で中規模のコードを書いた経験が少ないため、経験を積むことができるお題を希望します。プロジェクトユーラーやAOJでの練習はしていますが、それだけでは物足りないと感じています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
お題ですか…。質問者の技倆がいかほどのものか判らないと、お答えするのが難しい質問です。例えば中級者に対して入門者向けのお題を提示しても、んなことはとっくに解ってるよ、って怒られてしまいますし。 シューティングゲームに的を絞って、初歩から順を追うとするならば、70年代にブームになった、「インベーダーゲーム」がスタートラインになると思います。こんな単純なゲームでも、入力読み取り、移動処理、当たり判定、オブジェクト管理、プログラムの構造化など、様々な基本技能を学ぶ事ができます。入門者・初級者にはまず、「シンプルなインベーダーゲームを作ってみよう」といったお題が良いと思います。 次に取り組むのは、その発展型で、スターソルジャーやグラディウスやツインビーなどに見られる、スクロールやオプション要素の追加です。中級者向けのお題としては、「グラディウスっぽいゲームをゼロから自分一人で作ってみよう」みたいな感じで、過去の名作を模倣するのが良いと思います。 もっとも、最近のゲームは、グラフィック面などの演出が凄いですから、演出重視で考えた方が、世間的には「うける」のかも知れませんが。 また、シューティングゲームとは違いますが、ワープロソフトや、キャラクタデザインエディタなどを作ってみる、というのも、プログラムの勉強になり、お勧めできます。私もスプライトエディタを自分で作って使っていた思い出があります。
その他の回答 (1)
ゲーム作りたくてプログラミング学んでいるのなら、 『プログラムの勉強のため』のプログラムなど回り くどいことをせずに、ゲームプログラムの勉強を すべきかと思います。 世の中ゲームプログラムの良書が中・上級者向けの ものまで出てますので、教本には事欠きません。 http://www.amazon.co.jp/dp/4798021180/?tag=hatena_st1-22&ascsubtag=d-4a04 なお、シューティングゲームの基幹となるタスクシス テムについては、以下で開設されていますので参考に してみてはいかがでしょうか。 http://codezine.jp/article/detail/297
お礼
回答ありがとうございます。 遠縁の親戚で知り合いで唯一ITの知識のあるかたに聞いてみました。 難しいと思ってたことも分解してけばできるとのことで、回答者さまと同じようにいまのことを続けろと言われました。 参考書籍を教えていただいてありがとうございます。 タスクシステムは初耳でした。 環境はc#でXNA /monogameでやろうとしてるのでメモリ管理がどう応用できるか調べてみます。
お礼
回答ありがとうございます。 今後も使える、多様な案をいただけるようにあえて自分のスキルを詳細にはかかなかったんですが、 逆に書きにくくなってしまったようですね。すみません。 お勧めいただいた作りたいジャンルの簡単な作品の模倣から入るってのはよさそうですね。 1のかたへのお礼にも書いた通り、いま作ろうとしてるものを分解してパーツごとに作るってしようかと思ってます。 お勧めいただいたアプローチもその中でやっていこうと思います。 最後に、勉強のために書いていただいたプログラムを作るのはいい学習になりそうですね。 ゲーム開発にも関わってますし。 迷ってましたが、また方針をもって取り組めそうです。 お二方ありがとうございます。