header

If you enjoyed fight games like Mortal Kombat you shouldn’t miss this game made by “Ben Olding games” using Flare3D! Pay attention on each player’s movements and the detailed level design.

Choose a character, learn his movement, fight and become a legend!

image1image2

Ben Olding answered some questions about the game and developing process

What do you think about the new Flash capabilities to present 3D contents in the traditional Flash Player?

I think it’s great, as a game developer used to using 2D it opens up loads of new exciting possibilities, while still having the advantages of flash, plus I’m comfortable using flash, so the learning curve wasn’t too steep for me.

Do you have some previous experience with 3D games? Was Flare3D your first choice?

My first time doing anything with 3D! I went with Flare3D because my artist, Marco, had recommended it and favored it because of the 3D studio max plugin. But after having looked with more interest at other stage3D solutions, and having gotten to grips with Flare3D (a bit at least) I have realized that Flare3D has many features over other systems that make development easier, its more than just a 3d engine, it’s a game development engine.

How would you evaluate 3D vs 2D workflow?

Being comfortable with 2D, I always found 3D to be a bit daunting, but having tried it, it actually makes many things easier e.g. in 2d if I wanted a level complete screen, I would have to get an artist to draw something nice, but with 3D you can zoom in, change the angle and you’ve got a nice menu background or whatever, also 3D seems to be well better for doing characters, with bones, skinning etc already built in. I’ve been wanting to make a new Dragon Fist game for years (this is the 4th one), and experimented with making 2d bone systems etc, but it was very difficult to not make something that would be too restrictive

Are you working in a new game? Can you give us some info about it?

I’ve pretty much finished a game called “Jake Renegade: Freedom Flight” which is a high speed, first person dodging game. I am pretty pleased with it and I hope to release it on Android and iOS as well as on the web. You can see a trailer for it here: http://www.youtube.com/watch?v=dwFlL3rAErA

Finally. the characters have very particular kung fu movements, are there any martial artist in the team or you just watched too many Bruce Lee movies? clip_image002

A bit of both! I am a kung fu instructor, I teach the tiger style and the bird style seen in the game. Marco (who did the art) has done some ninjutsu. All of the moves in the game, except some of the special moves, I performed on camera and Marco did his best to copy the moves in 3d studio max

I am also a big fan of Chinese martial arts films. I tried to keep the game as authentic to the theme as possible, so no fireballs and all the characters are inspired by characters I’ve seen in films.

Find out more about Ben Olding Games here!

header

In many opportunities we receive the request of 3D developments examples done by digital/web agencies using Flare3D, so, if you are one of those, you will probably find this post interesting.

Miller is an Italian web design company located in Milan , their mission is “ to explore and experiment the new technologic possibilities that break down the barriers of imaginary with the aim to build up a new one, offering new professional and innovative products” and in order to achieve this and for developing some interesting apps for New Deal Productions,  they chose Flare3D.

Among the many examples that they have, we found some of them particular interesting, for example this facebook game: “The House of Mystery”, a game where you have to find hidden objects in a beautiful (and mysterious) 3D room.

house_of_mystery_1house_of_mystery_2

Some other games (and also advergames) examples

https://apps.facebook.com/themysterymusic/

http://clienti.miller.it/chupa_screamstopper/

http://clienti.miller.it/bigbabol_3level/level1/

http://clienti.miller.it/bigbabol_3level/level2/


Here a short interview with Ale (developer) and Pale (Designer)  from Miller Studios

What do you think about the new Flash capabilities to present 3D contents in the traditional Flash Player?

3D integration in user experience is a huge added value to web content interactivity.

Working on this field since long time (Miller was born in 2000) and always giving much attention to 3D in our creation, the possibility of using hardware capabilities to create interactive 3D contents with flash, was something we were waiting since Macromedia Director times, which means a very long time ago…

Do you have some previous experience with 3D games? Was Flare3D your first choice?

We used more or less every 3D flash engines which have been developed in the last few years, starting from Sandy3D passing through papervision, away3d and alternativa3d.

Flare3D was our last choice because we think it is a perfect synthesis: high performances, easy to use and very helpful to reduce developing time.

Can you tell me how many people were involved, their tasks and the needed time for developing these games?

Our games were developed by a team of two persons, a web developer and a 3D artist. A third person collaborated to realize 2D graphics.

Our team needs 2 weeks on average to realize a game, from project to final product.

How would you evaluate 3D vs 2D workflow?

2D and 3D workflows are more or less the same for us, so we wouldn’t compare them, also because most of times the first one integrates and completes the second one, in order to create an envolving and fascinating experience, without penalize performaces.

Is Flare3D an accesible technology for a Digital Agency?

As we told before, compared with other products on the market, Flare3D is a good union between high performances, easiness of development and costs.

Are you working in a new game? Can you give us some info about it?

We are developing two new games, and one of those is inspired to yellow planet. the other one is still in a brainstorming phase, so we can’t anticipate more.

Find out more about Miller Studio here!

banner

Team up with your candidate and give your opponents a bi-partisan smack down. Your favorite politicians go head to head in an all out, no holds barred smash style debate.

It´s nice to see that different gamming studios are starting to develop games for mobile devices using Flare3D. Here is a new example of this: Smash Vote by Mighty Bits!. The speech of a typical political debate is replaced for punches and kicks.

image2image4

You can enjoy this game for iOS and Android

Here a short interview with the developers (thanks Tate and Victoria!):

Why did you decide to develop this game for mobile devices?

Victoria: We’ve been developing for mobile since 2010, so it just seemed like a natural choice. Although we do plan to release SmashVote on Facebook too.

Tate: Yeah, we love the mobile game market and feel the game will reach the most people on mobile devices. Mobile is also one of the best places to monazite games if you are an indie developer.

Why did you choose Flare3D?

Tate: We’ve both been working with Flash & Flex for over a decade, so we knew Adobe AIR for Mobile would be the fastest way for us to build the game. That narrowed our choices. We ran some tests comparing Flare3D to another popular 3D engine, and Flare3D won, hands down – we found the code to be cleaner, clearer and faster to work with, and the performance was great.

Victoria: Flare Studio piqued my interest. I discovered Mixamo.com over a year ago, and really wanted to find a project where I could try out the skeletal structures and animations. I searched for political models and found some in the style we liked on TurboSquid.com. I reached out the modeler and hired him for the project. Within a few days of that initial idea, we could see political candidates fighting in Flare Studio.

Tate: We needed to be able to dynamically add biped animations to any number of character meshes and play them back based on user input. The Mixamo animations were easily consumed and integrated into the Flare3D framework. Once we got our workflow sorted out, it all worked pretty seamlessly.

How was your experience working with Flare3D?

Tate: Excellent. Going in, our biggest concern was performance. The final game runs great on our target mobile devices.

Victoria: I agree. Working with Flare3D was so easy, we plan to use it on other projects.

Any other 3D projects coming soon?

Victoria: Yes! We are collaborating with a designer in Las Vegas. We have a collection of apps in the works, all using Flare3D. They will be released simultaneously in early 2013.

Tate: We are also working on updates for Smash Vote. We always intended it to be a 2-player game, so we still have quite a bit of work to do. We will be adding special moves and new candidates, like George Bush and Bill Clinton.

For more info:

Mighty Bits

https://www.facebook.com/MightyBits

https://twitter.com/MightyBits

http://mighty-bits.com

Smash Vote

http://smashthevote.com

iOS: https://itunes.apple.com/us/app/smash-vote/id554283344?ls=1&mt=8

Android: https://play.google.com/store/apps/details?id=air.com.mightybits.smashvote

header

CityVille 2 – Can you find the differences between these two images?

image1CityVille2_Fire_Nighttime_610x375 (1)

We generally start our posts making a short description of the game, but in this case, is it necessary? If you are not one of the 100 million CityVille players, then you have probably received at least once a game invitation request from one of your friends, so we are going to focus directly in the most important difference introduced in CityVille2: 3D graphics!!

CityVille, is an iconical social game that uses 2D isometric perspective. Now, with its new 3D version raises CityVille’s user experience to new levels. The new 3D environment includes multiples points of view, high level details, a lot of impressive effects and an improved gameplay.

Zynga, as already did with Farmville 2, demonstrates that is possible to develop high quality social games using Flash and Stage3D capabilities.

city2

So, it´s not just our idea. Flare3D+Flash+Stage3D really works!

Hope this inspires you for developing next social success game!

Now, it´s time to stop reading and start enjoying this great game  ! Sonrisa

2Nov

Showing Progress!

by arieln - Posted in Features, FLSL, General, Releases

Last time, we spoke about FLSL here and here, but now, I want to share with you some of the tasks we have accomplished in latest days.

  • First, thanks to Jose Luis, as you may already noticed, we have new super improved forums! (applause), so, we’re not only going to give you a super awesome 3D engine (very modest), but also we want to improve the support and community tools!
  • We also have finished the new 3DMax plugin that already has support for lots of texture formats (including bmp, tga, psd, jpg, png, dds, etc..), automatic lightmaps batching, support for diffuse, specular, opacity, bump, reflection, refraction and ambient maps, additional support for cube maps, simplified interface, bug fixes and more!
  • There is also the new ZF3D format, which is basically a new Open Flare3D Format, which  is a zip file containing all the textures, binary files, animations, resources and a descriptor xml file you can easily edit, or simply replace assets and then convert it to a binary F3D file ready for production. This also means that you can write your custom exporters or editing tools ;)
  • Also, thanks to Ivan, who has been working super hard (trust me!) on the Collada importer, we have now much better support for *.dae files, that is supported by most of the external 3D platforms such as Blender, Maya, Cinema4D, Sketchup, etc..
  • But there are more awesome news!, the new Library (swc), the engine itself!, we already got a very nice and stable version!!! :D – I could enumerate here “tons” of new features, but we’ll go deep on each one in coming posts.
  • But….stop!, there is even MORE!!, latest days I were totally focused on the IDE, cause, we want to give you not only a 3D library but a whole workflow and tools!

And here we are! :) , this is already running with the new version!, you can see in the image, some new panels and tools, dynamic layouts, workspaces and detachable panel windows,  and a large amount of improvements ;)

So, we’re pretty close to release all these things! just a bit more of work! but for those who can not wait (like me), we’ll announce trough the forums an early access during the next week, so..stay tuned ;)

banner_test

Today I’d like to talk a little about resource and asset management in our little project: Star Force Battleship. Remember this is an ongoing series so if you missed the first episode, you can find it here.

We basically have a few different types of assets to take care of, and ideally, we want everything to be loaded once at the same time so we don’t have any hiccups during gameplay. Here’s a simple breakdown of our assets:

  • Textures.
  • Models exported from Max.
  • Dynamically created geometry.
  • Compiled FLSL shaders.
  • Music and sound effects.

Of all this stuff the most important ones are the models, textures and shaders, mostly because there’s quite a lot of processing before they’re sent to the GPU and, again, we don’t want that happening during gameplay. To make things even more interesting, we can’t just create an entire couple of geometry / material for every single bullet / enemy we have because the’d be just too many and our resources on mobile are already pretty scarce.

The loading process

The loading itself isn’t very special: We just use [Embed] on most of our assets except the sounds and then we start creating the resources we need. The first thing we create are the materials that are the ones that take longer to be sent to the GPU.

Thanks to FLSL we can create very cool effects in a very optimized way, with the best examples being the scrolling background, the “cylinder” texture and the animated explosions. Just in case you don’t remember how the game looks, here’s a commented screenshot:

FingerAttack-annotatedscreen

Let’s take the scrolling background material for example. We load it like this:

We tell Flare3D to load the texture and then we create a new FLSLMaterial that contains a 2D sampler called “texture” that will hold the texture we just started loading. Finally, we upload() the material by hand. This is very important: Flare3D, by default, will only upload material buffers when they’re actually used. While this is a reasonable approach most of the time, specially on desktop computers, here on mobile that would probably freeze our game as soon as we enter the level. By calling it by hand we make sure that by the time we finish our loading state, everything is ready to run.

Something similar is done for our dinamically-generated meshes like the bullets: We create a single Plane instance that will be cloned later. Something like this:

Simple stuff right? Once this mesh is created and uploaded, cloning it to create our bullet pools isn’t as costly as creating and uploading a whole new instance. But pools, my friends, is material for another chapter of this adventure. Let’s call it a day for now Sonrisa

Stay tuned for more!

We are going to open a “request for beta” very soon, so, it’s a good time to introduce some of the concepts of the new version.

If you didn’t see the previous post, you may want to take a look first here.

If this is your first time in the shaders world, this short description may be useful: (from wikipedia)

Shaders are simple programs that describe the traits of either a vertex or a pixel. Vertex shaders describe the traits (position, texture coordinates, colors, etc.) of a vertex, while pixel shaders describe the traits (color, z-depth and alpha value) of a pixel. A vertex shader is called for each vertex in a primitive (possibly after tessellation); thus one vertex in, one (updated) vertex out. Each vertex is then rendered as a series of pixels onto a surface (block of memory) that will eventually be sent to the screen.

How do I use them in Flare3D? The process is very simple!

First rule! don’t panic! at the beginning you may get a bit confused, but you’ll see pretty soon how easy and fun is to play with shaders ;)

  1. Write your shader in a file with an (*.flsl) extension.
  2. Drop the FLSL file into the Flare3D tool (image above), and it will output a file with the same name plus a (*.compiled) extension.
  3. Embed or load the compiled shader file into your AS3 project.
  4. To use your shader, you can create a FLSLFilter to use in your Shader3D mixed with other fitlers, or you can just create a FLSLMaterial for a static material.

So, let’s start from the basics and take a look at some of the data types availables in FLSL:

  • Namespace: Yes!, namespaces, like in AS3, you can import different packages (namespaces in flsl) to make your shader code easier.
  • Samplers are the data type related to textures. You can use sampler2D for traditional 2D textures or samplerCube for cube map textures.
  • Techniques: In each FLSL file you could have one or more techniques that define different behaviors for the shader like, different profiles of the same shader, or simply different materials or filters in one file.
  • Outputs are the variables that defines the final state of the shader, at minimum, each shader should write the vertex position and fragment pixel.

There are other data types that will be detailed in future  posts, but for now, let’s see what this code does:

sampler2D texture

We declare a variable “texture” of type “sampler2D”. Samplers are public variables and they are exposed also on AS3 side so you can change it  also by code.

output vertex = transform();

In this line, we declare a variable vertex of type output and assign to it the value returned by the function transform() (declared in flare.transforms), which contains a simple vertex multiplication to transform the raw vertex data into the perspective vertex position into the screen.

output fragment = textureMap( texture );

And finally, the declaration of the variable fragment of type output also, and assign to it the value returned by textureMap(), which gets the pixel value of the sampler texture passed as a parameter.

The output data type, is a dynamic one, and it is reserved for certain output values. In the case of  veretx and fragment variables, they are declared as float4 values which represents a XYZW for the vertex position and RGBA for the fragment.

So, there are so many new things here…but don’t worry!, with just some examples you’ll see how much powerful and easy is to get around it.

See you in the next part!.

header

Ever had dreams of riding the best horses in the world? Now you can do it with the game “Turf Stars” developed by TFXmedia using Flare3D.

Choose the distance, the surfaces and horse and start participating for great prizes. This website provides the option to run in different kind of tournaments and choose among many horses to run according to your membership license.

image1image2

The game runs in flash and uses all stage3D capabilities in order to provide a much realistic race experience.

Here a short interview with Sebastian Barrot from TFXmedia  that explains us a little more about the developing process:

Why did you decide to develop the game in Flash?

The game was requested by one of our clients that wanted to develop a horse game race, and together with them we decided to develop the game that you can now see online. The idea of using flash, was basically for the penetration in devices, and that it doesn´t requires any plugins.

Was this one your first project using Stage3D and Flare3D?

Yes, this one was our first experience, hopefully the first of many other games.

Which one were the benefits of working with Flare3D?

The main advantages provided by Flare3D were the models integration and the behavior assignment directly in AS3, this way programmers didn’t have many difficulties when migrating from 2D to 3D.

You can play the game here!

banner_test

The last few weeks I’ve been busy with a fun new little project: A mobile game for Android and iOS. As you might remember, this isn’t the first time we talk about using Flare3D on mobile devices, but back then it was a quick proof-of-concept port of YellowPlanet using Flare3D 2.0.48 running on an iPad 2.

FingerAttack-screen2This time, however, things are a little different: I’m using bleeding edge builds of the much awaited Flare3D 2.5 and my target device is way less powerful. The idea is to get a complete 3D game running smoothly at 30 FPS on a Motorola Droid 2 smartphone. We realize that this device is a little old and underpowered, but that’s pretty much the idea, to push our code to the limits. After all, if we get it to run properly on this device, it should work great on anything more powerful. So, challenge accepted! :D

The idea is to share here in the blog different aspects of this project from time to time and for this first installment, I’ll talk a little about what the project is and what are the main challenges that it presents: The idea is to make a vertical space shoot’em up with full 3D graphics, background music and sound effects. The game must feature enemy squadrons attacking you, plenty of bullets and animated explosions all around. But one picture is woth a thousand words, or so they say.

So, a few topics I’d like to talk about:

  • Asset creation and management: As you can see, there are enemies, different kinds of bullets, the player ship, background geometry and explosions. Since loading and setting up all that stuff can take some time on mobile due to hardware constrains, we have to be very organized and avoid any kind of loading during gameplay.
  • Multiplatform development: Even though the Flash and AIR platforms excel at portability, there are still things to consider like screen resolutions and aspect ratios. We’ll show you how to handle these topic as painless as possible.
  • Lots of collisions! It isn’t just between enemies, bullets and the player, it’s also possible to collide against some of the background elements. Since 3D collision detection can be expensive, specially on mobile, so we had to figure out a more lightweight approach.
  • We want the game to look as good as possible while mantaining a smooth framerate. Animated explosions, scrolling backgrounds and shiny ships / structures, we make use of some FLSL magic to make everything pretty and fast.
  • Object pooling: We must be able to create and destroy items all the time while using as little CPU power as possible and keeping memory activity controlled. We really don’t want the garbage collector affecting our precious framerate.
  • Manual drawing. In order to have more control and flexibility in some situations, we need to draw some objects by hand instead of just adding them to the scene. We’ll show you why this can be useful in certain situations and how it’s done.
  • There are a few more topics that I’d like to talk about but, for the time being, this should give you a general idea of what you’ll be getting each week. Stay tuned for more! :)

    3Oct

    Hello FLSL!

    by arieln - Posted in Features, FLSL, General, Tutorials

    It has been a long journey since we started with the FLSL project (Flare3D Shader Language) , and I can guarantee that it was one of the hardest thing we have ever made!

    So, being so close to the coming release, I want to take a little time to share some details and examples about why is FLSL so important and what does it mean for you.

    FLSL is a very special (and loved) component of the coming version, is like the heart of the engine!, lets say…

  • It allow you to modify the appearance of each object / material / pixel on the screen.
  • You can not only make things look better, but also faster!
  • It gives to you full control…I mean, it puts all the render pipeline into your hands!!, you will be able to twist the engine to its limits!
  • It’s a very simple and powerful language, you will not need to deal with AGAL/Assembler or low level code.
  • It produces optimized bytecode and deals with all the hard and boring stuff for you :)
  • It is the first shader language based on a dynamic virtual machine (we’ll talk about this later).
  • It Rocks!! ;)
  • What can you do with FLSL?, basically all kind of better looking materials, post process filters, special effects, shadows….the sky is the limit ;)

    There is so much to talk about, but enough for now…..show me!!!!…show me!!!!

    Introducing FLSL!