[gameprogrammer] Re: Browser games

One problem with a plugin approach is that a plugin requires you to install something. While that won't be a problem for people at home, it will be a problem for people at school or work who may not have install rights. Active X doesn't require an install but isn't that much better because most of the time if you can't install a program you can't run Active X either.

From what I read Microsoft disabled support of running Mozilla Plugins for "security issues" Given the choice between the 2 platforms, I'd rather develop for Mozilla. Not because it's Microsoft but because I hate Active X. I'll see how much easier (or not) it is to write a plugin.

The only reason I chose Irrlicht is that it is entirely open source, without DLL dependencies. I didn't even consider the license, but now that you mention it I looked and Irrlicht has the most liberal use license I've seen.

I'm not sure why you think the LGPL would not be permissible under Active X.

Speaking of licenses, if I use a GPL library and link with other modules, do I have to release the source to the other modules? If I modify the GPL library, do I have to release only my changes or the entire library plus my changes? Would I have to release my linked modules as well?

Bob Pendleton wrote:
On Thu, 2005-08-11 at 09:10 -0700, Kevin Jenkins wrote:

Thanks Bob! I will definitely check this out in more detail. If it works that means I can support the browsers you mentioned and not have to rely on ActiveX, saving me both time and trouble.


Yeah, I wish I had thought of it sooner. Keep us posted on how it works.

It would sure be great if you release the modifications you have to make
to the engine to make it work as a plugin. IIRC, you are using the
Irrlicht engine which does not require you to release any changes. But,
there were a few people who were interested in helping.


How much did the license affect your choice? I see that CrystalSpace and
Ogre are under the LGPL, which should be fine for a plugin, but is most
likely not OK for an ActiveX control.


                Bob Pendleton


Bob Pendleton wrote:

On Wed, 2005-08-10 at 21:28 -0700, Kevin Jenkins wrote:


That is exactly what I'm doing right now, except that I'm using Active X to get it running. Can you elaborate on how to make a browser plugin?


A browser plugin is a piece of code that lives on the users computer and
is loaded by the browser to handle a specific mime type. Things like
Flash, Shockwave, and Acrobat are distributed as web plugins, not as
some kind of down loadable content. Think of a plugin as being a kind of
dll that is used by a browser. There is an API that is provided by the
browser that allows the plugin to access objects within the browser so
that the plugin and render over/into the browsers window.

The original plugin API was introduced very early on by Netscape and is
called the Netscape Plugin API (NPAPI). It was supported in IE for a
long time, I don't know if it still is.

There is also the idea of a helper application. You can tell the browser
that when it sees certain mime types it should down load the file and
pass them to another application. The browser then works as an
intermediary. It just gets the file and passes it off.


If you look around in your browser you will find where you can register
helper applications and where you can see what plugins you have
installed. Where you can find that information varies from browser to
browser.

You can find a really good discussion of all of this at
http://en.wikipedia.org/wiki/NPAPI

Take a look at the following for more info:

http://www.mozilla.org/press/mozilla-2004-06-30.html
http://www.mozilla.org/projects/plugins/

And this link seems to point to an ActiveX control that lets you host
NPAPI (Netscape Plugin API) on IE
http://www.mozilla.org/projects/plugins/plugin-host-control.html so it
looks like you can use the same plugins for all the Mozilla related
browsers, IE, and even for Opera.


Bob Pendleton




Bob Pendleton wrote:


This discussion has got me thinking about how to do web based games
again. Try this on for an idea and let me know if it has already been
done.


Take one of the open source game engines (open source 'cause you can't
do this with the proprietary ones) and modify it so that it can run as a
browser plugin and register it to handle a mime type such as
application/x-irrlicht (for exampel if the irrlicht engine was used).
The engine would have to be modified to use the network for file access
and would have to have some security mods. AFAIK each of these engines
have a file format that they use to represent a world, once you have
installed the plugin you could browse to one of those files and enter
the world. All the custom code would have to be done in a scripting
language built into the plugin. And,the browser cache can be used to
keep the games around for a while so you only have to download them
once.

How does that sound for an interesting project?

                Bob Pendleton





---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html





---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html





---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html


Other related posts: