6

優れたディフェンダーゲーム(Gemcraft、Protector:王位を取り戻すなど)は、知的に非常に挑戦的である可能性があるため、私は絶対に大好きです。チェスをするようなものですが、思考が少し少なくなり、行動が少し増えます。残念ながら、良いものはそれほど多くないので、自分で作って、オンラインで公開して世界中の人と共有したいと思いました。

私はActionScriptを使ったことがありませんが、オンラインゲームに関しては、これが主な選択肢です。私はJavaアプレットの形でまともな2Dゲームを見つけようとしましたが、役に立ちませんでした。なんでそうなの?Delphi for Win32でゲームを最も快適に作成できましたが、実行可能ファイルをダウンロードする必要があります。これにより、何らかの形式でのダウンロードが妨げられ、Windowsでのみ機能します。私はJavaにも精通しており、過去4年ほどJavaを使用してきました。ただし、ゲームプログラミングの経験はあまりありません。

すべてのオンラインゲームがFlashで記述されており、防御側ゲームをJavaアプレットとして作成しているという事実に惑わされないでください。または、ActionScriptとActionScript仮想マシンのゲーム開発(AS3はJavaに非常によくています)の学習を検討する必要があります。 ...しかし、それでも、それは私にとってまったく新しいテクノロジーであり、専門的に使用することは決してないかもしれません。)

タイトルの質問に答えていただけませんか?なぜJavaアプレットではなくFlashなのか?それは「政治」だけですか?

4

8 に答える 8

12

フラッシュは、その浸透率が非常に大きいため、より人気があります。

グラフィックアセットの作成と統合に関しても、Flashはより強力です(Flash CS *はベクトルアニメーションエディターでもあるため)。また、追加のライブラリを使用せずに、サウンドやフォントアセットを埋め込んだり、ビットマップエフェクトで遊んだりするのも非常に簡単です。

最後になりましたが、さまざまな広告を追加してゲームでお金を稼ぐためにActionScript APIを提供しているサイトがたくさんあります(MochiMediaKongregateなど)。

于 2010-03-16T15:55:13.513 に答える
6

Flashは、パスとアニメーション上の個別のオブジェクト(「スプライト」)を処理する完全に構築されたグラフィックスとサウンドエンジンを提供します。

Javaでは、これらの機能はサードパーティのライブラリによって提供される必要があります。ただし、Javaは、そのようなエンジンを構築するために必要な基礎を提供します。

ただし、 JavaFXはこれを変更する可能性があります。

于 2010-03-16T15:51:42.417 に答える
4

Java側について少し洞察を提供できます。Javaの歴史の初期に、Sunは動的コンテンツをブラウザに表示する新しい方法としてJavaアプレットをプッシュしようとしました。この試みは、次の要因の組み合わせによって失敗する運命にありました。

  • Javaには、(JRE)ランタイムのロード時間が長くなりました(そして今もそうです)。
  • Javaには元々GUIツールキットとしてAWTしかありませんでしたが、AWTは制限されており、本当に醜いです。
  • より高速なCPUとJITコンパイルが登場する前は、Javaははるかに低速でした。
  • Javaは(多くの人が意図的に)IEでMicrosoftによって非常に中途半端にサポートされていたため、十分に統合されておらず、実行も不十分でした。

これらすべてがJavaに(当然のことながら)恐ろしい評判を与えましたが、デスクトップとブラウザのJavaはまだ回復していません。ほとんどの人にとって、Javaは醜く、遅く、しばしば機能しないアプリケーションの略です。それは今日でもこの汚名に苦しんでいます。

JavaとFlashはどちらもチューリング完全なプログラミング環境ですが、Javaはより普遍的であり、あらゆる種類の異なる目的のためのより大きなライブラリのセットを備えています。Sunは、Java環境をプラットフォーム間で普遍的にするよう努めたため、ブラウザー側のJavaには、通常は必要とされない多くのライブラリーが含まれています。繰り返しますが、より多くのロード時間がかかります。

于 2010-03-16T15:56:50.560 に答える
2

簡単な答え:フラッシュプレーヤーはほとんどすべてのPCにインストールされていますが、JREはインストールされていません。

于 2010-03-16T15:54:52.547 に答える
1

Flashのインストールベースははるかに広く、それが唯一の理由です。もちろん、私は自分のマシンにJavaをインストールしていません。

なぜはるかに少ない聴衆のために何かを書くのですか?私はそれが間違っていると言っているわけではありませんが、それはあなたが利益のためにゲームを作っているときの通常の理由です。

これと同等のコンソールを考えてみてください。第2世代のプレイステーションでは、ハードウェアアドオンが利用可能でした...しかし、ゲームで使用されない限り、それらは役に立ちませんでした。ゲーム開発者として3つの選択肢があり、製品と一緒にパッケージ化する-価格を引き上げる、持っていると仮定する-オーディエンスを減らす、または持たないと仮定する-最大オーディエンス、最大利益。その結果、ハードウェアは実際にはあまり売れませんでした。ゲーム開発者として、ハードウェアを持っていないと想定しなければならなかったからです。

私にとって、これはJavaとFlashの違いに相当します。インストールする必要がある場合、アクセスするための価格が高くなります...それらが最も一般的なものであり、安全で、最小のエントリコスト、最大のオーディエンスであると仮定します。

しかし、あなたが素晴らしいゲームを持っているなら、私はインストールすることを確信することができます:)

于 2010-03-16T15:50:35.783 に答える
1

Flashは通常、ゲームに必要な種類の描画、アニメーション、およびビデオ機能で優れたパフォーマンスを発揮します。これは、Flashが本来の目的であるためです。さらに、Java言語の厳密なOOの性質は、ゲームで一般的な種類のアドホックな迅速な開発環境には適していません。

著者の観点からより重要なことに、Flashははるかに一般的に展開されているブラウザプラグインです。Javaはデスクトップに浸透していません。アプレットは、その不安定性とパフォーマンスの低下(特に起動が遅い)のために歴史的に軽蔑されてきました。それは幾分改善されましたが、Sunは、不快なバンドルアップデーターで残されたユーザーの受け入れを弱体化させ続けています。最近、デスクトップJava用に多くのものを開発している勇敢な会社です。

ActionScript仮想マシンのActionScriptとゲーム開発の学習を検討する必要があります

JavaScript/ActionScriptを学ぶことは間違いなく価値があります。(これらはほぼ同じ言語であり、標準化された共通のコアを共有しています。)次に、Flashスクリプトの知識をブラウザーのスクリプトに適用できます。JavaScript / HTML自体でゲームを実装することも検討できます!

AS3はJavaに非常によく似ています...

それがCのような言語である限り、そうです。ただし、概念と実践は大きく異なります。JavaのようにJS/ASを書き込もうとすると、問題が発生します。

于 2010-03-16T16:04:24.650 に答える
0

多くのフラッシュ開発者は、ゲームの作成に乗り越えてきたデザイナーです。彼らはプログラミングツールの前にデザインツールとしてフラッシュを使用していました。

それに加えて、オンラインゲームがフラッシュで書かれることは今や前例のように思われるので、人々は「標準」から逸脱したくないと思います

于 2010-03-16T15:50:10.153 に答える
0

将来のFlashCS5はiPhoneアプリケーションを直接作成する可能性があるため、2つのプラットフォーム用のゲームを同時に作成することになります。

于 2010-03-17T14:25:12.507 に答える