Over-The-Shoulder Quick Tip
When working with Open Office Writer documents that have calculations in table cells, save the file in native Open Office format (SXW), not DOC format, otherwise your table cell formulas will be lost! I was saving my invoice template including a table with cell calculations as a DOC file, but I found that after saving, closing and re-opening the document the formulas were gone and the cell entries were just flattened string values (number formatting as currency sign $ was also gone). Frustrating problem solved!
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.”
Using different versions of AIR with Flash/Flex publishing can be a hassle and requires odd code-monkey wrenching. When I need to overlay a different version of the AIR SDK over my Flex SDK I usually do a quick Google search to find the instructions. The Adobe Knowledge Base article dedicated to this usually pops right up, but my most recent search didn’t turn up any results. I discovered that the post has been renamed (seemingly to address the most common error that would lead someone to want to overlay a new AIR SDK).
Here’s the link to Adobe’s AIR overlay instructions: LINK
Here’s a quick reference to the Mac Terminal command that uncompresses the SDK package and overwrites all files: sudo tar jxvf AIR15_mac_sdk_XXXXXX.tbz2
Update: The article is now more helpfully titled again: “Overlay the AIR SDK with Flex SDK”
While we wait for Adobe’s Monocle to give us a better ability to analyze the operation of our CPUs/GPUs, here’s a few tools I heard about that will give you low-level information about what’s going on under the hood. Each of these tools will give you a visual display of what is drawn and uploaded each frame.
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 »
Ever wonder how to populate a Vector when you create it?
Here’s a way: Instead of using the *new* operator to create the Vector use global conversion to convert an Array into a Vector (note that the *new* operator is not used in the sample): Read the full article »
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:
Here’s the direct link:
Here’s how to capture a screenshot of various mobile devices while they are running:
Press-and-hold the home button then while still holding the home button down press-and-release the sleep button. The screen will flash white and you’ll hear a snapshot sound. Tested on iPhone 3GS and iPad v1.
Only solution is with a connected computer. Use the Android SDK softwware while the device is attached to your computer. http://www.addictivetips.com/mobile/how-to-take-screenshots-of-android-device. Tested on Google Nexus One.
Press the Volume Up and Volume Down buttons at the same time.
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 »