Hey there! On this hot summer day, I’m happy to share a new major beta for the Citrus Engine! There are lots of new features, improvements, bug fixes and a new demo for mobile devices. It is also updated on the last version of each library.
The Citrus Engine is now on GitHub. You can easily fork it, make some pull request or add issues! The repository is built with demo contents in mind, take a look on the src package! There are differents examples for some of its features. I will built new one, if it is requested!
Only made for Platformer Games?
Some people thinks that the CE is only made for platformer games… NO!! The Citrus Engine is pre-built as a platformer engine, it means that you’ve already platformer game objects available. However you can make all type of 2D Games you want. It offers a nice way to separate logic/physics from art.
Thanks to Nape and the physics performance improvement, check this post for more details, the CE is ready to target mobile devices! It’s time for a new demo running on the web, mobile desktop, iPhone & iPad with the same source code!
The web demo. Be patient, it loads 5.7 MO. I didn’t make a preloader, to have the same source code.
Demo on mobile devices :
Graphic design are made by Pauline Oriol, from our previous Objective-C/Sparrow project : Tribus.
You will find the source on the src/mobilenapestarling package.
Particles are something very cpu & gpu greedy, it’s nice to see this demo working at 60 fps on all devices & web!
It’s something very important for me to not break the compatibility with previous version! I’m glad to say that you just have to update package import concerning physics since Nape support. Not a big deal 🙂
Now the Citrus Engine offers many options, just chose which one you feel comfortable :
– the classic flash display list, or blitting or Stage3D thanks to Starling.
– Box2D, or Nape or a Simple math based collision detection. You can create easily your own logics.
– a simple way to manage object creation, and for advanced developers : an entity/component system and object pooling.
Check the different examples in the zip!
All Box2D’s objects haven’t been ported on Nape at the moment. However I would like to thanks Nick for his contribution to the CE!
The entity/component system
I was not 100% satisfied of my entity/component system, but it seems it is not bad at all! I will improve it in the future, I need a little break before getting back to it.
Since the Citrus Engine dissociates view/art from logic/physics, you may use two pool objects! It works great with Nape, but it seems that Box2D Alchemy has some problems. I opened a ticket there.
Level Architect dropped, welcome the Inspectable metadata tag
The Level Artchitect was a good product, but it needs too much time to be supported. I’ve dropped its support on this version. I’ve always love how the Citrus Engine manages Flash Pro as a Level Editor. Since Flash CS6 support Stage3D, we can easily use this metadata tag. Take a look on LevelA1/LevelA2.fla to see its power! It has never be so easy to manage properties! Otherwise if your Flash Pro doesn’t support Stage3D, you can still use the old way!
Blitting & Simple math based collision
I’ve updated this two options for the CitrusEngine, take a look on their respective demo 😉
The CE is still in beta? I’ve added lots of new features in this version. I’m waiting for some feedback before releasing it as a stable version, even if it is already very stable 😉 Don’t hesitate to ask for new features! Shortly I will create new game demos which are not platformer games, to show that the CE is very flexible!
Workers can provide a huge performance boost. Take a look on this example using Nape & Starling. It’s definitely something I want to add in a future version. At the moment, Workers are not supported on mobile… it let me some times to know how I will integer them. I don’t want to force people to use it (too difficult for newbies). I’ve added lots of options/features to the Citrus Engine and tried to keep it as simple as possible. This one will be hard to add easily.
I hope you will like this new version! I would like to thanks Daniel for its awesome work & support on Starling, and Nick for his contribution. Keep rockin’