Archive for the ‘Stage3D’ Category

Seriously, look all the things we did during 2014! :-)

Wednesday, February 4th, 2015

Flare3D 2014

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!

Walk through demo using Adobe AIR Gamepad

Walk through demo using Adobe AIR Gamepad

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.

Flare3D 2.8 IDE

The new and improved IDE in Flare3D 2.8

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 😉

Dynamic Batching.

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 game was inspired by the style of Tron.

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.

Regular Show

Regular Show is one of the most popular CN’s shows.

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!


like a chocolate box…

 “My momma always said Life is like a box of chocolates, you never know what your gonna get”

Forrest Gump


“My CTO always said Flare3D is like a box of chocolates, you never know what your gonna get”

Flare3D’s crew member

Customize your kicks with Flare3D

Wednesday, December 3rd, 2014

monogenius mede with Flare3D

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!


Make your design and view it in 3D

3D technology is perfect for this kind of solutions where you provide product’s customizations through a website.

Cartoon Network’s Regular Show Dimensional Drift made with Flare3D

Thursday, November 20th, 2014


Regular Show Dimensional Drift made with Flare3D

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.

Regular Show Dimensional Drift's Team

Regular Show Dimensional Drift’s 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.

Regular Show Dimensional Drift inspiration

Prince of Persia, perfect balance between difficulty and rewards!

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.

Regular Show Dimensional Drift, astonishing graphics

Regular Show Dimensional Drift, astonishing graphics and smooth gameplay!

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!!!

Regular Show Dimensional Drift MOST POPULAR

Regular Show Dimensional Drift Is the most popular CN’s game!



PLAY Regular Show Dimensional Drift

Oculus Rift DK2 example by Tom Goethals

Thursday, October 9th, 2014

Flare3D and Oculus Rift DK2


Tom have been working with Oculus Rift for a long time, some time ago he made a nice example for Oculus Rift DK1 and now he just released an updated ANE and Flare3D’s example for the new DK2.

We talked with him about Virtual Reality, Oculus Rift and Flare3D’s integration:

Which is your previous experience with Virtual Reality?

From the first time i saw the holodeck in Star Trek, the next generation, i’ve always wanted to pursue virtual reality.

In the 90’s, I was 12 or 13 years old during the first VR hype, the local computer business showcased the huge Forte’s VFX-1 HMD for PC. It really was not that good and i certainly did not have the funds to buy something like that. But it always stayed in the back of my head.

When Nvidia started experimenting with the first stereo drivers that worked with shutter glasses (before slow lcd’s became the standard) I immediately went and bought them, Battlefield 1942 looked gorgeous in stereo 3D.

After graduating i started working as a flash developer in an awesome multimedia company called BUT. ( When the first 3D engines came out in flash, before Stage3D came to the scene, I created some demo’s with stereo views in anaglyph 3D.

I read the MTBS forums ( at the time Palmer Luckey was contemplating his first rift prototype and went to kickstarter with it. I asked my boss for a developer kit and could not wait for it to arrive. After playing around with it a few evenings i wanted to create things myself. I looked around if somebody created a Native Extension for Air already. Jonathan Hart just started his ANE and a few other people contributed code. I set out to create the distortion shader (in AGAL) and spent many many nights until the basics finally came together.

Palmer Luckey Oculus Rift

Palmer Luckey and an earlier Oculus Rift prototype

By then i found out about Flare3D and it’s FLSL language, I asked for help on the forums and just minutes later Ariel came up with a working distortion shader with chromatic aberration. :-) I felt like all my AGAL studying was for nothing, but was sold on Flare3D. The support is just great!

Are you working on an Oculus Rift project?

While the implementation is already really usable there is still work to be done, latency tracking is next on the todo list. But the most important bits are done including Timewarp.

I’ll soon be making a demo project so we can pitch ideas to clients. Personally I would really like to make a space shooter. Sitting in a cockpit looking into the void of space is just something that is made for VR.

Jonathan Hart just completed work on integrating the Oculus into the award winning VR-based music video for Beck’s “Sound and Vision”, produced by Stopp Family and directed by Chris Milk which won 2 Webby Awards last year. This piece also uses Flare3D, and in a very novel way.

Interactive music video for Beck’s Sound and Vision

Awesome Interactive 360 music video for Beck’s “Sound and Vision” also uses Flare3D

Beyond that there is also already work underway to support the Samsung Gear VR and integrating Oculus’ Android SDK as a platform target for the ANE. Exciting times are ahead!

What offers Oculus Rift DK2 comparing it with their previous version?

DK1 had a 1280×800 60hz. LCD display. DK2 has a 75hz. full HD OLED display that is capable of showing a much crisper image.When Adobe AIR is delivering 75fps and you turn on the low latency mode, the difference with the first developer kit is huge. Low latency shows the rendered frame only for a fraction of the 13ms it would normally be visible to the eye. The result is that the image does not smear like in DK1 when looking around.

Besides the better visual qualities it also has an external camera that tracks the users position. makes a huge difference in not getting sick.

DK2’s only downside is that is has a lower fov. then the first developer kit has. But it’s important to know that all of this is still for developers. The final consumer version specs are in no way locked down and i’m sure they’ll be improving almost every aspect of the current developer kit for the first consumer version. for example the new prototype Oculus showed last week has completely different optics, a higher refresh rate (90hz. is hinted) and it looks like it has a higher resolution.

Is the example ready or does it need a few tweaks to consider it finished?

It needs tweaking, the perspective projection is calculated in Flare3D while Oculus provides a projection matrix from the SDK. I just can’t make sense of the one they are providing, it’s something that needs looking at so the setup will automatically work for future versions.

Flare3D and Oculus Rift DK2

Flare3D and Oculus Rift DK2

Adobe Air does vsync but in my test setup it locks to the refreshrate of the slowest monitor. Which in many cases is 60hz. That might be an area where AIR could be improved. It should check which display it is running on and then adjust. This way, when you go fullscreen on the oculus, it starts running in 75fps. The current solution is to buy a decent high framerate main monitor or set the rift as the only display which is highly impractical. According to Adobe, they have no framerate cap on AIR desktop, which means the 90Hz consumer version of the Oculus is already feasible: the world just needs hardware that refreshes at that frequency.

Which was your experience integrating Flare3D with Oculus Rift?

Flare’s api and the flsl language are perfect for the job but what is even better is the active community and a lively forum where you can go for help. The scriptable IDE is also great and allowed me to write an importer for the oculus demo scene. I’m really looking forward to the next version. People jumping in and creating fxaa shaders that can work together with the distortion shaders really gives you the energy to continue working on it.

Full example and Sources

The example, ANE, and source code are available on his Github repository here:


Thanks Tom! :-)


Tom Goethals is a multimedia developer currently employed at B·U·T (

Living in Belgium with his awesome wife and 2 kids. He worked on many award winning interactive campaigns, installations and websites.

Follow him on Twitter using @Fragilem17