クロスブリッジ

クロスブリッジ
その他の名称プロジェクト・アルケミー
開発者アドビシステムズ
初回リリース2008年、18年前 ( 2008 )
リポジトリ
  • github.com/adobe-flash/crossbridge
ライセンスオープンソース
ウェブサイトadobe-flash.github.io/crossbridge/ 

CrossBridgeは、Adobe Systemsが開発したオープンソースツールセットでCおよびC++コードをクロスコンパイルしてAdobe Flash PlayerまたはAdobe AIRで実行できます。[1] CrossBridgeでコンパイルされたプロジェクトは、 ActionScript 3プロジェクトよりも最大10倍高速に実行されます[2] [3] [4] [5] [6] CrossBridgeは「Alchemy」や「Flash Runtime C++ Compiler」、または「FlasCC」としても知られています。[7] [8] [9]

CrossBridgeは、Flash Playerの高性能メモリアクセス オペコード(「ドメインメモリ」と呼ばれる)を使用して、メモリ内データを高速に処理します。[10] CrossBridgeは、 LLVMGCCをコンパイラバックエンドとして使用し、C++コードをコンパイル、最適化し、AVM2ActionScript仮想マシン2)内で実行できるように変換します。CrossBridgeで構築されたプログラムは、通常のActionScriptコードよりも最大10倍高速ですが、[4] [5] [6]ネイティブC++コードよりも最大2倍から10倍遅くなります。[11]

CrossBridgeは、Flash Playerムービー( .swfファイル)またはFlashライブラリ(.swcファイル)を生成できます。これらは、ActionScript 3で記述され、無料のApache Flex SDK(旧Adobe Flex SDK)を使用してコンパイルされた、より大規模なプロジェクトで使用できます。CrossBridgeは、Flash Player 11に搭載されているGPUベースの3Dレンダリングアクセラレーション(Stage3D )も利用します[12]

AdobeはCrossBridgeを使ってOpenGLをFlash Player Stage3D内で使用できるように移植し、2012年にオープンソースプロジェクトとしてリリースしました。[13] Luaプログラミング言語(バージョン5.1)もCrossBridgeを使ってFlash Playerで実行できるように移植され、Google Codeでリリースされました。[14] CrossBridgeでコンパイルされたプロジェクトでは、高速フーリエ変換メキシカンハットウェーブレット変換などのクライアント側デジタル信号処理をリアルタイムで実行することもできます[15]

歴史

2008年、CrossBridgeはAdobeによって「Project Alchemy」としてAdobe Labsのウェブサイトでリリースされました。これにより、LLVMおよびGCCコンパイラを使用して、特別に修正されたC++プロジェクトをSWFにコンパイルできるようになりました。[7]

2012年、AdobeはFlash Playerの収益化を図るため、Flash PlayerのStage3D機能とドメインメモリ機能の使用を「プレミアム機能」ブランドで制限しました。「プレミアム機能」は使用許諾されており、パブリッシャーはAdobeに使用料を支払うことになっていました。[16] Project Alchemyは、FlashランタイムC++コンパイラとして商用リリースされました。[9]

2013年、AdobeはFlashランタイムC++コンパイラをCrossBridgeとしてオープンソース化し、GitHubコードホスティングウェブサイトで公開しました。[17]「プレミアム機能」も無料で利用できるようになり、ライセンスやロイヤリティは不要になりました。[18]

参照

参考資料

  1. ^ Adob​​eのCrossBridge(GitHub)
  2. ^ 「Alchemy:FAQ」。2012年5月5日時点のオリジナルよりアーカイブ2012年5月5日閲覧Adobe Labs、「ASC は現時点ではほとんど最適化を実行しません」
  3. ^ Zotov, Peter (2012年5月6日). 「Adobeの愚かさの限界に達する - whitespace」. Whitequark.org. 2012年10月15日時点のオリジナルよりアーカイブ。 2012年10月27日閲覧
  4. ^ ab Alchemy:FAQ Archived May 5, 2012, at the Wayback Machine , Adob​​e Labs
  5. ^ ab LLVMを使用したActionScriptバイトコードの最適化、Adobe
  6. ^ ab Adob​​e Alchemy、それはActionScriptの異端か? Archived 2012-08-19 at the Wayback Machine、Unit Zero One
  7. ^ ab Alchemy が Labs にリリースされました、Adobe Blogs、2008 年 11 月 17 日
  8. ^ Alchemy アップデートが Labs でリリースされました、Adobe Blogs、2008 年 12 月 11 日
  9. ^ ab プロジェクト「Alchemy」が Flash ランタイム C++ コンパイラ (FlasCC) に、Adobe Blogs、2012 年 10 月 8 日
  10. ^ Flash Player用FlasCC、Adobe Gaming、2013年5月25日アーカイブ、Wayback Machine
  11. ^ Alchemy Archived 2020-10-04 at the Wayback Machine , Adob​​e Labs
  12. ^ XC API、Adobe Gaming、2013年4月25日アーカイブ、Wayback Machine
  13. ^ Stage3D用OpenGL、GitHubプロジェクトホスティング
  14. ^ lua-alchemy、Alchemy を使用した ActionScript 用の Lua プログラミング言語の移植、Google Code
  15. ^ AVM2におけるリアルタイムピッチ検出、Temptonik、2015年1月
  16. ^ Flash Playerのプレミアム機能 Archived 2014-07-19 at the Wayback Machine、Adobe Flash Team Blog、Adobe
  17. ^ オープンソースの Flash C++ コンパイラ、CrossBridge、Wayback Machineに 2014 年 3 月 25 日にアーカイブ、Adobe Blogs、2013 年 6 月 25 日
  18. ^ Adob​​e Flash Player のプレミアム機能、Adobe Devnet
  • 公式サイト
  • Adob​​e DevNetのAdobe Flash C++コンパイラ(FlasCC)
  • GitHubの adobe-flash / crossbridge
  • SourceForgeの CrossBridge
  • GitHubの vpmedia / crossbridge
  • SourceForgeの CrossBridge コミュニティ
「https://en.wikipedia.org/w/index.php?title=CrossBridge&oldid=1192501165」より取得