• ベストアンサー

3Dシミュレータの開発言語

個人的な弾道シミュレータソフトの開発をしたいと思っています。 物理演算は自分で関数を作り、bullet等の物理演算ライブラリは使用しないつもりです。 目標はMMDのような外観のソフトウェアを開発することで、 メッセージボックスなどで情報を与えて、Startボタンを押すことで画面内の3D区画でシミュレーション結果を描画すること等を考えています。 MMDはどの言語で本体を作ったのでしょうか。 他にも、このようなシミュレータソフトを開発するのに適している言語を教えて頂きたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • zwi
  • ベストアンサー率56% (730/1282)
回答No.3

WindowsAPIはGUI部分を受けもちDirectXは3D描画を受け持ちで連携します。 ただ、スレッドでGUIと3D描画を分けて組まないと動作に支障が出るでしょうね。 どちらにしろC#とXNAでGUI部分をどう組むかが問題となります。 時間が無いのにやったことがないC#と.Netライブラリとか大丈夫ですか?3Dも結構ハードルが高いですよ。 ↓ 参考。 「XNAカスタムコントロール - ひにけにXNA - Site Home - MSDN Blogs」 http://blogs.msdn.com/b/ito/archive/2008/01/17/xna-winforms.aspx

janneofworld
質問者

お礼

回答ありがとうございます。 期間は今年度末までですが、現実的に考えてこの作業に専念できるのは、5か月程だと思うので、すべて実現するのは厳しいのかもしれませんね。 目標はあくまで弾道予測なので、XNAで3D描画をある程度完成させてから、時間に余裕があるようなら、補助として用いるGUI部分も作っていきたいと思います。 丁寧に解説ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

プログラム部分はC/C++で、GUI部分はWindowsAPI、3D描画APIはDirectXかOpenGLが一般的です。なのでかなり色々勉強する必要があると思いますよ。

janneofworld
質問者

補足

回答ありがとうございます。 私は数年間ほどJava,C++,Fortran等の基本的なプログラミング言語を浅く学んだだけなのでWindowsAPIやDirectXについてはまるで分からないのですが、 期限のある開発のため、あまり時間をかける訳にはいかず、DirectXの代わりにより簡単なXNAを使用することを考えています。 質問なのですが、WindowsAPIとDirectX(XNA)は連携して使うという事なのでしょうか? 2つの環境を連携して使用するようなプログラムは作ったことが無いので意味がよく分からないです。

すると、全ての回答が全文表示されます。
  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

手持ちの MikuMikuDance.exe Ver.7.27 をバイナリエディタで開いて文字列を検索したところ、"Microsoft Visual C++ Runtime Library"という文字列が見つかりました。おそらくC言語かC++でしょう。 また、3Dシミュレーションはとにもかくにも処理速度が重要になるため、インターフェース部分はともかく計算処理部分(物理演算ライブラリに当たる部分)はC/C++で書くことになると思います。 むろん、計算結果を受けて表示する部分ではC/C++で書かれたライブラリとやり取りができる言語ならなんでもいい(そしてたいていの言語ではC言語で書かれライブラリとやり取りする方法が存在する)のです。 しかし、リアルタイムに描画を行う必要がある場合は、やはり処理速度が問題になるので、結局プログラムすべてをC/C++で書くことになるのではないかと思います。

janneofworld
質問者

お礼

回答ありがとうございます。 参考になりました。

すると、全ての回答が全文表示されます。

関連するQ&A