2012年6月7日木曜日

ゲームを1から作ってみたいです。 ゲームを作るにはまず何をしなければいけない...

ゲームを1から作ってみたいです。



ゲームを作るにはまず何をしなければいけないのかなどを教えてください。







[一般アプリケーションを作るプログラミング言語]



持っているパソコンは、Windowsマシンですか、マック系ですか。

ゲームに限らず、ソフトの作成全般で、それぞれのマシン環境によって、開発環境(プログラムを作る環境)がかわります。

下記は、一般アプリケーション(ワープロ、表計算ソフト、業務用システム、ゲーム等々)を作るためのプログラミング言語です。



マック系パソコン用のソフト や iPhone用アプリケーション は、Objective-C と言うプログラミング言語で、プログラムを作ります。



Windowsマシンの場合は、C言語、C++、Java、Visual Basic.NET(略: VB.NET)、C#、Delphi、HSP等の言語で、プログラムが作れます。











[Web系]



また、中級者以上になったとき、オンラインゲームにチャレンジしてみたいと思うでしょうが、Webブラウザ上で動くソフトにしたいのか、Webブラウザ上で動作しなくても良いのかによって、プログラミング言語が変わってきます。



Webブラウザ上で動くソフトの場合は、上記の「一般アプリケーションを作るプログラミング言語」とは、別のプログラミング言語になります。

Web系で、クライアントサーバー(親機、子機で接続する形式)の場合の言語は、PHP、JavaScript、JSP、ASP.NET、Ruby、Python等があります。

また、Web系で、スタンドアローン(通信を行なわない単独マシン)の場合では、Webブラウザへのプラグイン(Webブラウザへ組み込まれて実行されるプログラム)を作る言語のJavaアプレット、Adobe Flash(略: Flash)、Microsoft Silverlight(略: Silverlight)があります。



なお、Web系では、処理速度が遅いので、ゲームに不向きと言う扱いがされてきました。

しかし、Flash や Silverlight は、ゲーム機能が優れているので、Web系のゲームも、盛んになり出しています。

ただし、Flash と Silverlight は、前述の通り、スタンドアローン用なのは、クライアントサーバーにしたい場合は、クライアントサーバー形式のWeb系言語と組み合わせます。

例えば、

Flash + PHP

とか、

Silverlight + ASP.NET

と言うように。

SNS等のソーシャル系のゲームは、Web系言語で作られています。





[Webアプリケーション]



なお、最初に述べました一般アプリケーション系を、Webブラウザ上で動作させる標準規格が作られました。

2002年に一般公開されたのですが、マシンのスペックが満たない等々の条件が合わずに、一般普及するまでには至りませんでした。

しかし、ここ最近、条件が良くなってきているので、一般普及のリベンジが、始まる雰囲気が高まっています(2010年以降からの傾向で、特に来年2012年と再来年2013年が、今後の傾向が見えてくる予定になっています)。

この標準規格が、一般普及すれば、クラウドコンピューティング、電子書籍、スマートフォンの類の、次世代的なものが実現して行きます。

今の2011年の時点で、既に世の中に出ていますが、まだ序盤の段階で、Web系で一般アプリが動作する世界は、これからが本番です(予定なので、2002年の時のように、保留になる可能性も、場合によってはあります)。



言語は、Java と C# が中心に行なわれています。

また、Java か C# でサーバー処理(親機側)をさせて、クライアント側(子機側)の処理定義は、Web系言語のRubyか、Pythonか、Silverlight を使うと言う組み合わせが行なわれます(PHP も、次世代対応に向かっている様子ので、この対象言語に含めても良いと思います)。









[御勧め]



そう簡単なものでは、ないです。

特にゲームは、手間がかかりますので。

よって、まずは簡単そうなものを選ばないと、挫折します。

まずプログラミング自体に慣れてから、その後に、上記のいろいろな選択肢を選んで下さい。

私の御勧めは、C# です。

欠点は、実質上、Windoiws系に限定されることです。

しかし、マルチメディアの得意なマイクロソフトが作って、標準化団体に提出した言語ですので、ゲーム作りに最適なプログラミング言語です。

ボタンやテキストボックス(文字を読み書きする部品)などのWindows部品を、デザイン画面で組み立てるので、初心者に優しいです。

また、3Dや、次世代技術にも対応し、かつ、高機能なので、中級者、上級者にとっても良い言語です。



C# の入門書は、沢山でていますので、「わかりやすそうな気がする」と直感した本で学習して下さい(人によって、どれが良いか違いますので、書店でみて、自分でわかりやすそうと感じた本が良いです)。

題目に「Visual C# 2010」と書かれた本です。

2008 は、古いバージョンですが、初心者レベルの範囲では、互換がありますので、Visual C# 2008 の本でも良いです。

特にグラフィック処理の章を学習して下さい。








ゲーム制作ツールを利用すると開発は楽なのですが、もっと根本的なことからやりたいと言うことでしょうか?



「ふりーむ![ ゲーム制作ツール集 ]」

http://www.freem.ne.jp/contents/create/tool.html

これらの中でも豆乳システムあたりは、ほぼプログラミングです。



もし、時間がかかって難しくてもプログラミング言語でゲームを作りたいということであれば、C言語を学ばれることをお勧めします。

理由は、書籍の充実やサイトが多いこと、変化が少なくて古い情報もある程度参考にできることが上げられます(それでも開発環境は変化して行っていますので、何でも参考になるわけではありません)。



●C言語の入門

「苦しんで覚えるC言語」

http://9cguide.appspot.com/



ちなみに、C言語だけだとコンソールアプリですので、地味なテキストだけしか扱えません。

それでも簡単なゲームを作ることは出来ます。



「Programのプ:練習問題」

http://www.asahi-net.or.jp/~qb3k-kwsk/rpg/program/tutorial/tutorial...

「C言語 練習プログラム集」

http://akabas.net/(S(mlrkxl451pmm1z45zl4pbwa2))/lib/CTask.aspx



●本格的なゲームのために。DXライブラリ。



「DXライブラリ置き場 HOME」

http://homepage2.nifty.com/natupaji/DxLib/

「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」

http://dixq.net/g/



DXライブラリは、C言語と合わせてゲーム作成に使用します。

本当は中ではDirectXが動作していますが、それを簡単に扱えるようにしたものです。

0 件のコメント:

コメントを投稿