Thursday, August 21, 2008

Some musings on graphics tech

Good idea, bad timing.
I just read a post on dailytech about a new chip that's supposed to allow multi-gpu multi-vendor graphics with near linear performance scalling. The basic idea is to render different scene elements on each gpu and combine them. Draw a wall here a character there and so on. One of the problems mentioned in the article is that vista does not allow more than one graphics driver so you couldn't mix ati and nvidia cards even though the tech supports it. Another issue mentioned in the comments was that it's directx only, at least for now. What I'm wondering about is what happens when games start using there own renderers instead of the standard directx and opengl renderers? I'm pretty sure this won't work with such software.

On a related note what with all the opengl bashing? Seems a nmber of people want it to go away which doesn't make any since it's the only cross platform api that exists. It's used on all desktop OS platforms and most smaller devices including cell phones. Even Google's android will use it.

Thursday, April 24, 2008

Firefox plug-in/extension docs

Some recent bug-mail reminded me that the FF devs long ago decided that the proper way to add support for new images formats was to write an extension. This keeps coming up regarding mng and jpeg2000. The problem is that there does not appear to be any documentation on how to do this. If you're going to recomend such a method you should put the information in one place. A simple page saying you need to implement these interfaces to add a new image format is all that's required yet no one has done this, or at least I haven't found it.

Another thing I was looking int earlier was how to create a plug-in for video playback. You know, something like the youtube player only native. The documentation for creating plug-ins is certainly better, but there is an ommition. I figure the most reliable way to do this is to use XEmbed and an out of process plug-in. Now, XEmbed is simply the newer way to get the window that the plug-in will use. One of the things this allows is for an external process to draw in the FF window. The problem is that there is again no documentation on what is needed to properly do this. From what I can figure the plug-in will need a normal shared library implementing the plug-in API and the executable that will do the real work. The library will have to start the exe for each instance, marshal data from the browser to the exe, inform the exe of changes to the window, and kill the exe when done. Not really something I would want to do (yet).