Skip to content

Posts from the ‘dev’ Category

2
Oct

Hydra is here!

Glassy look through
Finally the Adobe team released the Hydra’s tech-preview package, available for download right here: reading the documentation, there are some cool things that aren’t expected to work in the Flash player, anyway Hydra signify a huge step forward for the Flash technology, enabling the next Flash Player for custom bitmap filters, blend modes and a bunch of exciting new stuff! Also, congrats to Joa as he wrote the first non-Adobe hydra filter!

I had some difficulties installing the package since it was keep asking to terminate another Adobe installation, anyway i managed to install the beast and give it a try: i wanted to simulate a “glassy look-through” effect (as you are watching something outside of a glass door): it goes without saying there is the need to use some of the “region needed” magic in order to crop the black borders out, but i have no time at the moment, so here it is.
In order to use this filter you’ll have to download the kernel source and these three images:

ShowerNormal1Normal2

Basically, once you launched the AIF Toolkit, you load the hydra source, then the shower as the first image, and then choose one of the two normal maps as the second image, press F5 and try play with the parameters.

21
Aug

Flash Player v9.0.60.184

It seems that with the r60.184 version the vertical bar thing went away, anyway still remains that very new singularity ;)

20
Aug

Noticeable difference

I haven’t had much time to test things out, but i managed to put together an ultra simple example on how 9.0.47 and 9.0.60.120 perform differently. This is the original image i’ve used to setup things:

Original image

Read moreRead more

14
Aug

Flash Player v9.0.60.120 issues

I’m trying to get a clue of that vertical bar and it just seems very closely related to how the BitmapData’s draw() method internally works: for instance, if you have the source at hand, at line 67 of the PostProcessor.as file there is the line:

ppbmpData.draw( source, new Matrix( .5, 0, 0, .5 ), null, BlendMode.NORMAL );

The ppMatrix is the precomputed transformation matrix and, by changing that with the following, the bar will go away and it won’t crash the VM anymore:

ppbmpData.draw( source, new Matrix( .501, 0, 0, .501 ), null, BlendMode.NORMAL );

Since i do not think a mere transformation operation can be SO wrong, i’m trying to extrapolate the smallest context into which the problem can be reproduced: so far i also noticed i can get very different results between Flash Player v9.0.47 and v9.0.60.120 by changing the code in order to produce a predictable result.
In other words, i got the expected result in v9.0.47 but only the top-most output_height / 2 portion is correct in v9.0.60.120: i’m not sure if that can be related to multi-threaded optimizations in the Flash Player since by changing the process’ affinity mask seems to affect framerate and flickering only… bah! I have to dig some more…

11
Aug

Carpet’s sources

Here is the source code for the Magic Carpet demo, just unpack it in your project directory of choice and import the project in Flex Builder, making sure to resolve the dependancies as it makes use of the following packages:

Let me explain the modifications in APE: i just wanted the engine to perform the timestep in a fixed fashion, so i initially modified it to accept a value, expressed in Hz, that represents the integrator’s timestep to be used, this way no matter if different machines have different framerates, animating will be the same everywhere.
Read moreRead more