こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

C#で3Dゲームを作ることについて

最近、C++でDirectXをやっているのですが、C#に慣れ親しんだせいか、C++のエグさに失神しそうです。
そこでお聞きしたいのですが、「C#とXNA」「C#とDirectX直接」のようなものは、
「C++とDirectX直接」と比べて、速度はどれくらい違うものでしょうか?
作りたいゲームは3DのFPSゲームみたいなやつですが、
さすがに数千円のFPSゲームのようにハイスペックを要求するものではないです。

それこそピンキリだとは思いますが、個人的な感想などでも構いませんので、暇なときにご回答ください。

投稿日時 - 2009-01-29 21:18:19

QNo.4672249

暇なときに回答ください

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

zwi

C#の問題点。
・C#はリコンパイルされる可能性が高い。メーカーはそれを嫌がる。
・コード的にはC#の方が絶対に遅くなる。それはネイティブとMSILの差だから仕方が無い。例えば20%遅くなって調整に手間取るぐらいならC++を選ぶのがメーカーの選択。
・.NETのライブラリコードが大きいので配布時に不便。インストールを共用する必要がある。
ただ、組みやすいのがC#のメリットでしょうね。その便利な分だけ自動で処理してくれるので遅いわけですが。

投稿日時 - 2009-01-30 00:44:44

ANo.1

1つだけ言えるのは「FPSゲームを作ってるメーカーはC#よりC/C++を使ってるメーカーの方が圧倒的に多いっぽい」と言う事。

これは「幾つかのゲームプログラムを覗いて実行コードを見てみたら、C/C++が吐き出したっぽいCPUコードばっかりだった」ので、かなり確からしいです。

C/C++が良く使われる理由は、予想ですが「C#は実行コードが冗長になるし、遅いから」だと思われます。

投稿日時 - 2009-01-29 23:41:56

あなたにオススメの質問