シンプルな 3D 形状が相互に作用する 3D ワールドで構成されるゲームを開発したいと考えており、物理学のような「リアル」が関与しています。
私はビデオゲームのプログラミングの経験がありませんが、学びたいと思っているので、相互に作用する 3D 形状と物理学のような「リアル」で構成されるゲームに使用するプログラミング言語および/またはライブラリを尋ねたいと思います。 ?
この質問には複数の回答があることは承知していますが、現在使用されている最も一般的なテクノロジーは何かを知りたいです。
シンプルな 3D 形状が相互に作用する 3D ワールドで構成されるゲームを開発したいと考えており、物理学のような「リアル」が関与しています。
私はビデオゲームのプログラミングの経験がありませんが、学びたいと思っているので、相互に作用する 3D 形状と物理学のような「リアル」で構成されるゲームに使用するプログラミング言語および/またはライブラリを尋ねたいと思います。 ?
この質問には複数の回答があることは承知していますが、現在使用されている最も一般的なテクノロジーは何かを知りたいです。
Bulletを見てください:
Bullet 3D Game Multiphysics Library は、最先端の衝突検出、ソフト ボディおよびリジッド ボディのダイナミクスを提供します。
このライブラリは、ZLib ライセンスの下で商用利用およびオープン ソースとして無料で利用できます。
SDL ライブラリ ( http://www.libsdl.org )を調べる必要があります。これは、複数のプラットフォームをサポートし、さまざまなプログラミング言語のバインディングを備えているためです。また、OpenGL もサポートしています。
幸運を!
C# で書かれた XNA Game Studio。C++ や DirectX/OpenGL よりも (主観的に) 簡単に習得できます。 http://creators.xna.com/
ここにそれについての別のスレッドがあります。見つけ次第リンクします。
Flash を使用することから始めることをお勧めします。これは単純なゲームを作成するのに適した環境ですが、より凝ったゲームを作成したい場合には、優れた 3D および物理エンジン (たとえば、 Papervision3DやFisix ) を利用できます。
参考までに、 OpenSimと呼ばれる非常に興味深いOpenSource BSDライセンスプロジェクトがあります。これは、C#とMonoの両方でサーバー側のSecondLifeインフラストラクチャを再作成することで構成されています。
それはあなたの友人やあなたがやりたいことと一致しているようです。まだアルファ段階ですが、かなり安定しており、試してみる価値があります。
プログラミングの経験がまったくなく、非常に高速な視覚的結果を実現したい場合は、DarkBasicやBlitz3Dなどの言語を確認する必要があります。
とはいえ、これらの言語にはかなり強い制限があり、プログラミングの学習も検討している場合は、JavaまたはC#のさまざまなユーザー作成API(JOpenGl、Jogre、XNA、SDL.Net、Irrlicht.Netなど)に向かうことをお勧めします。 。ゲームの作成中にオブジェクトプログラミングの基本を学ぶことができます。
ここにさまざまなリンクがあります:
Java:
C#:
シンプルで強力なもの (少なくとも私の好みによると :)) はApocalyxです。
完全にオープン ソース、多くのデモ、多くのチュートリアルは、多くの一般的な形式 (MD2、Cal3D、BSP など) を直接操作できるため、高度なツールを使用して世界を作成できます。
C++ で書かれ、Lua でスクリプト可能 (スクリプト専用のエディターがあります)。
SDL はゲームの事実上の出発点であり、いずれにせよ一部のプラットフォームでは問題ありません。非常に迅速に起動して実行できます (Linux で動作します)。
そこで、sourceforge で PLIB、Ogre、CrystalSpace などを検索できます。ここ数年でどのように進歩したかはわかりませんが、それらはすべて良好です.
優れた物理学で純粋なリアルタイム 3D を実行したい場合は、たとえば OpenGL を使用した C++ をお勧めします。
OpenGL に関するチュートリアルについては、 http: //nehe.gamedev.net/ を参照することをお勧めします。http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=30で衝突検出システムの例を見つけることもできます。
実際にリアルタイムが苦手な場合は、おそらく C++ を飛ばして、「より単純な」コーディング言語に進むことができます。
利用できるエンジンはたくさんあります。どれが自分のゲーム デザインに合うかを調査する必要があります。
ほとんどの商用ゲームは C++ で記述されており、他の言語が飛び散って完全にバインドされています。他の言語は、Java の携帯電話への移植性など、さまざまな特性を提供します。
私は、David Brackeen 著の本「Developing Games in Java」を使用して、Java for Windows でいくつかのプラットフォーム ゲームを開発しました。それは 3D のものをカバーしていますが、私はまだそこまで行っていません。
Microsoft の XNA フレームワークを調べることをお勧めします。これは、その「ゲーム」の側面をカバーします。物理に関しては、選択肢がたくさんありますが、Bullet エンジンを検討することをお勧めします。
パフォーマンスには C/C++、スクリプトにはLua 。
Lua の紹介 http://www.gamedev.net/reference/programming/features/lua/
ブリッツは、何かを素早く立ち上げて実行するのが得意です。
Blitz3D は 3D カードをサポートしていますが、そうでないものもあります。 http://shareit1.element5.com/product.html?productid=147747
また、「実際の」ゲームを動かすのに十分なほど強力です
Delphi に精通している場合は、GlScene を試してください。