2014 has gone and this is our yearly analysis so we can enjoy, once Â again, all the things we have done together during this amazingÂ year!Â
Do you remember our last yearÂ post “Bigger, better, faster, …. “ ? Yes, I know… that was a long article. The list of new things was incredible and we spent a lot of time writing about the most relevant features. This year isÂ not different, we were thinking about the new things that we madeÂ in the last year and we noticed that they are a lot more than the previous period! Keep reading, this will be a wild ride along all amazing things that you are currently enjoying in Flare3D.
Collisions and Physics system
Flare3D 2.7 came with one of the most wanted features in Flare3D. Our own “Collisions and Physics system”. Included into Flare3D’s core, is the fastest and mobile friendly collision’s system that you can find in Flash. We did a small set of getting started examplesÂ and weÂ even had some funÂ doingÂ our own version of the mega-hit Flappy Bird called ‘Flappy Flare’ for you!
To see what’s possible to do with it, check out the following video. All of them are using the new Flare3D Collisions and Physics engine.
if you want to know more about Collisions and Physics, Â you can also read this beautiful post.
FLSL and shadersÂ fun!
AGAL2, MRT (Multi Render Target), we added lots of new features and keep FLSL up to date with the latest Flash Player improvements and features, but we didn’t stop there, we’re adding a whole new range of innovation to support impressive rendering pipelines without affecting current workflow and still keep the designers flexibility we’re all used too, which is definitely awesome
One of the first examples was AIR Gamepad Demo,Â which was impressively runningÂ on mobile as well!
Workflow improvements withÂ Flare3D IDE
We have added a new full set of features here, from workflow improvements to a completely redesigned and improved F3D file format (which we’re going to talk about next in this article). This allows for a lot more complex and bigger projects, as well asÂ simplifying tedious and boring optimization tasks forÂ different platforms.
We have also added the new Texture options panel with a nice set of options, and more beautiful and helpful thumbnails and tool tips, and tons of improvements and optimizations to the whole tool. We’ll go in more detail onÂ all these featuresÂ in a new, coming soon blog post!
F3D binary files are back!
Before Flare3D 2.0 was released, the Flare3D’s files were saved as F3D files. F3D was a binary and compact file containing all theÂ necessary dataÂ for eachÂ 3D model. Once the Flare3D 2.0 was released, the old F3D was replaced by a new format called ZF3DÂ (whichÂ is basically a zip file with a set of files containing all the information 3D models need).Â ZF3D files use an open and simpleÂ structureÂ so that everyone isÂ able to change and mess with it without to too many complications, as well as bringing a friendlyÂ format to be exported from different 3D modeling software.
The main problem with ZF3D is that it’s largely based on XML files and its loading process could be slow, as well has having other limitations and less features to keep its simplicity. That’s the reason why we are goingÂ back to the F3D binary format. The results areÂ amazing!, F3DÂ not only improved loading times “a lot”,Â but it also optimizes file sizes depending on eachÂ Â particular platform, so for example, on mobile you can avoid some compression to be able to load things faster, but on web, you may want the smaller file you can get.
F3D is not only about file size and faster loading times, it also brings a lot behind the scene optimizations, huge memory improvements, and full range of newÂ features like shared packages,Â embedding any type of assets like xml’s, or sounds or whatever you would like to put inside, easier access to all loaded resources, the ability to upload, download and dispose packages in a more organized way, multiple scenes, and the list goes and goes 😉
So, whyÂ not removing ZF3D files then, well, both ZF3D and F3D files have its purposes, it is like having a PSD and JPG, a FLA and SWF files, in the same way, ZF3D files are losslessÂ and are useful whenÂ editing / exchange during development. Once you have all set, you can export the final F3D files for shipping your projects.
HolyÂ sparkles Batman!
AÂ new Sprite Particles system was added to Flare3D!, a powerful combination betweenÂ GPU and CPU, bringing a lot speed and flexibility at the same time. Â Differently fromÂ the currently fully GPU partciles system, the new Sprite Particles allows to treat each particle individually, and create a lot more flexibleÂ visual effects.Â Since it does not require to pre-compute bigÂ buffers, they are fully dynamic, interactive and take a lot less GPU memory as well, still,Â maintainingÂ full rendering speed troughÂ batching in fewÂ draw calls lots of particles together. All this comes with a little cost, in which we need to update particles at CPU side, so depending on each particular case, you may still want to use the old particles forÂ specific cases like fire or smoke…where youÂ don’t really need too much flexibility or interaction.
Since the new sprite particles is more about flexibility, it mostly works from as3 side, so it will require a bit of code to make things work, but while getting a lot more freedom as well 😉
This is what the “boy wonder” said when he discovered the new particles system.
Â Added static objects and automatic batching.
Optimizations are always welcomed, and this is not a minor one. We added the option to set objects as static, the engine will internally try to optimize all those objects to reduce draw calls as much as possible, which means, a lot more rendering speed!
How this works?, basically, you set the objects to be static in the IDE via the properties panel, or through the Pivot3D setStatic method in As3, and that’s it. All those objects will be sent to a Static Batch which will do its best to optimize the rendering of those objects.
This of course has some limitations, as you won’t be able to move or animate objects that are set to be static, also some features may be disabled like changing materials or setting objects to a different layers, but as any tool, you just need to use it in the right place 😉
Static batching is really cool, but dynamic batching is even more than cool It only works on specific cases, but it really does a good job!
A dynamic batch (or MeshBatch3D) allows you to groups multiple identical objects (in their geometry and materials) and draw them in fewer draw-calls, which also speeds the rendering time a lot!
It is specially useful in cases where you need to renderÂ tons of bullets, trees, game coins or pick-ups, enemies, basically, every time you have lots of identical objects.
And the best part, these objectsÂ can be moved, rotated or scaled and support camera culling.
And that’s not all!
Along 2014 we were involved in the development of two amazing projects, pushing Flare3D more and more.
The first one was Lightstorm, a futuristic racing car game that we made to demonstrate the capabilities of Flare3D, the power of FLSL and theÂ new Physics engine.
The second was Regular Show – Dimensional Drift, a racing car game inspired by the popular cartoon of Cartoon Network. The game can be played in two different modes “Single player” and “Multi player”. Was released in november and until now has more than 2 millions of plays and it keeps in the top five of the most popular games atÂ Cartoon Network.
Thank you all!
The latest section is for you guys! For those people that trust in Flare3D, for their commitment with the community and because you make incredible things with our engine. THANKS!
Â â€œMy momma always said Life is like a box of chocolates, you never know what your gonna getâ€
â€œMy CTOÂ always said Flare3D is like a box of chocolates, you never know what your gonna getâ€
Flare3D’s crew member
Usually, an advergame isn’t taken seriously. But the guys from Eccentric Engine worked hard and get a balanced and entertained racing car game and at the same time they respectedÂ the customer’s requirements.Â Chase Life is a game for Maruti Suzuki Motors to promote the launch of their new car, the Alto K10.
In the game, you mustÂ customize your car and drive fast to reach every checkpoint before the time ends. You can play it using the keyboard or a mobile device as gamepad and if you are good enough, then you can challenge your friends to beat your best score
The game is already availableÂ here!
We were in touch with Gaurav Rane, Co-founder of “Eccentric Engine” and he kindly answered our questions about the game and the development process.
– Your game looks really cool! How many people was involved on its development?
Thanks a lot The game was developed by a team of 4 people. The 3D team of two working on the modelling, texturing and lighting of the garage and track and two developers who worked with Actionscript as well as socket.io to create the mobile controller for the game.
– Choosing the best technology for a project could be complicated. Could you mention why Flash and why Flare3D?
When we conceptualised the game, the requirements were that it had to be a web-only game. Looking at some recent numbers with the games we have developed, Stage3D was chosen over Unity3D for web games. The fact that the Unity plugin is being blocked by Chrome contributed to the decision too. Our programmers have a strong background in flash and are also experienced with Stage3D, having worked with some other engines in the past.
This time we had to work against the clock to create the game. Flare3D became a no brainer because of its superb editor and superior performance. It just made prototyping a breeze and we had decided on using it at conceptualization stage itself. We also knew that given the time at hand the advanced loading functions of Flare3D and accessing objects makes it very easy. Plus the other features like integration with the Away Physics engine was exactly what we wanted.
– Which was the hardest problem to solve in the development process? Can you mention how you solved it?
The biggest problem we faced was choosing a physics engine for the game. Flare3D 2.8 was announced and we were looking forward to some great physics examples with it, so we started out with Flare3D physics. But we soon realised that not everything was possible with the current state of the physics engine that we wanted in the car, so we went ahead with the AwayPhysics integration. Of course the extensive documentation helped solve most of our problems.
Note: The refered example of Away Physics integration is included in Flare3D distribution.
– Did you received some feedback from the client?
Lots of it I’d love to share a lot of it here, but wouldn’t be able to. They really liked the overall experience of the game and this game will hopefully get them to take Gaming much more seriously. Of course, there were some questions and comments asked during the development of the game, physics related, which I am not sure, Albert Einstien would have been able to answer :p
– I think that you can learn something new in every project. Did you learn something new developing “Chase Life”?
We were looking forward to learning shader programming with FLSL when we started with this project, so that we could use all kinds of cool effects in the game. Slowly but surely we are on our way, right now we have just implemented a version of the ColorSwitchShader. Soon we are looking forward to implement way cooler stuff in future projects.
– What about the future? Are you working in a new game?
While Eccentric Engine is a Digital Marketing Company, our division Eccentric Thrill was created with the intent of creating brilliant games. While we currently build games for Brand Promotion, we are hopeful of starting our own Gaming Label really soon.
The team is comprised of people who are gamers themselves and love creating these amazing experiences for others. We have worked on some games in the past making use of other engines like Unreal and Unity, and flash was mainly used for our web experiences. Since Stage3D is progressing so well already and with the demos I have seen with AGAL2, we cannot wait to get AAA gaming experiences to the web with Flare3D. Lots of games planned for the coming year.
Are you ready to run a race?Â Play the game HERE
About Gaurav Rane:
Co-founder, Eccentric Engine. He also heads the Tech and Games development team at Eccentric Engine.
About Eccentric Engine:
Eccentric Engine is a Digital Marketing Agency based in Mumbai, India, with expertise in developing Games and Tech Experiences for Brand Engagement.Â The agency has created gaming experiences for Red Bull, Tata Motors, Maruti Suzuki among other Brands.
Monogenius is a website that offers the possibility to create your own kicks. Using a web-based editor, you can upload your desired picture and use it to decorate your sneakers. If you want to know how it works, check out the video bellow.
The project was made by Baris (you can see his presentation here) using Flare3D. To accomplish it, he developed a UVMap editor and the final result is great!
3D technology is perfect for this kind of solutions where you provide product’s customizations through a website.
Finally! Regular Show Dimensional Drift for Cartoon Network is online! Last week, we were extremely happy when we were noticed that the game was available for everyone! This is a racing game (single and multiplayer mode) made by a great and talented team.
The game is right now availableÂ at Cartoon Networks’s website and during the development process we have created a lot of tools and workflow improvements that will beÂ included in the next Flare3D’s version.
AdriÃ¡n Rodera, Art director and Game designer says about the game:
For us, this game had three major challenges. The first one, involves bringing back to life the old gamesâ€™s spirit where you felt that “win” was hard to achieve, but the reward worth it. You can find this feeling in classic games like “Prince of Persia” or “Megaman”. Today, games show a difficulty level that is like a guided ride across the parkâ€¦ these games, forgot the satisfaction obtained by the users once a hard target is reached. DD tries to recover that feeling rewarding the userâ€™s effort after every new challenge faced by the player.
Secondly was to get an online game with astonishing graphics and a smooth gameplay. This challenge is closely related to the technology that you are going to use. We evaluate pros and cons from different technologies and decided that Flare3D provides a good balance between power of rendering and development workflow. One of the most important requirements was that the game must be run in the same way through different web browsers and Flash is perfect for that, this game only requires the Flash player that is already present in the 99% of computers. Flare3D gave us all we needed to build the racing game that we wanted.
At the end, the hardest challenge… build a game including not only customizable cars and different character’s skills but also keep a “real” balance between them. This was the way we found to make every car feels different and balanced with the gameplay. This brings a wide range of driving sensations and avoids frustration along the game.
While I’m writing these last words of this post, Regular Show Dimensional Drift reached the 1st place in only three days and is the most popular game at Cartoon Network!!!