オンラインゲームに最適な技術は何ですか。つまり、Webブラウザでプレイできますか?唯一の選択肢は次のとおりです。
- Javaアプレット
- 閃光
- Silverlight
Javaアプレットに傾倒しているのは、単純にFlashよりも優れたプログラミング機能を備えているようだからです。また、JavaアプレットゲームのグラフィックスはFlashのグラフィックスよりも安いかもしれません。私はSilverlightについてあまり知りません。
オンラインゲームに最適な技術は何ですか。つまり、Webブラウザでプレイできますか?唯一の選択肢は次のとおりです。
Javaアプレットに傾倒しているのは、単純にFlashよりも優れたプログラミング機能を備えているようだからです。また、JavaアプレットゲームのグラフィックスはFlashのグラフィックスよりも安いかもしれません。私はSilverlightについてあまり知りません。
回答:
Javaアプレットが人気がないからといって、Javaアプレットが強力ではないか、ゲームに値しないというわけではありません。実際、私は現時点でJavaゲームの開発に集中しています。私は、言語の高レベルの性質、そのクロスプラットフォーム性(C#と比較して)、Javaプラットフォーム(またはその代替のLWJGL、またはエンジン)に非常にCに似たOpenGLエクスペリエンスを提供するJOGLライブラリが好きですお気に入り jMonkeyEngine)、及び明らかに遅くCよりもその速度(++、しかしかなり速くPythonのようなスクリプト言語よりも)。
Javaを使用すると、アプリケーションをアプレットとしてデプロイして、ブラウザーで実行したり、 何かをインストールすることを好む人にJNLPの代替手段を。
Java用に作成されたすべてのツールを利用できます。すばらしいEclipse IDE(または他のIDE)、テストツール、継続的インテグレーション、Javaプログラマーの巨大なコミュニティなど。
Javaがインストールされているコンピューターの割合の統計はさまざまです(そしてバージョンはさらにさまざまです)が、Java市場への浸透についてはかなりの数を見ています。また、インストールプロセスは非常にシンプルなままであるため、Javaをまだインストールしていないユーザーがいれば、すぐにゲームを実行できる状態になります。
個人的には、JavaプラグインをインストールすることをUnityプラグインよりもfeelしません。実際、私はまだUnityゲームプラグインをコンピューターにインストールしていません。私はまったく信用していません。Javaは実証済みです。それは岩だらけの始まりでしたが、今では、何年も経って、安定して高速であり、いくつかのセキュリティ問題が続いています(しかしFlashもそうです)が、ほとんどの部分は信頼できます。Unity Webプラグインがもう少し広く普及し、実証されるまで、Unity Webゲームを避け続けます。
したがって、アプレット、Java Web Start、または実行可能JARのいずれを介しても、Javaを絶対にお勧めします。
PS ギネス世界記録で認められている世界で最も人気のある無料オンラインMMO はRuneScapeです。これはJavaアプレットとして実行され、最近デスクトップバージョンになりました。DirectXとOpenGLの両方とソフトウェア3Dレンダラーをサポートし、約1,000万のアクティブなアカウントを持っています。
誰かがそれを言わなければならなかったと思います。:)真剣に、それは素晴らしいクロスプラットフォーム(ブラウザ、OS、iPhoneなど)、マルチスクリプト言語3Dゲームエンジンです。そして、無料版とプロフェッショナル版の両方があります。
ウェブ上のゲームで面白いと思うテクノロジーはJavaScript + Canvasです。これには、ユーザーがゲームをプレイするためにプラグインをまったく必要としないという利点があります。今後のIEは、ハードウェアアクセラレーションを含むキャンバスもサポートします。3Dに最適な選択肢はWebGLですが、まだ革新的なブラウザの一部ではありません。キャンバスとisoエンジンを使用した多くの技術デモをすでに見つけています。
Flashは、多くの種類のゲームにとって依然として最良の選択です。
オープンソース
SDKはオープンソースであり、優れたオープンソース開発ツールがいくつかあります。FlashDevelopは世の中の最高のActionScript IDEだと思います。
FlashPlayerはどこにでもあります
ほとんどすべてのコンピューターにFlash Playerがインストールされており、アップグレードプロセスはかなり合理化されています。
フラッシュプラットフォーム
Flashは現在プラットフォームであるため、Flashコンテンツを展開するための多くのオプションがあり、一度だけ展開するポリシーを維持します。
図書館とコミュニティ
Flashを中心に、特にFlashゲームの周辺にも大規模なアクティブコミュニティがあります。ActionScriptには多数のライブラリもあります。他の言語の主要な「ゲーム」ライブラリの多くはAS3に移植されています。
アドビによる積極的な開発
FlashPlayerとプラットフォームは、リリースごとに改善されています。Flex、Adobe AIR、Pixel Benderなど、常にプラットフォームに追加されているものがあります。AdobeLabsを簡単に見てください。すべての偉大な物事が来るのを見るためには。
Flash IDE(そうです)、AMF、Flashゲーム用の確立されたサイトとプログラム(kongregate、mochi mediaなど)など、他にも数え切れないほどの利点があります。
まだ成熟していませんが、GoogleはNative Client(略してNaCl)と呼ばれる技術を開発しています。NaClは、ネイティブバイナリコードの安全で安全な高速実行を可能にするサンドボックスです。3Dアクセラレーション出力のOpenGLESと、オーディオレイヤーのOpenALをサポートします。
要約すると、ローカルブラウザでインストールされたハイエンドゲームをWebブラウザーでプレイできますが、速度は約5%しか低下しません。
成熟にはまだ時間が必要ですが、JavaキラーとFlashキラーの両方になる可能性があると思います。Unityはエンジンを移植しており、既にそれをサポートするFirefox拡張機能があります。
Java Web Startは、Javaアプレットよりも優れた選択肢です。JNLPを使用すると、OpenGLなどのネイティブレベルのリソースにアクセスできます。グラフィックカードを最大限に活用すると同時に、ユーザーがプラグインをインストールする必要なく、ブラウザーからゲームを起動できます(PCでJavaランタイムを使用している場合)。
jMonkeyEngineはその原則を中心に構築された偉大な3Dエンジンです。ウェブサイトでサンプルを実行しています。
スリックのエンジンは、ブラウザから起動できるJava 2Dエンジンです。
WebGLは、IEを除くすべての(最新のナイトリービルド)ブラウザーでサポートされており、ブラウザーを介してインターフェイスするだけで、OpenGL ESが通常行うのと同じパワーと柔軟性を提供します。http://en.wikipedia.org/wiki/WebGL
1つのデータポイント、Ludum Dare 18のエントリを見てください。
http://www.ludumdare.com/compo/ludum-dare-18/?action=preview
ブラウザで実行されるエントリを再生し、ダウンロードが必要なエントリを無視しました。run-in-browserのほとんどはFlash、一部はUnity、一部はJava、一部はHTML / JSです。まだSilverlightに気付いていません。