Archive for the ‘TECHNOLOGY’ Category

Thursday, December 16th, 2010

Chrome 9 with WebGLGood news for the beginning of hardware accelerating the web, WebGL will now be part of the main Chrome releases not just a compile option for Chromium nightlies.

Google Chrome 9 enables WebGL support by default. “WebGL is a new web technology that brings hardware-accelerated 3D graphics to the browser without installing additional software” and it can be used to create cool applications like Google Body BrowserFieldAquarium and more.

The update for Chrome 9 also sandboxes Flash, WebGL and plugins like extensions and tabs so that using them will be more secure and not crash the browser or the tab. Hopefully Safari has this soon, and then a few years from now IE may get it. Or they will put out their own DirectX web plugin so everyone has to write it twice like currently in game development. /sarcasm

Monday, November 22nd, 2010

WebSockets and many other great features are now available across the iOS devices that are updated to iOS 4.2.

You can test your devices for WebSocket support and I just tested iPad and iPhone/iPods on iOS 4.2 and it is a go.

The update also adds some other excellent Safari browser features including:

  • As mentioned, WebSocket support
  • Accelerometer support
  • Improved SVG and Canvas rendering
  • Better Ajax

The new Safari on iOS 4.2 makes the iOS platform the current best html5 mobile solution for interactive apps and games in the browser. This should add some fun in terms of interactive web, games and better web experiences for iOS users.

We hope they add in WebGL support soon, there was mention of WebGLRenderingContext but not supported in browser yet.

Friday, October 29th, 2010

John Nack from Adobe has been presenting Adobe tools exporters to html5 recently.  One is a Flash to html5 convertion tool. It looks good for converting flash vector assets to html5, but you could also use the Illustrator exporter to html5 (canvas/svg) for static assets.

This converter doesn’t appear to do anything for scripted animation or code, just exporting assets via old skool timeline. But this is definitely the right idea.

Friday, October 29th, 2010

Silverlight launched in 2007 to compete with Flash as a rich media and internet app toolkit.  Microsoft had failed before with Liquid Motion competing with Flash back in late 90′s early 2000′s.  Now, over 10 years later, Silverlight might be dying as a technology that was another competitor to Flash, due to poor timing and lack of committment.

Now Microsoft has all but confirmed that Silverlight is losing steam.

I asked Bob Muglia, the Microsoft President in charge of the company’s server and tools business, that very question and got what I consider to be the clearest answer yet about how Microsoft is evolving its Silverlight strategy.

Silverlight is our development platform for Windows Phone,” he said. Silverlight also has some “sweet spots” in media and line-of-business applications, he said.

But when it comes to touting Silverlight as Microsoft’s vehicle for delivering a cross-platform runtime, “our strategy has shifted,” Muglia told me.

Silverlight will continue to be a cross-platform solution, working on a variety of operating system/browser platforms, going forward, he said. “But HTML is the only true cross platform solution for everything, including (Apple’s) iOS platform,” Muglia said.

Silverlight was launched as a competitor to the Flash Flex framework and competing with Flash video most of all.  This was before the H.264 battles, right when the mobile scene blew up and changed the game immensely.  It was actually nice when it launched because it pushed Adobe on Flash and Flex (Flex was even later merged into the Flash brand to help it be more consistent like Silverlight).  This was good for the whole interactive space.

Microsoft is now going with an HTML5 strategy. The odd thing is that the Windows Phone is entirely Silverlight driven, no html5 support. So is Microsoft going to leave their new mobile platfform high and dry due to this change in strategy? It just seems so short sighted and reactionary over at MSFT that everything is wavering.  Who’s developing just silverlight for just Windows Phone? The timing of them stating this couldn’t be worse for Windows Phone.

Microsoft’s html5 strategy is hardware accelerated, something that Silverlight only partially has like Flash (though Adobe is changing that).  It is apparent that mobile has changed even the rich internet applications game as well as gaming in that we are back to multiplatform, native apps and non browser plugins for web content (mobile devices support no web browser plugins at all let alone Flash or Silverlight).  Still for the next 2-3 years limitations in hardware on mobile devices prevents anything software rendered to be fast (including html5 canvas and svg if there is no hardware acceleration), and due to this slowness, not able to compare/compete to compiled native apps that do have hardware access.  This has forced Adobe and now Microsoft to change their strategies to get through it.  We may see a resurgence of Flash and Silverlight like plugins on mobile browsers but not for years.

The only real place we see Silverlight is over at Netflix (maybe they will go html5 video or Flash video) and on Microsoft shop client apps.  It appears with no support from Microsoft it will fall out of favor faster. Microsoft developers are usually forced to go with what Microsoft is recommending as much of it is sold through a business channel rather than developers now.  It is good html5 and standards will be more prevalent in that ecosystem as long as they don’t start marginalizing it to proprietary elements.  But if you step back and see the rumors a week ago that Microsoft might be interested in Adobe, the mobile surge and strategy shifts at Microsoft, it seems to send out a clarion call that Silverlight is over or the credits are about to roll.

The mobile surge, standards, native, hardware acceleration and cross platform aims of current market leaders, we have the new game, again. It doesn’t appear like Silverlight was, or will be, a success.

Monday, October 11th, 2010

Pretty promising project over at PhobosLab of the Impact Game Engine running on the iOS platform using the JavaScriptCore Framework. The best part is it has all Canvas calls passed into run on OpenGL ES thus the speedy demo.

Biolab Disaster on the iPhone 3GS from Dominic Szablewski on Vimeo.

The game is running in its own process and is not using the iPhone’s browser at all. Instead, it’s just using the JavaScriptCore Framework to run the game. All the necessary calls to the Canvas API have been reimplemented with OpenGL-ES and the touch input is passed over to JavaScript to be evaluated by the engine. I of course had to make some changes to the engine, but the game source code is exactly the same as for the web version.

This would probably never fly on the App Store because it executes code or interprets it but is a very nice experiment. More discussion at Hacker News..

Tuesday, September 28th, 2010

Unity 3 has been released.  It was released to the world late yesterday.  I have been using it for a few beta releases and it is very nice and many great improvements.  One awesome improvement is the occlusion culling was ported from iPhone to all Unity builds. Other notable features are a unified editor for all platforms, deferrered rendering and more.

Grab Unity 3 and take a spin.

Occlusion Culling Demo

Unity 3 Feature – Occlusion Culling with Umbra from Unity3D on Vimeo.

Thursday, September 9th, 2010

Apple’s official statement on this topic.

Well good news, after the massive frenzy of 3.3.1 in the App Store Terms of Service, Apple has been wise to loosen restrictions on the AppStore for native apps that use scripting such as Mono, Actionscript, Lua and others as long as it doesn’t download any code (for security reasons). The apps have to be AOT Ahead of Time compiled which Unity, MonoTouch and the AIR iPhone Packager for Flash apps all use or the script has to be downloaded with the binary that was approved or an update (Lua scripting for instance).

This is a huge change in stance for Apple and basically allows Adobe Flash based AIR apps to run on the device natively again. I think this is a very wise decision by Apple to let the market decide on what is a quality app while respecting Apple’s concerns about downloading and running code that might create security concerns (non compiled script outside the web sandbox).

The only bummer is that we won’t see a C++ Unity version which was plan b. But the benefits are really great for all types of developers as long as it is safe and with Apple’s latest update, quality.

Developers using Unity, MonoTouch, Adobe Flash AIR Packager, Lua scripters etc are now all safe as long as it is AOT compiled and scripts it uses are downloaded with the binary and not downloaded later (only content and data can be downloaded unless it is in an approved app update).

All your technologies are safe… for now.. dun dun dun…

However Apple also tightened quality control so they will be rejecting bad or duplicate apps, so at the same time this has made it harder to get apps approved if there is questionable quality or too many of one type of app.  It is good on the surface but also I believe the store should be an open market where the best app wins, crap will naturally filter out.  This is probably a stop-gap for all the apps that will be submitted with AIR or other less complex platforms because more novice users will be submitting them.  So this is good for skilled developers on any platform making quality and original content.  But it could cause some problems.

Engadget has some nice covereage if you dont’ have access to the iOS developer site:

Friday, August 27th, 2010

Chromium is moving to GPU hardware accelerate rendering all types of web content as much as possibly with their latest efforts.

For some time now, there’s been a lot of work going on to overhaul Chromium’s graphics system. New APIs and markup like WebGL and 3D CSS transforms are a major motivation for this work, but it also lets Chromium begin to take advantage of the GPU to speed up its entire drawing model, including many common 2D operations such as compositing and image scaling. As a lot of that work has been landing in tip-of-tree Chromium lately, we figured it was time for a primer.

The primer they are looking at is not just rendering the content made in WebGL, CSS3 3d transformations and more but the entire final pass of the output.  This leads to some very interesting years ahead in browsers.  With Chromium, IE9, Firefox and Safari all now with aspects of hardware rendering and acceleration via the GPU, anyone not doing GPU acceleration is seemingly behind the curve that seemed to start in 2007ish to a culmination of today’s latest browsers.

After these layers are rendered, there’s still a crucial last step to blend them all onto a single page as quickly as possible. Performing this last step on the CPU would have erased most of the performance gains achieved by accelerating individual layers, so Chromium now composites layers on the GPU when run with the –enable-accelerated-compositing flag.

Web content will get really interesting over the next couple years.  Even basic computers now have a GPU and bottom of 32MB video memory.  Why aren’t we using those GPUs as much as possible for web content and web games. The time of software rendering might be coming to an end now that processors seem to have topped out and the bottom level computer is capable of handling a decent amount of video memory. It will be easier to justify useful graphics acceleration with a better user experience when we can take advantage of all the computer/device has to offer.

Saturday, August 21st, 2010

Here’s a look at another interesting flash player implementation by Joa Ebert using Java with OpenGL rendering support. It is at an early stage but has the right idea in hardware rendering to OpenGL which is easily cross platform and mobile capable with speed.


This project is pretty new but there is work to make it web browser capable either in a java applet or a plugin for IE/FF/WebKit/etc but there are also others that are out there using alternative renderers. Most of these are in early development with varying support and do not currently compare to Adobe’s Flash Player versions.  However the hardware rendering ones like JITB may beat it fairly quickly once all the other features are added.  Complete OpenGL based renderers like Unity or WebGL are fast and can run pretty heavy rendering because of hardware acceleration for all drawing and native support.

Other Flash Player implementations:

  • Lightspark
    • AS3 script via LLVM
    • Written in C++ (very portable for native)
    • OpenGL accelerated rendering
  • Smokescreen
    • runs in Javascript/Canvas/html5
    • limited support
  • Swfdec
    • Firefox plugin
    • Early development
  • Gnash
    • flash 7-9 support

Flash Players that use OpenGL as the renderer are nice because cross platform support is easier.  The reason why OpenGL is a great idea is it is so cross platform on desktop and on mobile, it is also coming soon in WebGL for the browser hopefully.

Versions of OpenGL and support

  • OpenGL ES
    • OpenGL ES 1.1 = OpenGL 1.5 and lower (fixed function)
      • Android
      • iOS devices 3rd gen and lessx
    • OpenGL ES 2.0 = OpenGL 2+ (current version 4.1 – shader capable).
      • iPhone (3GS or later), iPod Touch (3rd generation and later) and iPad
      • Android 2.2+
      • WebGL
  • OpenGL
    • Windows
    • OSX
    • Linux

There is still a clear open field for an open source player to match something like Moonlight for Silverlight or hardware rendered canvas. WebGL would be great to have in time if it gets support but it is also nice to have a compiled language in the content that works in the player faster than scripting but with the ease of scripting. Plugins are still very relevant if they can address that.


Thursday, July 29th, 2010

Pretty sweet web racing advergame for Disney’s The Sorcerer’s Apprentice by C4RL05, made with Unity. Carlos Ulloa is of course the same dude that made the Unity HelloRacer. He is also famous for starting Papervision3D for Flash but has been doing some amazing work in Unity for more immersive 3D experiences.

The game is another example of how when you need really immersive experiences for advergames or brands, Unity is looking like a great choice. Unity isn’t perfect for many things that Flash is such as video, 2d games, mixing media, mic/cam apps, and data, but for games where 3d is required it seems to be the way to go.