On 11/4/11 7:23 AM, Chris Marrin wrote:

On Nov 3, 2011, at 7:00 PM, Charles Pritchard wrote:

In my experience, implementing filters leads to writing them multiple times for various targets.

I suggest starting with the lowest common denominator before targeting platforms like webgl. I understand that Google is working on an in-software webgl implementation (angle is just a conversion lib); at some point LLVM may have sufficient semantics-- it's certainly been attempted (there's a polyhedron article somewhere on the site).

You're saying you believe Google is developing a version of WebGL that runs completely in the CPU? I haven't heard of such a thing and I would be surprised if it were true. Running a GLSL shader in software is possible, in fact OSX has a software renderer that does just that. And while it can get a few fps with a simple shader, it's not practical for serious realtime 3D graphics.

http://code.google.com/p/chromium/issues/detail?id=91445
"a software fallback is in the works"

Similarly, here's WebGL implemented in Canvas 2d and ECMAScript:
http://code.google.com/p/cwebgl/

It's certainly the case that CPU rendering will not be practical for "serious realtime 3D graphics". There's absolutely a divide between computers that have sufficient GPUs and ones that do not.

The initial WebKit implementation of CSS filters will use the filter code already in the SVG implementation. This does use vector optimizations on some platforms for some shaders. So it will be fully CPU based. From there several options exist for hardware acceleration, some platform specific and others more generic, based on WebGL or some other GPU based acceleration.
I'm a bit behind on the bleeding edge: Is there work / a foundation for running these rendering process across multiple cores?

In https://bugs.webkit.org/show_bug.cgi?id=68479 I plan on adding some filter infrastructure at the GraphicsLayer level to make it simpler to implement layer-based hardware accelerated filters.

Much appreciated.

-Charles

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to