roguish

Category: Adobe

ASC 2.0 Font SWF Embedding (MinimalComps Use Case)

ActionScriptCompiler 2.0 (ASC 2.0) from Adobe no longer allows font embedding. Instead you must embed font SWFs.

From the release notes: “Font transcoding has been removed from [Embed] syntax. Fonts should be pre-transcoded and embedded as a SWF, which can be performed using a tool like fontswf or Flash Professional CS6.”

This change caused problems with a project that uses MinimalComps from Keith Peters (www.minimalcomps.com) because the package uses an embedded pixel font. Solution below. Read the full article »

Mixing Stage3D with Display List — Performance Test

A demo was recently released by Adobe (Thibault Imbert, Blog Post). It features an optimized use of Stage3D. By grouping assets that use the same texture, the number of drawTriangles calls is minimized. Adobe wrapped up this principle in a little framework (called GPUSprite) based on a metaphor of a stage with layers of content containing sprites.

The framework is clever and is a great starting point for understanding Stage3D optimization. I was surprised to see that a framerate measurement layer was placed over the top of the Stage3D content in a traditional Display List layer. It was my understanding that any Display List content over Stage3D would have a significant performance impact. To test this, I modified the sample to display the framerate in a new Stage3D layer and ditched the Display List (actually, you can toggle between the 2 views). Read the full article »

AGALMiniAssembler and PerspectiveMatrix3D Classes

Looking for the AGALMiniAssembler from Adobe so you can explore Molehill? Perhaps you’re getting a compile-time error when trying to import com.adobe.utils.PerspectiveMatrix3D.

Thibault Imbert from Adobe posted the com.adobe.utils package in this blog post: http://www.bytearray.org/?p=2555

It contains these 3 classes:

  • PerspectiveMatrix3D.as
  • FractalGeometryGenerator.as
  • AGALMiniAssembler.as

Here’s the direct link:
http://www.bytearray.org/wp-content/projects/agalassembler/com.zip

Disabling the ESC Key in Fullscreen Mode

Over-The-Shoulder Quick Tip

Q: If you have a fullscreen SWF how do you prevent the display from returning to normal size display when the user presses the ESC key? An example case where this would be useful is pausing a fullscreen game and displaying an in-game menu.

A: I thought overriding the default behavior might pose a security risk, however it is not restricted. Listen for the associated keydown event for ESC and call preventDefault() on it. Read the full article »

Mr. Doob’s Hi-ReS! Stats Won’t Display — Bug Resolution

When porting an old project for iPad, I wanted to measure the FPS using the popular Hi-ReS! Stats tool from Mr. Doob:
http://mrdoob.com/blog/post/582

I was unable to make the stats module show up. I confirmed that it existed on the display list by tracing from its update method, but it wasn’t being shown on the screen. After poking at it for a while I discovered that by drawing additional content into the graphics layer of the Stats object after it is initialized I was able to force it to be shown. There may be other solutions and this may be limited to my particular configuration, but if anyone encounters this, here’s a hack that works. Below are the 3 lines that I added after initializing the Stats object. Commenting-out the 3 lines and changing nothing else will cause the Stats object to disappear. I can’t explain why — the source code looks fine. Read the full article »

To Kill or Pause an iOS App (when it’s Deactivated)

When an app is deactivated on iOS you can kill it instead of allowing it to continue running in the background (background running is the default behavior). Use the UIApplicationExitsOnSuspend property in the application configuration XML file:
<key>UIApplicationExitsOnSuspend</key>
<string>YES</string>
Adobe doc*

* please note the revised syntax and description from Holly Schinksy:
<key>UIApplicationExitsOnSuspend</key>
<true/>
http://devgirl.org/2011/06/24/exit-vs-suspend-your-ios-application/ Read the full article »

AIR 2.7 SDK Phantom Update (now with iOS fullscreen/gpu)



iOS developers trying to use the AIR 2.7 SDK have noticed that they’re unable to publish with the following combination of features: GPU/Fullscreen/Landscape mode. Adobe has updated the AIR 2.7 SDK release to fix the problem (users confirm it was fixed for iOS only), but there has not been an announcement about it nor is there any date on the AIR download page to suggest that the SDK has been updated. Get it here: http://www.adobe.com/products/air/sdk/ Read the full article »

Mobile Performance Tester — Now Live in App Stores

Performance Tester Icon
The Roguish Mobile Performance Test Application has been released on 3 mobile platforms: iOS, BlackBerry PlayBook and Android. The app is designed to demonstrate the performance difference with various Flash development settings and techniques. I’ll update this post with more details about the app and performance test results.

The app was published with Flash Builder 4.5 and the AIR 2.7 overlay.

Below are the download links in the various app stores: Read the full article »

File Object Inconsistencies in Mac/Win AIR Apps

I recently encountered 2 problems when migrating an AIR Flash Builder 4.5 project from a Windows 7 machine to a Mac. Both problems were related to external File loading and manipulation. I was going to write about my discoveries and solutions, but then did a little searching and found that Oliver Goldman (Adobe) addressed both problems in separate posts. So, instead of my original plan for this post, I’ll make a condensed post and dedicate it to Oliver Goldman. You can be sure I’ll be spending some time digging through his archives, especially his AIR Tips category: http://blogs.adobe.com/simplicity/category/api-tips Read the full article »

BlackBerry PlayBook First Impressions/Use Tips

BlackBerry PlayBook In HandMy BlackBerry PlayBook arrived recently. Here’s a few first impressions, discoveries and comments about it. Read the full article »