something in the way

a tumblog about design + code
Jan 16

Firefox 4: WebGL enabled, Hardware Acceleration, Faster Javascript, WebConsole, …

Media_httpi81photobuc_egimg
Firefox 4 in beta to be released soon, also joins the WebGL ranks with Chrome 9.  Safari has it in nightlies and IE hasn’t even mentioned it.

There really is too much to list as this release is feature packed! Of course the most exciting being WebGL and hardware acceleration from our perspective.

Firefox 4 now has WebGL enabled by default. Based on the original 3-D Canvas work by Vladimir Vukićević, this is being

widely implemented in browsers. The WebGL spec is on the short path to a 1.0 release and we’re very excited to see this be used in the wild.

Hardware acceleration has finally arrived even though it should have been in nearly all platforms for web last decade, but we’ll take it.

Firefox 4 supports full hardware acceleration on Windows 7 and Windows Vista via a combination of D2D, DX9 and DX10. This allows us to accelerate everything from Canvas drawing to video rendering. Windows XP users will also enjoy hardware acceleration for many operations because we’re using our new Layers infrastructure along with DX9. And, of course, OSX users have excellent OpenGL support, so we’ve got that covered as well.

The javascript engine JaegerMonkey is comparably fast to SunSpider and V-8 javascript benchmarks and has support for EC5 javascript.

And you might have noticed that it’s really fast. This is the world’s first third-generation JavaScript engine, using Baseline JIT technology similar to engines found in other browsers and kicked up a level with the Tracing engine found in Firefox 3.6. As such, we’re competitive on benchmarks such as Sunspider and V8, but we’re also fast at a whole mess of things that we expect to see in the set of next-generation web applications, hence Kraken.

WebConsole looks like they are joining Chrome and Safari with built in inspection tools similar to Firebug, however Firebug still available.

Firefox 4 will include the Web Console. This is a new tool that will let you inspect a web page as it’s running, see network activity, see messages logged with console.log, see warnings for a page’s CSS, and a number of other things.

Note this that is something that we’ll be including with Firefox 4 directly. It’s not an add-on.

(Also Firebug will be ready for the final Firefox 4 release.)

Firefox 4 has other improvements like layering (in-memory retained layers), caching/scheduling improvements and lots of other performance enhancements.

2011 is looking like the year all this is coming together, at least for Chrome, Firefox, possibly Safari (need WebGL in main release) and IE is still the biggest problem to getting WebGL. At this point WebGL looks like it is still over a year out as it may not come to IE until IE10 or possibly never, the WebGL 1.0 spec is on the fast track though (don’t we all love Khronos? They have been amazing with OpenGL since they took over).  html5 is looking like it will be close to mainstream by the end of this year depending on the install rate of IE9 when released.

The world is waiting to see if Microsoft implements WebGL or tries the old DirectX/D2D only ways.  Nevertheless, getting a push for hardware acceleration and fast renders in 2d/3d is a very sweet direction.

Media_httpfeedsfeedbu_zicvp
Oct 26

Introducing the Molehill 3D APIs

I am sure you guys have heard about what we just announced at the Max keynote this morning.

Media_httpwwwbytearra_lvjfu

I am happy to share this with you guys

Media_httpwwwbytearra_ysstg

Molehill Introduction :

Another video from MaxRacer demoed at Max Keynote Day 1 built on top of Alternativa 8, leveraging the upcoming 3D Molehill APIs :

Tom demoes the Peer 2 Peer feature he developed for MaxRacer :

MAX Racer - 3D Flash Game with P2P Multiplayer from Tom Krcha on Vimeo.

Another one, with those beautiful islands, still with Molehill :

Another one from Frima Studio, who ported their engine used on the PSP for Zombie Tycoon to Molehill :

Another one from Away3D and EvoFlash using Molehill :

And again from Away3D :

For more details about implementation and how it works, check the Adobe labs Molehill page.

Update : For info, Molehill is also available in the browser, this is not limited to AIR or standalone player

Media_httpwwwbytearra_jbmgk

Oct 2

Video Improvements, a sneak peek from “Flash on the Beach” keynote

Last Monday at "Flash on the Beach" keynote, I showcased new improvements we have been doing lately with video playback in the Flash Player.

So what happened ?

As you guys may know, we introduced earlier this year Flash Player 10.1 with H.264 GPU decoding on MacOS, Windows and Linux, which already highly improved the CPU usage when viewing H.264 video. But we are going further with dramatic CPU usage reduction in an upcoming version of the Flash Player.

Below is a snapshot of the Activity Monitor using Flash Player 10.1, playing a 1080p video with H.264 GPU decoding enabled :

Media_httpwwwbytearra_hczpg

You see that for such a video, CPU is still being used for about 50%, cause the CPU is not totally offloaded, still displaying and scaling the video frames.
Now in the following picture I am using the new feature we will be introducing soon, as you can see the CPU is highly offloaded and playing a 1080p video with around 8% CPU usage.

Note how the memory usage drops down too :

Media_httpwwwbytearra_uiyba

It gets even better when you start overlaying content on top of the video. Most of Flash websites use a lot of overlayed content on top of the video. In the snapshot below, the CPU usage goes pretty high, cause complex content is on top of my video, the CPU is working on compositing the video frames and the vector content in the display list which is an intensive task :

Media_httpwwwbytearra_gasgq

By leveraging the upcoming feature, take a look at my CPU usage and memory now, the exact same content with a few lines of code changed :

Media_httpwwwbytearra_daaie

Again, this will dramatically improve the video performance in the Flash Player. Note that this feature will be available on Windows, MacOS and Linux, and this new improvement is not restricted to H.264 video or specific video cards vendors, any video frame whatever the codec used will benefit from this.

If you are interested into learning more about this, do not hesitate to meet us at Max.
If you want to try this as soon as possible, just drop me an email.

Hope you guys like it!

May 24

100 Things You Should Know About People: #34 — Too Much Stress Results In Poor Performance


Media_httpapitweetmem_cdsfj

Media_httpwwwwhatmake_jwtlb
A few days ago I found myself in a hotel room outside of Chicago with my 19 year old daughter moaning and sometimes howling in pain. She’d been sick for a week, each day with a new symptom, and this morning her eardrum felt like it was going to burst. We decided that I should cancel my client meeting and take her to an urgent care clinic instead. Of course, we don’t have universal health care here in the States, so first I had to call my insurance provider to find out if there were “in network” doctors we could go to and still be covered by our plan. The insurance company told me to go to a particlar web site,  and said that any doctor we picked through that site would be considered in network.

Using a web site under stress — By now 10 minutes have passed and my daughter is still sitting on the bed behind me moaning and wailing. Instead of helping her, I have to go to a web page and fill out forms and look at maps. The first thing that happens is that I encounter a drop down menu that is meaningless to me:

Media_httpwwwwhatmake_gdpvf

When I look at this web page now (days later, crisis has passed), it doesn’t seem too confusing, but when I was trying to fill it out, trying to get my daughter some help, the web page was daunting and impossible, and not at all intuitive.

Stress changes your perceptions – Research on stress shows that a little bit of stress (called arousal in psychology terms) can help you perform a task, because it heightens awareness. Too much stress, however, degrades performance. Two psychologists, Robert Yerkes and John Dodson first postulated this arousal/performance relationship, and hence it has been called the “Yerkes-Dodson law” for over a century.

Arousal helps up to a point – The law states that performance increases with physiological or mental arousal, but only up to a point. When levels of arousal become too high, performance decreases. Research on the law shows that the amount of stress/arousal that is optimal depends on how difficult the task is. Difficult tasks require less arousal to reach optimal performance, and will start to break down if the arousal level is too high. Simpler tasks require more arousal and don’t fall off as fast.

Media_httpwwwwhatmake_ijlff

Yerkes-Dodson Law

Tunnel vision — When arousal first goes up then there is an energizing effect, as the person is paying attention. But as the stress increases there are negative effects. Attention gets unfocused, people have trouble remembering, problem solving degrades and “tunnel vision” sets in. Tunnel vision is where you keep doing the same task over and over even though it isn’t working.

Glucocorticoids — More recent research has shown a similar curve when studying the presence of glucocorticoids. These are the hormones that are released when we experience stress, so the Yerkes-Dodson law appears to have direct physical evidence.

Maximum frustration — As I tried to use the web page to find a doctor I kept getting errors, and typical of someone under stress, I kept doing the same task over and over even though it wasn’t working (tunnel vision). At one point I was crying tears of frustration, cursing over the lack of usability of the web site, and upset that I could not just find the name and address of a clinic we could go to.

Patient care, not computer care – I finally turned away from the computer, got my daughter some tylenol, gave her warm washclothes to hold against her ear, and got us both calmed down. Then I found a clinic at the website  (where we went later that day, only to have them say she was fine. By the way, our insurance didn’t work and we had to pay cash after all — i.e., I didn’t need the web site). My daughter is better, and I didn’t even have to cancel the client meeting.

Test under stress – If you might have people using your site when they are under stress, keep in mind that too much stress will change the way they see and use the web site. And here’s a plea to BeechStreet.com… test your website thoroughly assuming that people are tense, stressed, and with howling children in the background. It’s a totally different experience.

If you’d like to read the research —

Yerkes RM, Dodson JD (1908). . Journal of Comparative Neurology and Psychology 18: 459–482. .

Lupien, SJ, Maheu F, Tu M, Fiocco A, Schramek TE (2007). “The effects of stress and stress hormones on human cognition: Implications for the field of brain and cognition”. Brain and Cognition 65: 209–237. PMID .

——————————————————————-

Did you find this post interesting? If you did, please consider doing one or more of the following:

add your comment
subscribe to the blog via RSS or email
sign up for the Brain Lady newsletter
share this post

Media_httpfeedsfeedbu_ghejy
Dec 3

Unity for Web Interactives Kicked Up A Notch By Carlos Ulloa/HelloEnjoy

Media_httpi81photobuc_qyehi

If the question is if Unity can do interactives as smooth and stylish as Flash I think you may soon find out.  Carlos Ulloa of Papervision 3D fame has kicked it up a notch in Unity 3D with this interactive very reminiscent of the Ford Focus demo that helped bring in Papervision 3D for flash in style. Gotta say though a mini is much better than a Ford Focus.

Flash is still the leader in web interactives and even marketing interactive 3d, Unity largely replaced Director and tools like it and high-end hardware rendered required interactives and games. This interactive by HelloEnjoy has loads of polygons, unity physics system, lighting, environment mapping, showroom cameras, reflection, skid decals, highly detailed mesh and more.  Just take a peek inside the vehicle and at the rims for the detail that is impossible with the 2000 poly limit of Flash 3D software rendered engines.

Web interactives this heavy aren’t doable in a non hardware rendered player like Flash.  Unity is looking to pretty much own this level of quality in a browser.  I don’t think I have seen another interactive looking this good with Unity 3D.

Unity still is lacking many features that Flash has in support of making interactives for the web such as webcam support, mic support, better video support, better gui system, html support (although flash barely) and a larger install base but Unity could easily take the high-end advertising market in addition to owning highly immersive games that need hardware rendering which it is already doing for web gaming.  It is 2010 soon, most computers have a decent video card.  Put them to use!

Media_httpfeedsfeedbu_ityxo
Oct 13

Epic Projection Mapping: Theatre Facade Augmentation with OpenFrameworks

Eloi of playmodes sends in this beautiful, extended (20 minutes) projection mapping performance, for the Ingravid Festival, in Figueres, Spain.

Telenoika Audiovisual Mapping @ Ingravid Festival, Figueres 9/2009 [FULL] from Telenoika on Vimeo.

Created by Telenoika, this performance is a tour de force of established projection mapping techniques and styles: Virtual lighting, 3D augmentation and distortion, edge highlighting and surface painting.

Mixed with lovely sound design, they’ve also added some nice new touches: The “light bulb generation” at 4:12 is lovely, as is the subsequent thunderstorm and electrocution of the building.

What this piece really does, that I’m excited to see more of, is establish a narrative. We’ve got our basic projection mapping building blocks now. Clever people will think of new, cool stuff to do, but while that’s going on, it’s time to start using these techniques to really tell some stories. Not just about things happening to the building or space, but inside it.

Another exciting development is that the “warping and video player software” was developed in OpenFrameworks [on CDMo] by Eloi, and he will be sharing it soon. In the meantime, you can check out some of his other development on the Playmodes Blog.

Elsewhere:
Playmodes/Eloi on Vimeo.
Telenoika on Vimeo.
Ingravid Festival

Media_httpfeedsfeedbu_lrjos
Media_httpfeedsfeedbu_bmdad
Feb 28

ODE (Open Dynamics Engine) 3D Physics Engine Running on Flash Player Using Alchemy

Alchemy is going to shake things up a bit.  As witnessed before from Quake running in flash and now ODE compiled to run in flash using Alchemy (LLVM based). It is an early test but shows what could be possible.

Mihai Pricope has a post with sources on how he got the ODE (Open Dynamics Engine) a great open source physics engine for 3D, running on the AVM2 Flash Player virtual machine.

Media_httpi81photobuc_vvogy

I’ve took Alchemy for a test and decided to compile ODE (Open Dynamic Engine). Just to add yet another physics engine to the Flash World. It was a hell of a ride but I finally got to produce some bouncing balls :). For a still unknown reason some as 3d libraries have been very slow to render 6 translucent walls and 2 balls. Papervision3D seems to move quite decent.

You can download the ode sources from here. To recompile them do (you need to have the Alchemy environment turned on):

Flash 10 will become mainstream shortly and with that the possibilities of using Alchemy in your projects is becoming a reality for production.  But what specifically can you do with Alchemy, a project that helps to compile C/C++ code into AVM2 capable files?

Alchemy described from Adobe:

With Alchemy, Web application developers can now reuse hundreds of millions of lines of existing open source C and C++ client or server-side code on the Flash Platform.  Alchemy brings the power of high performance C and C++ libraries to Web applications with minimal degradation on AVM2.  The C/C++ code is compiled to ActionScript 3.0 as a SWF or SWC that runs on Adobe Flash Player 10 or Adobe AIR 1.5.

Alchemy is based on the LLVM Low Level Virtual Machine that allows new levels of code translation.  Maybe this can lead to more effective and performing code to run on the iPhone with flash player 10. Or some type of system that allows flash developers to code in AS3 or take projects and get them ready to run on the iPhone much like some of the Java to Cocoa compilation systems and Unity3D using mono to compile down to iPhone capable code.

Get Updates

Tags

Archive

2012 (6)
2011 (11)