I have been following the Loom Engine since it was first publicly released. I even did a five part guided tour of Loom Engine functionality, so this is one that I’ve been keeping an eye on. One of the major aspects of Loom was it was layered over top of Cocos2D-x, for better or worse.

(Sadly, not that Loom)
In this release, that has has changed.
Loom Engine
The Loom Engine saw a huge amount of work this sprint. You will notice substantial gains in performance and stability.
We shifted to the new bgfx-based renderer this sprint, improving Loom2D performance substantially and setting the stage to support DirectX and other graphics APIs. Cocos2DX is now unsupported.
We have extended Loom2D with some new features and filled in some missing features:
* You can specify z-sorting mode to have C++ sort large numbers of sprites for you. This is demonstrated in IsoVille.
*center()method on DisplayObject to set the pivot point to the center of the DO.
* Keyboard input now works.
* Touch handling is much better.
* TMX loading/rendering works (now implemented in LS).
*loom2d.animationpackage is ported.
* Text rendering/text input works!
* Hierarchical alpha works.All package names are lower case now. If you run a sprint27 project under sprint28 you will see a lot of errors due to this; we recommend doing a replace-in-files to replace all your
import Loom2D.Display.withimport loom2d.display.and so on – this will get you up and running within minutes. Don’t do it by hand unless you like menial labor! đŸ™‚Loom projects now inherit from
loom.Applicationand do not require a main.ls any longer.Cocos2DApplicationandCocos2DGameandApplicationare all combined now.Feathers is now a standard Loom library and available to use in your projects!
The profiler works, and also reports a lot of object allocation statistics. Use
profilerEnableandprofilerDumpin the Loom console to start it and have it report results.Porting Feathers (50,000 lines of AS3 code) drove major improvements to LoomScript. Wins include:
*is/as/instanceofnow are compliant with AS3/JS standards.
* Allow{foo: "bar"}style Dictionary literals.
* AddedNaNandisNaN, and some useful constants onSystem.Number.
* Convenience for porting:try/catch/finallyparse, but thecatch/finallyblocks are never run.throwtriggers aDebug.assert. Vararg type specification is now allowed (but does nothing).new <String>[]syntax is now supported for initializingVectors.
*Arrayis now an alias forVector.<Object>.
* Fixed crashes related to printing too-long strings withtrace().
*Vector.push()is now much more efficient for pushing a single item.
* You may reference properties viasuper, ie,super.x.
*trim/splitwork properly now, and are much faster.
* AddedNumber.fromString.
* Added a Base64 utility class.
* ByteArray gainsuncompressand thepositionproperty.
*Stagegains a method to dump the DisplayObject hierarchy; it also has a bunch of nice new methods for dealing with scaling/native size.Loom CLI
Loom CLI’s
loom newtemplate was updated to use the new Loom2D APIs as well as package naming convention. Also the default Curse Font color was changed to Blue, as the white font tended to disappear on the default background.We added new commands:
*loom gdbLaunches the current Loom project under gdb to help debug runtime crashes.
*loom gdb compileCompiles the current Loom project under gdb to help debug compiler crashes.
*loom android releasePrepares a release-ready APK! It has options to set the keystore and signing settings.
*loom initSet up the current directory to be a Loom project. Mostly useful for tool developers.
*loom build android --unsignedwas removedYou can add –verbose to any CLI command to get more log output.
CLI now explains why it asking for your system password to update on OSX.
So, Cocos2D is out and a custom C++ renderer is in. Additionally they added support for the feathers UI library as well as TMX loading/rendering. There are other changes as well as numerous bug fixes, mentioned in the release post. Loom is no longer completely free, although they offer a free option and quite reasonable pricing. Of course, if you signed up when I first linked it, it’s still free for you.
News Programming
