ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

C言語とC++言語コミュのゲーム作りたいんですが、入門書の次何すればいいんですかw

  • mixiチェック
  • このエントリーをはてなブックマークに追加
今高校二年です!
高校卒業後はゲームプログラムの専門学校に行く予定なんですが、入学までに2Dの簡単なRPG?みたいなのは作れるレベルになっときたいんです。
(専門学校行ってる間は余裕もって作品とか作っておきたいから)
入学を検討してる学校のすべてがCの勉強から始まってるのでとりあえず入門書の「苦しんで覚えるC言語」を進めていったのですが、内容を理解してるはずなのですが一向にゲームをどうやって作るのかわかりませんww
あと何をすれば簡単なRPGっぽいもの作れるようになるんですか???
開発環境とかも教えてくれたら助かります!

RPGツクール、unityとかじゃなくて普通にプログラミングで作ってみたいんですw

なんか日本語おかしいかもしれないんでまとめときます(不必要?w)

1.RPG作れるようになるまでの学習の順番

2.2Dゲームの開発環境

3.参考になる書籍、サイト(これはどっちでもいいですw)

コメント(15)

ゲームの作り方自体がわかっていないようなので、いくつかアドバイスします。

ゲームもプログラムの一つなので、作成するためには仕様が必要です。仕様を作るのはプログラミングとは別のスキルになります。

まずはプログラミングではなく、ゲーム製作そのものに触れてみることから始めてみることをオススメします。
例えば・・・

1. 1時間でテトリスを作る動画があるので、それを見てどういうプロセスでゲームが作られるのかを体験する。
2. ファイアーエムブレムシリーズの産みの親である加賀昭三さんが、シミュレーションRPGツクールで同人ゲームを作成されているので、その開発記を読んでどのような事を気にしながら製作されているかを勉強する。
実際にそのゲームをプレイして、ゲームの品質はツールだけではない事を体験する。

RPGは製作に時間がかかるので、初めての場合は恐らく挫折します。まずはシンプルなものでいいので、何かを完成させた方が良いです。
>>[1] なるほど!
プログラミングだけじゃなく個々の部品を作る勉強からすればいいんですね!笑
でも、それって素材とかじゃダメなんですか(´・ω・`)?
>>[1] プログラミングはとりあえずゲームから離れて理解から始めたいと思いますm(*_ _)m
>>[2] やっぱりプログラミングだけじゃないんですね、、、w
とりあえずツールとか使ってゲームを完成させてみようと思います!
>>[3]

横から。
ゲームで使うリソースのすべてをプログラマが作るわけでは無いので
画像や音楽などはフリー素材とかからの流用でも問題ないでしょう。

ただ、私の経験的にはペイント関係のソフトは使えた方が便利…でしたかね。
RPGではないですが、フレーム画像とかを並び替えたりするときに使っていました。
まぁ、担当の人にサイズや座標、並び順などを細かに指示すればいいだけの話なんですが。
私の居たところではちょっと難しい感じでしたので。
>1.RPG作れるようになるまでの学習の順番

・プログラミング言語の習得
Cなら関数とポインタを使えるくらいが最低ラインです。
完璧に理解しておく必要はありません。プログラムを書いてるうちに自然と分かるようになってきます。

・ゲームプログラミングの解説サイト、本を読む
ゲームプログラムは、メモ帳やExcelといった普通のアプリケーションソフトとは作り方が大きく異なるので、ゲームプログラミング固有の知識を身に付ける必要があります。

・アルゴリズムの習得
プログラムを作って行く中で「この機能を上手く実装する方法はないか?」と思う場面がしばしば出てきます。殆どの場合、それらを実現する方法は既に考えられていて“アルゴリズム”という形で世に広く知られています。
例えば、RPGでアイテムリストを並べ替える機能がありますが、プログラムで並べ替えを実現するには、バブルソート、クイックソート、マージソートなど様々なアルゴリズムが存在し、適材適所で使い分けなければなりません。
アルゴリズムはゲームに限らずプログラム全般で役に立つので、プログラマとしての基礎体力のようなものです。

なお、他の方も書かれていますが、RPGは仕組みは簡単ですが用意しなければならないデータ(マップ、キャラクター、アイテムパラメータ、会話データなど)が膨大で、プログラムと関係ない部分で挫折する可能性が高いです。
最初の一歩としては、ブロック崩し、テトリスあたりをオススメします。


>2.2Dゲームの開発環境

VisualStudio + SDL

近年のお手軽開発環境からするとrawレベルですが、Cによるゲームプログラムを根っこから勉強するには、低級すぎず高級すぎず丁度良いのではないかと。
後述の本「ゲームプログラマになる前に〜」に付属の環境でもいいと思います。

>3.参考になる書籍
平山尚著「ゲームプログラマになる前に覚えておきたい技術」
ゲームプログラミング固有の話を初歩的な事から体系的に学べます。
900ページ弱のボリュームと5000円近い値段に圧倒されると思いますが、他の本を何冊も買うよりこれ1冊を買うのが結果的に安上がりです。お年玉で買いましょう^^

平山尚著「プログラムはこうして作られるプログラマの頭の中をのぞいてみよう」
前書と同じ著者による、プログラミングの考え方の本です。
こちらは未読なので詳しくは語れませんが、評判が良いので参考にしてみて下さい。


これまた他の方が書かれてますが、簡単なものでもいいので、とにかく何か1つを完成させてみるってのは非常に重要だと感じます。
また、開発チームの規模で実現出来るであろうゲーム仕様を明確に決め、欲張らずに開発するのも大事です。ゲームなので色々夢を詰め込みたくなりますが、それをやっちゃうと完成まで漕ぎ着けない可能性が跳ね上がるので。
>>[7] めちゃくちゃわかり易かったです( ̄△ ̄;)
わざわざ詳しくありがとうございました!!
仰る書籍はお年玉で買おうと思います!
やる気出てきました!頑張ります!
私の経験値からの話ですが、
ツムツムもどき 作成期間2日(オリジナル物理エンジンの機能と数学知識を最大限利用)
ツムツムもどきの物理エンジン 3000〜5000行(既存の物理エンジンを拡張し可能な限り簡単に開発出来るようにした)
高度なスマホゲーのバトルシステム 20000行くらい

ツムツムは物理エンジン(Unity等)の知識が高ければものすごく簡単に作れます

スマホゲーのやつはバトル画面にキャラが登場して
攻撃をしたりタイミングを合わせて必殺技出す
スマホゲーの中では結構こだわってるようなバトルシステムであればこれくらいの規模の開発になると思われます

実際に開発して言えることは、
・ツール超重要
物理エンジンやらゲーム開発ライブラリを使うかどうかで作業時間もバグの量も一桁くらい変わってきます
あなたが天才でないのであれば、ツールを利用しまくってゲームを作ることを考えましょう
スーファミ時代ならまだしも、今の時代にゲーム開発ツールは使って当然で、使えなきゃ仕事にはなりませんので

・基礎をしっかり身につける事
スマホゲーで20000行は数回火を吹きました
理由はゲーム開発経験がない人が大規模なゲーム開発をした結果、
いろんなとこで開発が破綻しました
デザインパターンの知識やゲーム開発の経験値があれば2/3くらいの規模感になってた

・能力に合わせた開発をする
上の話にも繋がりますが、
自分のスキルに合わない大規模な開発に手を出すと絶対に後悔します

ゲーム開発に役立ちそうな資料でしたら、
他の方が出してるもの以外では
・UnityかCocos2d-xの解説本
・ゲームプログラマのためのC++(大規模な開発をする時に必要になってくるコードの書き方が多い)
・デザインパターンの解説本(Javaの本が多いですが、デザパタの知識は重要)
そうか、最近だとSDLよりCocos2d-xの方が良いですね。
解説サイトや本も沢山ありますし。

トピの趣旨からは若干外れますが、基礎という点では数学・物理はできるに越した事はありません。
特に三角関数、ベクトル、行列あたりは、この先ツールがどんなに進化しても、全く使わなくなるという事はまず無いと思われるので、今のうちにしっかり勉強しておきましょう。成績も上がるし、将来への先行投資にもなるしで一石二鳥です。
(きっと授業でやる「平面とベクトルが交わっているか?」系の全く役に立たなさそうな問題は、衝突判定やキャラを斜面に奇麗に立たせる所などで超使います。)

かくいう自分は真面目に勉強しなかったので、現在進行形で苦労しております…。
ゲーム開発関係の本やエッセイでもちょいちょい言われているのですが、
作るゲームによって必要な技術がかなり変わってきます

パズルなら比較的基本的なプログラミング技術が中心
シューティングなら数学知識や処理効率がよいアルゴリズム(シューティングは結構重い、特に一昔前は)

で、RPG(特にドラクエ形式)だとツール開発能力が結構要求されるようになります
町のマップやキャラの会話、フラグの管理に敵の行動パターンと
RPGってとにかく情報が多いので、
そういった情報の作成や管理をするツール開発が結構重要になってきます
ツクールみたいなソフトって実は結構リアルな開発環境に近いツールなのですよ
>>[11] そうなんてすか!?
一応目指してるのはシューティングとかとRPGって感じでまとまってないんですが、、、w
とりあえず専門学校とか職場行ったら何が必要かわかると思うんでとりあえずツールとアルゴリズム勉強しとこうと思います!(職場は手遅れ感満載)ありがとうございます!w
>>[10] 三角関数はそこそこの高校で文系の中で1度1位取ったのでまあ大丈夫かと思いますが、ベクトル、行列は数学Bなので授業取ってないんですよ、、、泣き顔
すぎのかれはさんは現在どうやって勉強していらっしゃるんですか???
必要な部分を勉強したいと思ってるので教えていただけると幸いです!
>>[9] ツールってやっぱり大事なんですね!w
まだ始めたばっかりなのでとりあえず基礎を身につけたいと思います(´・ω・`)
役立ちそうな資料凄く参考になりました!わざわざありがとうございますm(*_ _)m
>>[13]
私は高校で一応やったので、当時の記憶を呼び覚ましつつ、ネットで調べたり高校生向けの参考書を見て、勉強してるというよりその場凌ぎでナントカしてます…。
高校時代は万年赤点だったので、今になって苦労してるという具合ですw

きゃんたさんの頭なら、教科書か市販の参考書を使って独学で行けると思います。
分からないところは先生に聞きましょう。身近に教えてくれる大人がいるってのは非常に有り難い事なので、言い方は悪いですがドンドン活用して下さい。
先生も悪い気はしないでしょう。

頑張って下さい!

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

C言語とC++言語 更新情報

C言語とC++言語のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング