るJavascriptエンジンに組み込みます。[定休日]
-
01-07-2019 - |
質問
したいJavascriptを埋め込みに趣味でゲームエンジンです。現在では第5世代のJavascriptエンジン(すべての最適な高速)思うエンジンを選択した組み込み、C++の枠組みと実際の使embedingで)?
注意:だか"を明らかにすいDOMスクリプティング又は書面でJavascriptをブラウザです。
こちらは編集リンクを、これまでのテーマに関するイベントスレッドから
- SpiderMonkey
- tracemonkey (注:下位互換spidermonkey):
- V8
- Squirrelfish
ちなみに、私のユーザは、既に組み込みでゲームエンジンの約5倍です。
しかし今は趣味でプロジェクトではないかと思うのJavascriptで知られるほとんどのwebアプリケーションの開発者およびそのECMA、フラッシュやフレックスの開発、ゲームエンジンでは、Javascriptを使用して、XMLのためのスクリプティングがユーザー向け、これに応じた商品を提供できるより大きなユーザーベース(つることになっ的にコミュニケーションをゲーム)より一Lua(あたっぷりの方!).
の記録をまとV8こなうC++スタイル。
解決
MozillaのSpiderMonkey であり、記載されています。●このC APIで簡単にラップも可能です。で作成するスレッドを安全に役立つゲームからうまれた自主要論理スレッドとユーザーインターフェイスロジックに。
GoogleのV8 が良い選択できC++を用いたが、今ではもうほとんど経験がなくとられている。による の書類 ( ダニエル-ジェームス),V8はスレッドセーフではありませんが、変更する場合があります。
ものもありま WebKitのSquirrelFish, が見られませんでしたがスタンドアロンバージョンのことなのです。
他のヒント
また、両SpiderMonkey V8.とSpiderMonkeyらないものです。なかったものの例mozilla.org をコンパイル。
V8手のボックスにも基本的なC++ <->Javascriptの相互作用をいか。あgoogleリストを使用する人V8んで私の質問の答えになっています。
ていると思いv8だけるx86、x64armプロセッサーのようです。可能性のある欠点になります。
についてスレッドの安全性から、 include/v8.h:
* Multiple threads in V8 are allowed, but only one thread at a time
* is allowed to use V8. The definition of 'using V8' includes
* accessing handles or holding onto object pointers obtained from V8
* handles. It is up to the user of V8 to ensure (perhaps with
* locking) that this constraint is not violated.
お問い合わせくださいソースファイルのようになdoxygen documentationもあるんですが、そのようなもの).
更新: このコメントが削除されたのだろう。のようになv8っ Isolate
オブジェクトを表すインスタンスのエンジンです。単一の Isolate
インスタンスでしてのみ使用することができる単一のスレッドがその他の Isolate
インスタンスで使用できる他のスレッドでも同時に行います。
はJavaスクリプトの適切な言語のためのゲーム?多くのゲームであり、 Lua プログラミング言語のためのソフトウェアですで容易に統合では非常に小さいため、統ほとんどすべてのプラットフォームでも容易に拡張できます。
少し話がそれますが、思考の外には可能なセーフティボックスに重要なことであるものです。
というときのスクリプティングエンジンおよびc++でも考え chaiscript.あるecmaスクリプト(~Javascript)十分な空き容量がある組み込み可能です。
売り手からのページ:
...ChaiScript、一方で、さらに 統合のC++です。...ChaiScriptないメタコンパイラは、図書館の依存関係は、構築 システム要件や継手荷物をいう。でき シームレスとC++の機能をまくのです。ありません るということに明示的に型で機能を中心と.
とChaiScriptでき、文字通りスクリプティングを開始申請により するプログラムは変更をお 構築手順です。
思待TraceMonkey、次の進化SpiderMonkeyす。より速く、より良い設計を行う。(使用のコードから寄せられたAdobe Flash).
Tracemonkeyを誇りに繰り返し行動をより高速に積極的に最適化構造の実行時に実際の使用量は、aughtをお手軽にゲームの増強を進める。
みが可能です。純益:
http://javascriptdotnet.codeplex.com/
を実装するGoogle V8.できるコンパイルやJavascriptを直接ます。純コードで、供給CLIを起動するオブジェクトが使用するJavascriptのコードです。V8は、最高のエンジンも作成されたパフォーマンスを生成することができネイティブコードから可能です。
また、見たいと思い V8 ます。か新しいものです。
私の意見v8で絶叫高速javascriptエンジンを思いのまま独自のクロス-プラットフォームのサポートとしても成長してます。