ここから本文です

ダンジョン系ゲーム(シレンやトルネコ)のようなゲームをつくりたいのですが 一...

ban********さん

2014/9/2110:42:41

ダンジョン系ゲーム(シレンやトルネコ)のようなゲームをつくりたいのですが
一般的な言語の中で一番処理が軽い物ってなんですか?

この種類のゲームはヴォリュームを増やしていくとどうしても処理の速さが
必要不可欠なようなのでそういった言語を探しています。

閲覧数:
129
回答数:
4

違反報告

ベストアンサーに選ばれた回答

mas********さん

2014/9/2111:36:38

今時のハードウェアはローグライク程度の処理で問題になることはありません。
言語による処理スピードの差は、SSDなどのアクセスやネットワークと比べたら微々たるものです。
それよりも、グラフィック表示や音声再生が楽な言語を選ぶと良いでしょう。

それでも速さを追求したいなら、最速はマシン語です。また、丁寧にアセンブリ言語で書くと同等になります。
次が c/c++ です。が、アセンブラを理解しないで書いてもギリギリのスピードを引き出すことはできません。c/c++ は高級アセンブラとも呼ばれ、「こういうマシン語を出力する」ということを期待してコーディングすることが、ある程度まではできます。また、インラインアセンブラという機能で直接アセンブリ言語を記述することができる処理系があります。

その他はもう気にしても仕方ないくらい c/c++ より遅いので、比べても仕方ないと思います。
また、プラットフォームごとに洗練された開発環境が違うので、PC の exe にするのか、Web ゲームにするのか、Android なのか iOS なのかを明らかにして、別の質問で聞くのが良いでしょう。

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜3件/3件中

並び替え:回答日時の
新しい順
|古い順

iku********さん

2014/9/2118:55:37

一般的に処理が早いものは、C言語ですね。
C/C++で作るのがよいと思います。
というか、アセンブラの方が早いんですが、まぁ、面倒だと思うので。

逆に少し遅い(早くする方法はあるけど)のは、JAVAですが、これはこれで、並列処理なんかも得意なんで、一般的にはゲーム開発向きではないですが、作り方によってはそんなこともないです。

で、初心者にとっつきやすいのが、C#。

また、ゲームに特化したunityや他の開発環境もあるようです。

まぁ、自分で調べて好きなのをどうぞ。



で、気になるのは、
>この種類のゲームはヴォリュームを増やしていく
なんですが、回答者によっていろいろな解釈がなされていますが、マルチユーザーだったり、オンラインだったりと。

私はもっと単純に、面やキャラを増やしていく、と感じました。
私がゲームをしていたことは、オンラインなんて環境はなかったせいかもしれませんが。
面やキャラを増やすだけなら、作り方によってはそれほど気を使わなくても済むかもしれません。

シレンやトルネコって、マップがあって、部屋があって、その部屋に何匹か敵やアイテムがいて、自分が行動すると敵も行動する・・・、みたいな感じですよね?
今は、もっとリアルタイムなのかな?
シューティングの弾幕のような一度に多くの処理が、発生するものではないので、クラスとスレッドの知識があれば、あんまりCPUやメモリは関係ないと思います。
その都度開放すれば、それほどメモリも食わないと思うし。

個人的には、一度に全部考え始めたり、理想を追い求めたりすると、大変なので、とりあえずC#とその本を買ってみるのはどうでしょうか?

C/C++とJAVAは、言語としては良いと思うのですが、おそらくは、最初は真っ黒な画面からなので、飽きちゃうと思うんですよね。

nic********さん

2014/9/2113:23:04

お前は現代のマシンの処理速度を舐めている。
ローグライク程度でCPUがボトルネックになる事はどう考えてもあり得ない。数世代前のAndroid端末でクッソ遅いJavaを使ってもその程度は余裕だ。
ご託を抜かしている暇があったらさっさと作れ。

プロフィール画像

カテゴリマスター

man********さん

2014/9/2112:14:18

banana_man4646さん
マルチプレイヤ・ゲームで、参加者が増えても遅くならない言語ね。

その場合、参加者が増えた場合に重くなるのは、主としてサーバ側なので、サーバ側でより多くの処理ができる言語が良いでしょう。
下記の性能競争結果によれば、Java言語が、沢山処理できています。

http://www.techempower.com/benchmarks/#section=data-r9&hw=i7&test=j...
・Javaベースのservlet は、211,618 回/秒
・C++ベースのcpoll_cppspは、192,432 回/秒で90.9%
・Ruby言語をJava環境で動作させるrack-jrubyは、185,628回/秒で87.6%
・JavaScriptベースのnodejsは、 69,563 回/秒で32.8%
・phpは、 67,366回/秒で31.8%

ただし、c++言語cpoll_cppspを使ってゲームサーバを作った場合、そのGPLライセンスに従ってソースコードの公開が必要になるから、一般的に使われるとは言えないでしょう。

一方、参加者が操作するクライアント端末側で、端末に負荷がかからないのは、JavaScript言語でしょう。

もし、クライアントとサーバの関係が判らなければ、下記URLで、マルチプレイヤ型の 御絵描きチャットで、体験できます。
下記URLを、Windows pcかmacかのブラウザで開いて"Run"ボタンを押して、サーバ側を起動し、そこで動的に表示されたURLをiPhone/Android等のブラウザでクライアント側を開くと、マルチプレイヤで操作できます。
http://runnable.com/U1IxKJmPnE87np8c/canvas-of-multiplayer-with-nod...
このアプリのソースコードも、このサイトで見ることができて、クライアントとサーバ合わせて300行未満です。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる