AngelScript
AngelScript 2003'te Andreas Jönsson tarafından AngelCode adlı şirket tarafından geliştirilen, videoyerli oyunlara yönelik özgür kaynak kodlu derlenmiş bir betikleme dilidir.
AngelScript, statik türler, nesne işaretçileri (C++ işaretçilerine benzer ama referans sayımı yoluyla çöp toplama ile çöp toplanan), nesneye dayalı programlama, tek miras, arayüzlerle çoklu miras, operatör kaydı ve operatör yüklemesi özelliklerine sahiptir. AngelScript, herhangi bir C++ IDE ile birlikte kullanılabilir, örnek olarak NetBeans, Geany, ve Eclipse.
C ve C++ fonksiyonları AngelScript ortamında çağrılabilir.[1][2] AngelScript'in sınıf sözdizimi C++ sınıflarına benzer bir şekilde tasarlandı: AngelScript'i C++ uygulamalarına dahil etmek için bir proxy fonksiyona gerek yoktur, bu da iki dilin entegrasyonunu kolaylaştırır.[3] AngelScript ve C++ arasındaki farklar şunlardır:
- AngelScript çoklu mirası desteklemez. Çoklu miras işlevselliği, Arayüzler ile elde edilebilir.
- Sınıf gövdesi dışında yöntemler veya özellikler bildirilemez.
- Tüm yöntemler (constructorlar ve destructorlar dahil) sanaldır.
AngelScript, videoyerli oyun geliştirmede kullanılır[4], buna dahil:
- Amnesia: The Dark Descent,[5]
- Amy,[5]
- Dustforce,[5]
- Gekkeiju Online,[5]
- King Arthur's Gold,[5]
- Legend of the Guardians: The Owls of Ga'Hoole,[5]
- Overgrowth,[6]
- Penumbra: Overture,[5]
- Penumbra: Requiem,[5]
- Puddle,[5]
- Rigs of Rods,[5]
- Running with Rifles,
- Sine Mora,[5]
- Star Ruler,[5]
- SuperTuxKart,[5]
- Warhammer: Mark of Chaos,[5]
- Warsow,[5]
- Sven Co-op[5]
- ve Jazz Jackrabbit 2 Plus,[5]
Ayrıca, Urho3D tarafından da desteklenen bir betikleme dili olarak kullanılır. Hazelight Studios, Unreal Engine'e AngelScript'i entegre eden bir eklenti sürdürür; bu eklenti, en yeni oyunları It Takes Two[7] için kullanıldı. Eklenti, Embark Studios'un The Finals ve yakında çıkacak ARC Raiders[8] oyunlarında da kullanılmaktadır. Ayrıca, AngelScript Almanya'daki Ulm Üniversitesi'nin etkileşimli 3D Animasyon programında kullanılmaktadır.[9]Şablon:Failed verification Robotik de dahil olmak üzere diğer kullanım alanlarında da kullanılmaktadır; örneğin, robotiğin davranış kurallarını programlamak için.[10]
Kaynaklar[değiştir]
Şablon:Kaynakça/styles.css sayfası içerik yok.
- ↑ Weinbub, Josef; Rupp, Karl; Selberherr, Siegfried (2010). "ViennaIPD - An Input Control Language for Scientific Computing" (PDF). Erişim tarihi: April 27, 2019.
- ↑ Golodetz, Stuart (February 2010). "Simplifying the C++/Angelscript Binding Process". ACCU. Erişim tarihi: April 27, 2019.
- ↑ Dickheiser, Michael (2006). Game Programming Gems 6. Charles River Media. ISBN 1584504501.
- ↑ Nishimori, Taketoshi; Kuno, Yasushi (May 2012). "Join token: A language mechanism for programming interactive games". Entertainment Computing. 3 (2): 19–25. doi:10.1016/j.entcom.2011.09.001. hdl:2241/00124828. Geçersiz
|hdl-access=free
(yardım) - ↑ 5,00 5,01 5,02 5,03 5,04 5,05 5,06 5,07 5,08 5,09 5,10 5,11 5,12 5,13 5,14 5,15 5,16 "Applications using AngelScript". AngelCode. Erişim tarihi: April 27, 2019.
- ↑ Orsvärn, Lukas; Riehl, Anton; Rosen, David (November 30, 2014). A good episode. YouTube. Overgrowth Weekly. at 17m 40s. Erişim tarihi: April 27, 2019.
- ↑ "Hazelight/UnrealEngine-Angelscript on GitHub". GitHub. Erişim tarihi: September 15, 2021.
- ↑ "Senior Gameplay Programmer - Games". Embark Studios (İngilizce). Erişim tarihi: 2023-11-23.
- ↑ "Animal Race". University of Ulm (Almanca). 2005. 2014-05-25 tarihinde kaynağından arşivlendi. Erişim tarihi: 2013-05-31.
- ↑ Şablon:Cite conference