Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Which graphics API for browsers should I learn?

Which 3D graphics API for browsers should I learn? I hear there's WebGL for Firefox 4, O3D for Chrome, and Shockwave has been around for a decade for all browsers. There may be others, but I'm not sure. It seems like every modern browser wants their own implementation of multimedia - different codecs for HTML5 video, different syntax for CSS3, etc... It's very confusing and very Internet-Explorer-like to diverge like this. I'd like to at least wrap my head around the 3D graphics front. Ideally, the API I choose should not require a plugin, uses hardware acceleration, and will be supported by as many future browsers as possible.

like image 684
JoJo Avatar asked Feb 25 '23 18:02

JoJo


2 Answers

I'd also go with WebGL because it is a standard from Khronos Group since February. Firefox got it for almost one year (but still in the version 4 beta/rc). Google Chrome got it in the current version. Opera just implemented it (I think not entirely yet) http://my.opera.com/core/blog/2011/02/28/webgl-and-hardware-acceleration-2

As yojimbo87 tell you Microsoft is not part of the Khronos Group because microsoft support DirectX which is in concurrency with OpenGL.

As for O3D, Google used it as a plugin-API but on the main web page you can see it's now deprecated. http://code.google.com/intl/fr/apis/o3d/

For other way of doing 3D on Web you can use something like VRML/X3D, flash got something serious but, here is the good thing that happen with WebGL : You have WebGL implemented on firefox for mobile phone (who will be coming soon). I think it won't take long til it Chrome and Safari will be doing the same.

If you not convinced yet, WebGL is hardware accelerated, you can use shader inside. A lot of API/Tools are coming out there. A wonderfull website to learn it and have some news about WebGL is : http://learningwebgl.com/blog/

Have fun with it.

like image 196
Tim Avatar answered Feb 27 '23 07:02

Tim


Personally I'd go with WebGL - it's the one that's based on the HTML5 2D <canvas> element, and O3D is actually built on top of WebGL.

It's already built into Chrome 9+, and will be in Firefox 4 (it's in the beta versions already).

like image 27
Alnitak Avatar answered Feb 27 '23 06:02

Alnitak