| エンジェルスクリプト | |
|---|---|
| パラダイム | マルチパラダイム:スクリプト、命令型(手続き型、オブジェクト指向) |
| 開発者 | アンドレアス・ヨンソン |
| 初登場 | 2003 |
| 安定版リリース | 2.37.0 / 2024年7月20日 (2024-07-20) |
| タイピングの規律 | 静的、強い |
| OS | クロスプラットフォーム |
| ライセンス | zlibライセンス |
| Webサイト | angelcode.com/angelscript/ |
| 影響を受けた | |
| C++ | |
AngelScript は、AngelCode の Andreas Jönsson によって開発された、 オープンソースのゲーム指向のコンパイル型 スクリプト言語です。
AngelScriptは、静的型付け、オブジェクトハンドル(C++のポインタに似ていますが、参照カウントによるガベージコレクションが行われます)、オブジェクト指向、単一継承、インターフェースによる多重継承を備えています。演算子の登録とオーバーロードが可能です。AngelScriptは、 NetBeans、Geany、Eclipseなど、あらゆるC++ IDEで使用できます。
CおよびC++の関数は、AngelScript環境内で呼び出すことができます。[1] [2] AngelScriptのクラス構文は、設計上C++のクラスに厳密に従っています。C++アプリケーションにAngelScriptを埋め込むためにプロキシ関数は必要なく、2つの言語の統合が容易になります。[3] AngelScriptとC++にはいくつかの違いがあります。
- AngelScript は多重継承をサポートしていません。多重継承機能はインターフェースを使用することで実現できます。
- クラス本体の外部でメソッドやプロパティを宣言することはできません。
- すべてのメソッド (コンストラクターとデストラクターを含む) は仮想です。
AngelScriptはビデオゲーム開発に使用され 、[4]
- アムネシア:ダークディセント、 [5]
- エイミー、 [5]
- ダストフォース、 [5]
- 月桂樹オンライン[ 5]
- アーサー王の黄金、 [5]
- ガーディアンズの伝説:ガフールのフクロウ、 [5]
- 過成長、 [6]
- ペナンブラ:序曲、 [5]
- ペナンブラ:レクイエム、 [5]
- パドル、 [5]
- ロッドのリグ、 [5]
- ライフルを持って走る、
- シネ・モラ、 [5]
- スタールーラー、 [5]
- スーパータックスカート、 [5]
- ウォーハンマー:マーク・オブ・カオス、 [5]
- ワルシャワ、 [5]
- スヴェン・コープ[5]
- ジャズ・ジャックラビット2プラス、[5]
さらに、Urho3Dではスクリプト言語としてもサポートされています。Hazelight Studiosは、 Unreal EngineにAngelScriptを統合するプラグインを管理しています。このプラグインは、同社のゲーム「It Takes Two」をAngelScriptで記述するために使用されました。 [7]また、Embark Studiosの「The Finals」と近日発売予定の「ARC Raiders」でもこのプラグインが使用されています。[8]また、ウルム大学のインタラクティブ3Dアニメーションプログラムでも使用されています。 [9] [検証失敗]また、ロボット工学分野では、例えばロボットエージェントの行動ルールをプログラムするために使用されています。[10]
参考文献
- ^ Weinbub, Josef; Rupp, Karl; Selberherr, Siegfried (2010). 「ViennaIPD - 科学計算のための入力制御言語」(PDF) . 2019年4月27日閲覧。
- ^ Golodetz, Stuart (2010年2月). 「C++/Angelscriptバインディングプロセスの簡素化」. ACCU . 2019年4月27日閲覧。
- ^ ディッキーザー、マイケル (2006).ゲームプログラミングの宝石 6.チャールズリバーメディア. ISBN 1584504501。
- ^ 西森 健敏; 久野 靖 (2012年5月). 「Join token: インタラクティブゲームプログラミングのための言語メカニズム」.エンターテインメントコンピューティング. 3 (2): 19– 25. doi :10.1016/j.entcom.2011.09.001. hdl : 2241/00124828 .
- ^ abcdefghijklmnopq 「AngelScriptを使用したアプリケーション」。AngelCode 。2019年4月27日閲覧。
- ^ Orsvärn, Lukas; Riehl, Anton; Rosen, David (2014年11月30日). 良いエピソード. YouTube . Overgrowth Weekly. 第86巻. 17分40秒. 2019年4月27日閲覧。
- ^ 「 GitHub上のHazelight/UnrealEngine-Angelscript」。GitHub 。 2021年9月15日閲覧。
- ^ 「シニアゲームプレイプログラマー - ゲーム」. Embark Studios . 2023年11月23日閲覧。
- ^ “Animal Race”.ウルム大学(ドイツ語). 2005年. 2014年5月25日時点のオリジナルよりアーカイブ。2013年5月31日閲覧。
- ^ ブランドオフ, ジョシュ; 佐山, 弘樹 (2009). 「RFIDカードによるロボット群における文化伝達」. 2009 IEEE 人工生命シンポジウム. ALife'09. IEEE . pp. 171– 178. doi :10.1109/ALIFE.2009.4937709. ISBN 978-1-4244-2763-5。
外部リンク
- 公式サイト
- GitHub上の AngelScript-JIT-Compiler