C/C++ to Flash Compiler

As an example of the complexity of this project, the engineers ported the C++ version of Quake 1 engine into Flash Player and it worked perfectly and performed well. It is an extreme case but showcased the potential of this project.

[flv:http://media.brajeshwar.com/v/games/quake4-intro.flv 640 360]

The Quake 4 Intro video is here just to serve as an eye-candy.


While browsing around Flash/Flex blogs, I stumbled on an interesting article from Ted — Extending Adobe Flash Player and Adobe AIR with C and C++ via ActionScript 3.

The interesting thing as told by Ted was that Adobe’s Engineers are working on an internal project which is sort of a cross-compiler for ActionScript allowing any c/c++ code to run in the Flash Player or Adobe AIR. This is a rather nerve racking feat and Ted have already written of many interesting implications for extending Adobe’s platform in terms of legacy code, programming languages, and other open source code libraries.

Part of this implementation includes a pattern in ActionScript that allows for “green threading” that supports executing synchronous code in the asynchronous ActionScript virtual machine. The work done here is quite groundbreaking and has highlighted quite a few performance improvements in the current virtual machine while expanding the capability of the platform.

Adobe engineers and hackers have ported the C++ version of Quake 1 engine into Flash Player and it worked perfectly and performed well. This is extreme engineering and an utmost over-the-top expectation from the Flash Player. What if multiplayer games can be played without even downloading a piece of it, right off the browser, have all the office tools working flawlessly right inside your browser — well, it is rather limitless of what you can do; think of it and it might just be possible.


Don't like it? There are lots of published articles, pick a random one.

Brajeshwar posted this article on Thu, Feb 28th, 2008 at 1:19 pm
Categorized under Featured, Technology and has the following tags

Prev Article:

Next Article:

Archives: Visit the Archives for more articles.

Comments Post Yours

There are 7 responses so far. You can follow any responses to this entry through the RSS feed. You can leave a response, or trackback from your own site.

  1. Do you know about Jake2? Google it and get impressed. Because that is already what you are talking about — multiplayer Q2 using OpenGL without a real installtion etc.

  2. Honestly, the above Quake 4 trailer is completely unrelated to the article and might be misleading.

  3. Sorry Tim. You’re right and I’ve added a note that the video is just for eye-candy!

  4. “C/C++ to ActionScript compiler” might be a bit pulled out of proportion. As far as I know there is no ActionScript of any kind involved. The compiler compiles C/C++ code to AVM2 byte code, which has nothing to do with ActionScript at all.

  5. Related to that; there is some effort done to convert c# binary to actionscript 3 source. Have a look at jsc.sf.net.

  6. Can someone tell me how to retrieve this compiler or any sample of how using an application (or a c++ dll) in an actionscript. thanks for help!!

  7. C++ -> AVM, it’s only ground breaking for Adobe and the Flash Player, the once Macromedia Director now Adobe have had C++ support in “Xtras” for years in the shockwave player. I’m guessing the C++ to AVM proto stuff for Flash is in prep for the next pahse of Flash which will be to use the “Xtras” route.

Post yours

Sidenotes

Quick notes, scribbles, somehow related to this website and to what I do. Or perhaps I'm just plain lazy to make them into a full article.

12 Hottest Geek Girls on Twitter

So, you have seen the 12 Hottest Geek Girls (via Digg). However, they forgot to link them to their, hmmmmmm errrr, Twitter profiles so you can follow them. Or perhaps they felt -- they're popular ...13th Oct, 2009

Great Indian Developer Summit 2009

I got a Press Release of the upcoming GIDS '09 and here is an excerpt. The summit's program covers Java, REST, Unit testing, Groovy, Spring, Struts 2.0, SOA, Cloud Computing, Web Services, JRuby, RoR, Ruby, JVM, ...21st Jan, 2009

The flourishing gun market in Pakistan

VICE Travel: Darra, Pakistanby Top-Notch112 (Via: Deep Green Crystals) 20th Jan, 2009

Angry Ringtone for iPhone and others

[audio:http://audio.brajeshwar.com/angry-ring-ring.mp3] The ANGRY RINGTONE for iPhone. (Click the PLAY button above!) Download * iPhone Ringtone (.m4r) * MP3 Ringtone (.mp3) * Zipped (both .m4r and .mp3) To use it as an iPhone Ringtone; just double click the file "angry-ring-ring.m4r" and it ...15th Jan, 2009

IIM Ahmedabad's Leverage 2009

Leverage, the Venture Capital and Private Equity Club of IIM Ahmedabad and the Centre for Innovation Incubation and Entrepreneurship bring to you the 1st edition of the Venture Capital and Private Equity Conference on the ...12th Jan, 2009

View the Sidenotes Archive

Play the Penguin Game

Recommended

  • AS 2.0 Reference Reference for ActionScript 2.0 Programming Language used in Flash. Primarily stashed here for my own personal reference.
  • ActionScript 3.0 Reference Flash/Flex ActionScript 3.0 Reference.
  • o! Just Me Of colorful cultures, entertainment, media, life hacks, music, books and movies from hollywood & bollywood.
  • Ode to Apple Dedicated to Apple – Mac, iPhone, iPod, iTunes, Quicktime, Apple TV and all the awesome softwares for the Apple Mac.
  • Downloads All downloads, Free and Open Source.
  • Not Safe for Work Ever clicked a link and felt embarrassed with the content in front of your co-workers? Ever caught unaware because the funny link your friend sent was a little beyond funny? Let’s minimize that with NSWF.

Download free Brajeshwar Wordpress Theme

Brajeshwar

Brajeshwar I firmly believe in keeping things simple, easy for users and I envison pushing the technical envelop time and again for the betterment of viable commercial and practical applications. More about me.

Photos

More photos on Flickr

Member of 9rules Network

Since its inception on 11th June, 2001, "Brajeshwar" has 972 Articles and 6,637 comments, contained within 17 categories and 1,567 tags.