🎉 Celebrating 25 Years of GameDev.net! 🎉
Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!
AngelScript 2.5.0c released
AngelScript 2.5.0 has just been uploaded. This version brings a lot of improvements.
The VM was updated with three-op instructions for more efficient code. The result is a much faster byte code execution, though there is still room for more improvements.
The libraries support for parameter references have been revised so that it is now much closer to how C++ developers are used to, still without compromising the safety. Operator behaviours can now be written to take any type of references, including &out and &inout, this makes it possible to register types like stream classes and other advanced objects.
An optional compiler mode allow application developer to allow direct references that work exactly as C++ references. In this mode however the scripts can potentially write illegal code that uses invalid references with undefined behaviour.
Debugging support has been improved as well. It is now possible to enumerate local stack variables and access their values if that is necessary.
[edit]Released 2.5.0a[/edit]
[edit]Released 2.5.0b[/edit]
[edit]Released 2.5.0c[/edit]
[Edited by - WitchLord on February 17, 2006 8:00:54 PM]
Excelent! Congratulations on the continued development of AngelScript! It is quite something indeed. Keep up the good work. I will be looking forward to trying out the direct C++ references soon, although I'd like to see another option that is the same 'unsafe' way C++ has with pointers - just to make using AS easier with older libraries, such as SDL with minimal modifications. Wishful thinking, I know, it is OS so there's nothing stopping me from doing it [smile]
Great, angelscript makes things like this:
possible for me, our whole engine is mostly based off of angelscript, thanks for the continued development, it IS the best scripting library I have ever used =). I especially prefer the syntax to Lua and Python, and overall to gamemonkey. Well I'm just rambling =P.
Thanks
Edit: BTW It makes things possible, because it opens up the engine to the cleaner scripted interface that I like to work with more often than not, of course now I'm not using as much of the scripting, but it's moving over, as my new common object system/emoObject cache uses angelscript.
[Edited by - Deranged on January 15, 2006 9:11:53 PM]
possible for me, our whole engine is mostly based off of angelscript, thanks for the continued development, it IS the best scripting library I have ever used =). I especially prefer the syntax to Lua and Python, and overall to gamemonkey. Well I'm just rambling =P.
Thanks
Edit: BTW It makes things possible, because it opens up the engine to the cleaner scripted interface that I like to work with more often than not, of course now I'm not using as much of the scripting, but it's moving over, as my new common object system/emoObject cache uses angelscript.
[Edited by - Deranged on January 15, 2006 9:11:53 PM]
Drew_Benton:
I'm planning on reintroducing pointers again using another flag: asALLOW_UNSAFE_POINTERS. But right now I'm concentrating on script declared classes with inheritance, etc, so I do not know when that will be. If you'd like to help me with it, you're welcome.
Deranged:
Cool! I'm really happy that you like AngelScript. I'll make sure to continue working on the library to make it even easier for you to make your game.
I'm planning on reintroducing pointers again using another flag: asALLOW_UNSAFE_POINTERS. But right now I'm concentrating on script declared classes with inheritance, etc, so I do not know when that will be. If you'd like to help me with it, you're welcome.
Deranged:
Cool! I'm really happy that you like AngelScript. I'll make sure to continue working on the library to make it even easier for you to make your game.
have not been updating myself on AngelScript.
still using a version that supports pointer.
how much efforts to move my current scripts over to this v2.5 ?
for example:
void SpawnGeneric (Point3 &location, GameEngine *terrain, string &typeName)
void Collision (int entityNum, Entity *node, Entity *othernode, HitInfo *hit, GameEngine *terrain)
still using a version that supports pointer.
how much efforts to move my current scripts over to this v2.5 ?
for example:
void SpawnGeneric (Point3 &location, GameEngine *terrain, string &typeName)
void Collision (int entityNum, Entity *node, Entity *othernode, HitInfo *hit, GameEngine *terrain)
Pointers are not yet supported in version 2.x, though I plan to reintroduce them.
Compiling the library with the AS_ALLOW_UNSAFE_REFERENCES flag, might make it easier to port your code though. A reference is after all pretty much the same as a normal pointer.
You can easily represent a pointer by registering a type, e.g:
RegisterObjectType("EntityPtr", sizeof(Entity*), asOBJ_PRIMITIVE);
Then it would just be a matter of substituting Entity* for EntityPtr in your script declarations.
Compiling the library with the AS_ALLOW_UNSAFE_REFERENCES flag, might make it easier to port your code though. A reference is after all pretty much the same as a normal pointer.
You can easily represent a pointer by registering a type, e.g:
RegisterObjectType("EntityPtr", sizeof(Entity*), asOBJ_PRIMITIVE);
Then it would just be a matter of substituting Entity* for EntityPtr in your script declarations.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement