general

Web 3D Next Generation Interactive Experiences

Jun 03, 2009
Brian Clark

In case you haven�t heard yet �3D is being adopted more and more into your browser.  While this is nothing new, it is becoming more powerful; with better technologies and the utilization of more graphic processing devices.  The main topic of this post is: web with Flash 3D components or other framework, and how it�s making its way into more sites. 


Flash CS4 was released late last year and with it came the basic elements of 3D, X Y Z rotation, and the introduction of the Z coordinates.  It�s not really full blown 3D with materials, 3D Mesh, 3D lighting, cameras, and other advanced rendering techniques used in many 3D engines and game engines (for example).  However, these latest adoptions have introduced more advanced versions of code libraries like; one of the more famous ones for Flash is Papervision 3D, which has opened the doors to one of the first 3D engines inside of Flash.


With Papervision 3D, Flash developers have access to a large array of code classes that provide camera rendering, lighting, texturing (including BMP, JPG, PNG, flash MovieClips, and more), mesh creations (basic shapes), particles, effects, 3D environment interaction, and the ability to import 3D objects from major 3D tools like 3DS Max and Maya into the browser window through the use of DAE rendered 3D objects.


Flash sites using the Papervision 3D engine are still a far cry from having the same rendering capacity as engines like Unity, which is a game engine that runs in the browser window but takes full advantage of advanced rendering techniques, graphics accelerators, OpenGL, and DirectX support.  However, adopting an engine like Unity is not as easy as one like Flash, which is probably already installed on most if not all of your audiences� machines, but for sites that focuses on more areas like games this would be a great stepping stone. 


With Flash�s adoption rate at over 98%, it�s no wonder developers are asking for more 3D capabilities built into the plug-in.  From a front end web developer perspective, showing 3D elements with user interaction is a very attractive feature for users and takes the next step in user immersion into your site.  It seems like many more sites are popping up utilizing 3D but most of them lose their attractiveness when it becomes hard to do normal browser interactions.  In fact the best 3D sites have lots of user interaction still in 2D components that assist the 3D components which they are tied to.  A combination of 2D and 3D is key to creating very attractive sites that are engaging while not intimidating or confusing to users. 


Since our web browsers are meant to be fast and have great performance, the ability to be able to adopt 3D easily may not be hard�to integrate small amounts�but when sites add a lot of extras it increases download times which cause a lot of delays in the user experience.


The reality of Flash is that it may not be the next hard core 3D rendering engine but it can still do some great effects with a combination of 2D and light weight 3D artwork that can lead to some very nice sites that are easy to use.  Flash is very good at what its meant for; a 3D possible animation tool for websites that sticks primarily in the 2D user experience market.  With future editions of Flash I am sure we will see more and more adoption of 3D support for sites and Flash games alike.  Let�s not forget that competitors like Silverlight are making great strides to becoming an alternative to Flash but have not become as widely adopted.  Once some of these other tools come out with something more appealing to developers and users, that Flash does not do, it may become a more compelling development tool or at least an alternative.


Some examples of great sites utilizing Flash 3D components:

http://www.pluginmedia.net/clients/bigandsmall/phase1c_release/game/

http://www.ecodazoo.com/