Sign in to follow this  
SiddharthBhat

What's everyone doing with Angelscript!

Recommended Posts

Hi all!

 

Being pretty new to programming (and Angelscript in general), I'm wondering for what purposes everyone's using Angelscript :)

 

I've been using it for around 3-4 months now for my 2d game engine.

 

What about you guys?

Share this post


Link to post
Share on other sites

Hi

 

I'm new to Angelscript too (and many years of c++), and it's the first time I use a script language so I can't compare it to another, but I'm totally satisfied of this one.

 

I'm searching a script engine for my 3D tool to manage some game logic and some animations,  I'm very happy of the result, it works perfectly and it is very fast, so thanks to Andreas Jonsson ;)

 

here a presentation of my project : http://irrlicht.sourceforge.net/forum/viewtopic.php?f=6&t=48064&p=276937#p276937

Share this post


Link to post
Share on other sites

Well, AngelScript is my project so I don't really use it in the sense your asking for, but I do have a 2d game engine to try out some things with, and there is also the old texture generator that I wrote using an early version of AngelScript. 

 

 

 

You may also see some other uses of AngelScript here: Applications using AngelScript.

Share this post


Link to post
Share on other sites

Hey! 

 

I use AngelScript for a large amount of months already. I use it as the scripting engine for my game engine, running on every platform. It features a powerful scripting API for making awesome games that run immediately in all browsers(like FLASH), all desktop platforms , android and iOS :)

Share this post


Link to post
Share on other sites

AngelScript is the scripting language of choice in my 3D game/rendering engine Urho3D http://urho3d.googlecode.com , where most of the C++ objects and functions are exposed to script, except low-level access like direct modification of vertex buffer or texture data.

 

The performance, especially in recent AngelScript versions, is very impressive. In an Urho3D example game I had an unintended O(n^2) algorithm going on in script without noticing it at first. Basically, each AI enemy was scanning the whole scene for new targets each physics/logic frame (at 100fps), which is of course stupid. But that still worked for up to 50 enemies. After changing it to cache the last found target it can run a lot more enemies smile.png

 

Share this post


Link to post
Share on other sites

I am working on a nodal graphical software Photo-Reactor and after three days of messing with the angelscript, I am 100% positive this will become a great part of the software.

I previously contemplated to write my own bytecode interpreter as nothing I found was suitable and I need both 32 and 64 bit version. I am absolutely glad I spent the time looking around, the angelscript is exactly what I was after. Big kudos to Andreas. The angelscript is a beast. What I love the most is that it is c/c++ syntax and it is brilliantly plug-and-play.

More about the project:

http://www.mediachance.com/reactor/index.html

 

interface4.jpg

Share this post


Link to post
Share on other sites

The script works like a charm in the development version (plugged it all today). I started from your texture generator demo, creating similar image class, not realizing the library changed a bit from there... but I got my bearings very quickly.

 

One thing I would like to have more explained is the typing convention with the reference sign @.

say you have

void function(image @img)
{...}
 
image@ img = @image(200,200);
 
function(@img);
 
is this @ on the function(@img) just for convention? Because it works as function(img) as well.
 
Same with the 
image@ img = @image(200,200);
omitting the @ from the front of image(200,200) works as well and seems to not do anything different, but is there any difference or it is all for convention?
 

[attachment=15627:angelscript.jpg]

Share this post


Link to post
Share on other sites
In most cases the compiler will be able to implicitly add the @, as it knows that what is expected is the address or handle of the object rather than the value. You'll need to be careful with the @ for the left hand value in assignments. Without the @ symbol you're doing a value assignment and with the @ symbol you're doing a handle assignment.

Share this post


Link to post
Share on other sites

Thanks, I do understand the left hand requirement, I just got surprised by the @ on right side of assignment. Anyway, it is logical.

Share this post


Link to post
Share on other sites

I am a chemical engineer working for Eastman Chemical Company.  We develop a software tool which we use for chemical process control and simulation.  Our software allows users to write scripts to support their simulations and enable custom models or calculations.  We were using Microsoft's scripting engine (VBScript and JScript), but we never liked the language and were not impressed with the effort required to expose our object model through the script.

 

Microsoft appeared to have some bugs in the latest version of their scripting engine, which ships with Internet Explorer.  We didn't have control over the distribution of the scripting engine and were having too much trouble making our application work between versions.  We started looking for a replacement, and it was looking like we were going to implement Google's V8 engine or Mozilla's SpiderMonkey.... until we stumbled upon AngelScript.

 

AngelScript has almost everything we need, and the source is very readable.  Thanks Andreas!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this