• 締切済み

Windows向けの自作ゲームに使うプログラム言語

プログラミングで自作のゲームを作りたいと思っています。 その際、使う言語は何がいいのでしょうか? ゲームはおそらく僕個人か、賛同者がいても数名の、 かなり小さなものになるのですが、 最終的にはネットゲームのような形にできればいいと思っています。 (ブラウザゲームなのか、サーバー型ゲームなのか、P2P型ゲームなのかは未定) プログラミング経験は、以前C言語をかじったことがあります。 しかしWindowsアプリケーションはおろか、コンソールアプリケーションの時点で、諦めてしまいました。 なので、コマンドライン上で動くプログラムしか作ったことがありません。 知り合いには、C言語は個人開発にはハードルが高すぎる。みたいなことを言われました。 DirectXや.NETなど(ランライムっていうんでしょうか?) を使うことも考えていますが 果たして使ったほうがいいのか、使わないほうがいいのか、 つまり、メリットとデメリットが良く分かりません。 (Wikipediaなどで調べても、言葉が難しくてよく理解できません) それ以前に、ランタイムがどういうものかをあまり理解していないのもありますが・・・ 話にまとまりがありませんが、アドバイスをお願いします。

みんなの回答

  • fx70_2150
  • ベストアンサー率57% (123/213)
回答No.4

 まずは、オセロゲームとかを作成してみるのが、いいでしょう。  それが出来たら、DirectXの練習で、3D表示にするとか。  インターネット経由で、対戦できるようにするとか。  すでに、インターネットリバーシとかありますが、アイテム使用などの新ルールを作って、「自分と相手を逆転させるアイテム」とか、「2回連続で、俺のターン発動アイテム」とか、工夫次第で面白いゲームが作れると思います。  後から機能追加や変更しやすいように、骨格を作成するのが、大事だと思います。

  • bardfish
  • ベストアンサー率28% (5029/17765)
回答No.3

柔軟性と難易度はイコールです。 柔軟性が高い=難易度(敷居)が高い。 VBなどの高級言語は高度な処理を1関数で実現できる反面、関数の制約に縛られ柔軟性が失われます。特にマルチスレッド絡みで不自由するケースが多い。 リアルタイム重視のゲームなどでは致命的です。 だからC言語なんですけどね… >このままC言語を使ったとして、ネットワークを利用するにはどうすればいいのでしょうか? Socketを使用して通信プログラムを作成します。 TCPプロトコル、UDPプロトコルを勉強しましょう。

  • nhinoo
  • ベストアンサー率37% (50/135)
回答No.2

HSPの場合はC言語までとはいきませんが、VisualBasicよりは自由度は高いような気がします。制限されている中で実現させるのも腕の見せ所なので、結局は自分が使いやすい言語を使用するのが一番だと思います。工夫次第ではC言語よりももっとシンプルに実現できる機能が作れるかも知れません。 C言語については学校で習ったぐらいで、あまり本格的にプログラムを作った事はないんです。個人的にはソフトウェアの仕事がしたいのですが、なぜかハードウェアの仕事をするはめになるんですよねぇ。お役に立てなくてすみません。

  • nhinoo
  • ベストアンサー率37% (50/135)
回答No.1

.NETを使うならVisualBasicあたりが作るには楽だと思います。ただしVisualCやVisualC++に比べれば自由度は多少制限されると思います。 特に.NET系にこだわりがなくてこれから覚えてもいいのなら、HSP(Hot Soup Processer)がお勧めです。BASICと同様のインタプリタ型プログラム言語です。フリーソフトなので開発環境が無料で揃えられますし、プラグインを追加すればサーバ型やP2P型でネットワークゲームを作る事になっても対応可能です。 ツールも豊富に開発されていますし、他の人が作ったプログラムやソースなども公開されています。関連本も販売されているので、参考資料には事欠かないと思います。

参考URL:
http://hsp.tv/
ZecSirius
質問者

お礼

ありがとうございます。 C言語などは自由度が高いとのことで覚えたのですが、 自由度と難易度は表裏一体のようですね。 HSPとVisual Basicは細かい処理を言語側が吸収してくれる分、楽になりますが、 果たして自由度はどの程度失われるのでしょうか? 当然ハードウェアレベルの処理はできないと思いますが、 ネットワーク関連でも制限が生まれるのでしょうか? 以前は、将来プログラマを目指していたので、自然と行き着いた結果がC言語でしたが、 今ではその気持ちは薄れているので(まだ少しはあります) 高水準な言語でいいような気もしますが・・・。 最後になりますが、 このままC言語を使ったとして、ネットワークを利用するにはどうすればいいのでしょうか? 解説サイトや本も見当たらず、途方に暮れています・・・。

関連するQ&A

  • windowsで動くゲームやソフトを作る際に使う言語についての質問です

    windowsで動くゲームやソフトを作る際に使う言語についての質問です。 windowsで動くゲームやソフトを作るために勉強しています。 C、C++、C#のコンソールアプリは作れるようにはなりました。 ここから何に進めばいいか助言をいただきたいのですが、まずゲームを作るとなるとDirectXを覚える必要があると考えるのですが、 1、C++/directXを勉強するか、C#/mangedDirextXかC#/XNAか、どれで開発するのが効率が良いのでしょうか?それほど大規模なゲームをつくろうとは考えていません。簡単なシューティングゲームとかを作ろうと考えています。 2、DirectXを使うにあたってWindows APIも簡単に勉強しておいたほうが良いと聞いたのですが、どうでしょうか? 3、それ以前の話なんですが、当方Windows SDKとはWindows APIを扱うための開発キットだと認識しているのですが、WisdomSoftさんのサイトの説明 http://wisdom.sakura.ne.jp/system/winapi/index.html と、猫でもわかるプログラミングさんのサイトでの解説 http://www.kumei.ne.jp/c_lang/index_sdk.html はどう違うのでしょうか? ご存知の方がいらっしゃればご教授お願いします。

  • c言語でできること

    c言語は具体的には何ができるのでしょうか ものすごくがんばれば市販のゲームソフトなども作れるようになるのでしょうか というのは 今、僕はc言語のプログラミングを勉強しています コンパイルするとms-dosの黒い画面が表示されますよね。オセロなどのゲームはとても見にくいです。 あのようなゲームではなく、ちゃんと絵があるようなゲームは作れるのでしょうか?? また3Dのゲームはつくれるのでしょうか? 「c言語のゲーム」とググってもありません c言語だけではできなくてdirectxなどがいることは知っています。 プログラミングを学ぶ上でなにか目標ができたら それに向けてがんばれると思うので情報よろしくお願いします。 わかりにくい文章ですいません^^;

  • プログラム言語の選択基準

    こんばんは。 私は現在、社内の小規模な在庫管理システムを作成しようと考えています。 その為に、どのプログラミング言語を使用するか悩んでいます。 以前ソフトウェア会社で働いていたときは、ただ漠然と提示されたプログラミング言語でプログラムを作成していたため、なぜこの言語で開発するのか? という点が理解できていませんでした。 そこで今回在庫管理システムを作るにあたり、みなさんはソフトを作成する際、どういった基準でプログラミング言語を選択しているかを知りたいと思いました。 一般的、個人的など、どういった基準でも構いません。 ちなみに私は今回、漠然ではありますがJAVAでSwingを使用し、GUIアプリケーションとして作成しようと考えています(よく分かっていない点もあるため、変な事を言っていたらごめんなさい)

  • ゲーム作成に適したプログラム言語

    現在、RPG型のゲームを作ってみたいと思っていまして、 ツクールを使用するとテンプレート通りの物しか作れそうに無い& 後学の為にもプログラミングができるようになっておきたいという理由で、 自分でプログラムを組んで作ってみようと思っています。 以前学校の授業でC言語を軽く扱いましたが、 ある所で高度な処理をさせるためにはC++がいいと聞き、 またある所ではjavascriptならコンパイルがいらないので簡単だと聞き、 正直どれを使えばいいのかよくわからなくなってます。 ジャンルは前述の通りRPGで、画面は基本ドット打ち、パソコンの使用環境はXPです。 以上の条件でゲームを作ろうとした場合、もっとも適しているプログラム言語はどれなのでしょうか? また、このようなゲーム作成に関するお薦めのノウハウ本などありましたら併せて教えていただけると幸いです。 当方まったくの素人ですが、よろしくお願いします。

  • ゲーム会社の作品提出ってコンソールゲームでも大丈夫?

    ゲーム会社の作品提出ってコンソールゲームでも大丈夫? 今大学3年でゲーム会社を目指しているのですが、C言語はそこそこできて、授業でオセロゲームなどのコンソールゲーム(2D、3Dを使わないゲームのこと)を作ったりしたのですが、DirectXなどのグラフィックつける知識はなく(3Dのモデルを作ってテクスチャはるなどはできるのですが)、一緒に作る仲間もいないので3D・2Dゲームを作るのは無理そうです。 そこで考えたのですが、作品のオリジナリティが大事だということを聞いたので、たとえば、オセロゲームやテトリスなどの定番ゲームに自分なりに工夫して、オリジナルルールやシステムなどを盛り込んだコンソールゲームを作るというのはどうでしょうか?プログラマーなのでグラフィックがなくてもプログラミングが優れていればいけるんじゃないかと考えたのですが。

  • ゲームプログラミングは何言語?

    ゲームプログラミングに興味があるのですが、初心者なので全く分かりません。今、PascalとJavaを勉強しています。これからC言語も勉強の予定です。パソコンやプレステのゲームソフトもこのような高水準言語で書かれているのですか?それとも、まったく別のもので書かれているのでしょうか?もしゲームプログラミングをするにあたって、この言語は勉強しておいたほうがいいよというのがありましたら教えてください。

  • シューティングゲーム向けの開発言語

    某弾幕ゲームの影響でプログラミングをし始めたんですが C言語やC++語以外ゎあまり手をつけたことがなく どの言語が弾幕ゲー開発に最適なのか把握しきれていません。 個人的にはXMLやJAVAのほうがシューティングに向いているように 感じるのですがその辺もどうなんでしょう? お勧め言語等、ご教授お願いします。

  • プログラム言語の特徴(得意・不得意)について

    各コンピュータ言語の特徴(得意・不得意)を教えてください。 ネットワークプログラミングに関して知りたいので、それに 関連する言語に関して教えていただければ幸いです。 この質問の背景を以下で説明したいと思います。私はネット ワークプログラミングに関しては素人なので、質問自体が 的外れの点もあるかもしれませんが、どうかご了承いただき、 私の言わんとすることを汲み取ってご回答いただければ 幸いでございます。(知識に欠けている中で、的確な質問 をすること自体が難しいので、どうかご理解ください。) 私は以前に機械系のエンジニアをしておりました。そのため、 プログラミングは専門ではありませんが、ハードウェアの 制御のプログラム(例えばモーター制御や、DI/DO、AI/AO、 CCDからの画像取得など)を書いた経験はあります。 そのときに、もともとCでプログラムを作成しておりま したが、マルチスレッドプログラミングでかなり苦戦 しました。専門書を買ってきてその通りにプログラミング してもうまく動作しませんでした。散々悩んだ挙句、 ハードウェアに特化したプログラミング言語である LabVIEWでプログラミングをしてみると、マルチ スレッドもタイミングも何も考えずにプログラミン グができました。今まで何ヶ月も悩んでいた問題が 一瞬にして解決しました。 このとき感じたのは、プログラミング言語には 得意・不得意があって、開発したいアプリケーション によって、プログラミング言語を選択するのが 効率的なのかなあということでした。 よく、どんな言語でも、極めればどんなことでも できるという人がいます。確かにCなんかは、 どんなこともできるのではないかと私も思います。 ただ、上述の私の例のように、プログラミング 言語毎に、得意・不得意があったり、すでに ある機能に対してそれを実現するパッケージが 存在する言語があったりして、実質的に作業 効率を考えると、実現したい機能(アイデア) に応じて、それに適したプログラミング言語が 決まるような気がしています。 そこで、今私はネットワークプログラミングの 勉強をほぼゼロから始めようと思っています。 ネットワークプログラミングで使用される言語 はいろいろありますが、それぞれの特徴 (得意・不得意)あるいは、それに適した アプリケーションの種類などを、大まかに まとめることはできませんでしょうか。 例えば、前述の私の例で言いますと、 C: 自由度があって、様々な設定ができるが、 めんどう。 LabVIEW: マルチスレッドやタイミング などを考えずに簡単にプログラミングできる が、タイムクリティカルな処理はCで記述 してインポートする必要がある。 こんな感じにネットワークアプリケーションに 関して分類できると、初心者にとっては とっつきやすく、こういうソフト開発を したいからこの言語を勉強してみようと なります。 また、上述の例のように、ネットワークプログ ラミングにおいても、得意な部分のパッケージ をインポートしてつなぎ合わせるような プログラミングはあるのでしょうか。 果たして私の意図がうまく伝わったか分かり ませんが、ご回答いただけましたら幸いです。

  • C言語のゲームのプログラミングの本教えてください

    自分は現在高専の情報系の二年生です。 自分は将来はゲームのプログラマーになりたいと考えています。 そこで今から少しずつゲームのプログラミングについて学んでいこうと考えています。 色々な会社の採用情報をみると「C言語やアセンブラなどでのゲームのプログラミング経験があるといいです」みたいに書いていることがあります。 なのでせめてC言語のゲームのプログラミングの本を読んで学んでいきたいと考えています。 そこでおすすめの本があると言う方は教えてください。

  • 昔のゲーム製作に使用する言語はなんですか?

    今のPS2やゲームキューブ・PCゲーム等は C++と言う言語を使っているそうですが それ以前のMSX・FC・GB・ゲームウォッチ SFC・MD・・・・ 等のゲームはそれぞれどのような言語を使い プログラミングをこなしていたのでしょう?

専門家に質問してみよう