Archive for Flash

Masking a 3D Container in AS3 (FP10)

»Easily transform and animate any display object through 3D space while retaining full interactivity.« That’s one of the key features in FlashPlayer 10 according to Adobe. You might think: "Woohoo, that’s fantastic" … so did I. But actually this is not completely true.

I was trying to set a mask or the scrollRect-property of a Sprite and as long as you don’t use one of the new 3D properties (rotationX, rotationY, rotationZ, …) this works as supposed. After changing one of the 3D properties and therefore using the new 3D API the mask will not work anymore. Of course this is not mentioned in the FP10 AS3 reference.

Digital Graffiti – Spray Demo

The canvas with the van is not very nice, but just to show you a demo of the spray can. sorry for my bad spraying skills. see a description of the project here.

BitmapData.draw() is limited to 4096px

Thanks to Jens I figured out another limitation in the BitmapData class. It’s actually buried in the draw() method which doesn’t copy any pixels to the BitmapData object whose target x-/y-position is greater than 4096px (0×1000). You don’t get any error just the pixels won’t be copied. This behavior is the same in FlashPlayer 9 and 10 and of course AIR 1.0 – 1.5.
Actually this is no problem for the regular use of BitmapData in FP9 because the BitmapData size is limited to 2880x2880px but using my BitmapDataUnlimited Class and trying to snapshot a Sprite wider or higher than 4096px won’t end up in your desired result.
As you probably know Adobe changed the BitmapData limit in FP10 to a more flexible one, so you are not limited by a specific size anymore but a maximum pixel count of 16,777,215. This means that you can have a BitmapData up to 8191x2048px without using BitmapDataUnlimited but interestingly you can’t draw a Sprite with the same size to this BitmapData object. I think Adobe forgot about their own secret, undocumented »feature«.

example

Sprite: w=8191, h=2048

FP10 BitmapData: w=8191, h=2048 with snapshot of the Sprite

workaround

A workaround for that problem would be to draw everything directly to the BitmapData or if you have to snapshot a Sprite greater than 4096px you could draw it to 4096px BitmapData chunks and copy them to the huge BitmapData afterwards using copyPixels().

Update December 14th, 2008

I added a draw method to the BitmapDataUnlimited class to bypass the 4096px limit.

Using RFID in an ActionScript Application

In order to receive tags, the RFID reader has to be activated through a click on the image. After that, the different RFID tags (sorry for my tiny tags) are used to create different forms.

Read more »

Digital Graffiti – A Subculture Conquers Interactive Worlds

Finally I delivered my thesis project I did in cooperation with Less Rain. The subject was »Digital Graffiti – A Subculture Conquers Interactive Worlds« and it’s all about experimenting with different input devices for a physical, digital graffiti installation. The result is an Adobe AIR application using either the computer mouse, the Nintendo Wiimote or »VandalSpray« to paint digital canvases. VandalSpray is a digital spray can specifically designed for this purpose. It implements the attributes of a real spray can or at least trys to achieve them as natural as possible. Except a turnable bottom for changing the color, VandalSpray has no other interfacing elements than its real counterpart and therefore you don’t have to learn and explore the functionality first, because you intuitively know how to use it.

VandalSpray features includes:

  • exchangeable caps
  • color display
  • digital valve system to vary the amount of »paint« coming out of the cap
  • different colors
  • wireless

The spray can is built upon the Arduino platform and uses different sensors and electronic modules like a RFID reader, a super bright RGB LED, a Rotary Encoder, a Bluetooth module, a force sensitive resitor (FSR) and loads of wires and solder to implement the desired behavior. For tracking the spray can I use a Wiimote and the WiiFlash ActionScript 3 library and server, but this could also be replaced by a standard webcam and an adequate tracking implementation.
Because I didn’t want to put some kind of speaker in the spray can (there was no space left anyway) the spray sound is generated from the AIR app and output on the speakers of the notebook.

VandalSpray vs. Montana spray can

VandalSpray electronics

More
http://blog.formatlos.de/2008/12/12/digital-spraycan-edemo/
http://blog.formatlos.de/2008/12/19/digital-graffiti-spray-demo/

« Older Entries

Newer Entries »

About

Martin Rädlinger is an Interactive Developer & Designer. He specializes in interactive coding predominantly with ActionScript, but every new challenge is welcome. If you like his work feel free to get in touch with him. At the moment he's available for freelance work.

Contact

Martin Rädlinger
mail: mr [at] formatlos.de
web: www.formatlos.de
xing: Martin Rädlinger
linkedin: Martin Rädlinger
skype: martinraedlinger