AngelScript

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
AngelScript
linguaggio di programmazione
AutoreAndreas Jönsson
Data di origine2003
Ultima versione2.36.1
UtilizzoSviluppo videogiochi, grafica 3D
ParadigmiScript, programmazione imperativa, programmazione ad oggetti
TipizzazioneForte
Influenzato daC++
Implementazione di riferimento
Licenzazlib License
Sito webangelcode.com/angelscript

AngelScript è un linguaggio di scripting compilato open source, pensato per lo sviluppo di videogiochi, sviluppato da Andreas Jönsson per l'azienda AngelCode[1].

AngelScript è caratterizzato da una tipizzazione statica, un orientamento agli oggetti (simili ai puntatori C++, ma con un garbage collection che usa la tecnica del conteggio dei riferimenti), ereditarietà singola ed ereditarietà multipla con interfacce, nonché la possibilità di gestire un overload degli operatori. AngelScript può essere utilizzato con qualsiasi IDE pensato per C++, come NetBeans, Geany ed Eclipse.

All'interno di un ambiente AngelScript si possono utilizzare nativamente le funzioni C e C++.[2][3] La sintassi della classe di AngelScript è identica a quelle delle classi di C++ in base alla progettazione. Non sono necessarie funzioni proxy per incorporare AngelScript nelle applicazioni C++ facilitando l'integrazione dei due linguaggi.[4]

Esistono diverse differenze tra AngelScript e C++:

AngelScript è utilizzato nello sviluppo di videogiochi,[5] alcuni esempi sono Amnesia: The Dark Descent,[6] Amy,[6] Dustforce,[6] Penumbra: Ouverture,[6] Penumbra: Requiem,[6] Puddle,[6] Sine Mora,[6] SuperTuxKart,[6] Warhammer: Mark of Chaos,[6] Warsow[6] e Jazz Jackrabbit 2 Plus,[6] oltre ad essere supportato come linguaggio di scripting in Urho3D.

Hazelight Studios, inoltre ha sviluppato un plugin che integra AngelScript nell'Unreal Engine; questo è stato utilizzato nel 2022 per scrivere il loro gioco, It Takes Two, in AngelScript.

Un altro esempio di utilizzo è il programma interattivo di animazione 3D dell'Università di Ulm.[7] Nell'ambito della robotica, invece, si usa per programmare regole comportamentali di agenti robotici.[8]

Note[modifica | modifica wikitesto]

  1. ^ Cos'è AngelScript? (di Andreas Jönsson), su www.solvusoft.com. URL consultato l'8 aprile 2024.
  2. ^ (EN) Josef Weinbub, Karl Rupp, Selberherr e Siegfried, "ViennaIPD - An Input Control Language for Scientific Computing" (PDF), su iue.tuwien.ac.at, 2010. URL consultato il 27 aprile 2019.
  3. ^ (EN) Stuart Golodetz, "Simplifying the C++/Angelscript Binding Process", su ACCU, febbraio 2010. URL consultato il 27 aprile 2019.
  4. ^ Michael Dickheiser, Game Programming Gems 6, Charles River Media, 2006, ISBN 1584504501.
  5. ^ Taketoshi Nishimori e Yasushi Kuno, Join token: A language mechanism for programming interactive games, in Entertainment Computing, vol. 3, Maggio 2012, pp. 19-25, DOI:10.1016/j.entcom.2011.09.001.
  6. ^ a b c d e f g h i j k Applications using AngelScript, su AngelCode. URL consultato il April 27, 2019.
  7. ^ (DE) Animal Race, su University of Ulm. URL consultato il 31 maggio 2013 (archiviato dall'url originale il 25 maggio 2014).
  8. ^ Cultural transmission in robotic swarms through RFID cards, IEEE Symposium on Artificial Life, 2009, DOI:10.1109/ALIFE.2009.4937709, ISBN 978-1-4244-2763-5.

Collegamenti esterni[modifica | modifica wikitesto]

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica