| Q&A |
GLGE
Paul Brunt
January 2010
|
| |
 |
“GLGE
is a higher level api using webgl, with a declarative
xml format to remove the chore of creating 3D scenes
via javascript alone. It also hides all of the GLSL
shaders from the developer by implementing common use
shaders within the api, various lighting types, normal
maps, shadows, fog, etc. This frees the developers up
to create actual content, games and applications with
webgl.” |
|
| |
|
| Q1 |
Please
give a brief description of GLGE |
| A1 |
GLGE
is a higher level api using webgl, with a declarative xml
format to remove the chore of creating 3D scenes via javascript
alone. It also hides all of the GLSL shaders from the developer
by implementing common use shaders within the api, various
lighting types, normal maps, shadows, fog, etc. This frees
the developers up to create actual content, games and applications
with webgl. |
| |
|
| Q2 |
Why
working on a WebGL, as webGL is still in a working draft status? |
| A2 |
Why
wait?! The sooner people start using webgl the sooner we get
better support and additional features. Although it's only
a working draft, it's based on es2 so it is unlikely there
will be any big changes that would mean complete rewrites,
just occasional tweaks as the finer details are worked out. |
| |
|
| Q3 |
Do
you think that WebGL is more interessant than "plugin 3D
technologies" such as O3D, VRML, Unity3D? |
| A3 |
I
think they are on par and there's more than enough room for
both plugin technologies and open standards. In fact I think
they compliment each other really well. The plugin developers
can explore many avenues of innovation without the burden
of standardization. Thereby, allowing them to find out what
does and doesn't work; ultimately resulting in a standard
free of all the mistakes made by the plugin technologies. |
| |
|
| Q4 |
WebGL
is ready to run on Firefox and WebKit browsers. Are those implementations
similar, compatible, and optimized? |
| A4 |
There
are still quite a few differences but that is to be expected
at this stage, but there are certainly no show stoppers when
it comes to developing for them right now. They both seem
to be improving their support all the time and I think by
the time the final spec is released they will both have near
full support and judging from the latest alpha from opera
they won't be too far behind either. I would say that webkit
probably just has the edge at the moment as far as optimization
is concerned, but I dare say the competition to be the fastest
and best will mean there are still some big speed boosts to
come. |
| |
|
| Q5 |
About
GLGE, what is goal? |
| A5 |
The
initial purpose for GLGE was to create a 2.5d platform game.
At the time there was only one library that may have served
as a basis, C3DL, but it didn't offer the features required.
As time went on more and more features were added and the
library rapidly outgrew its original purpose and became a
more general framework. The primary goal of GLGE today is
still game development but with more recent additions such
as picking there is no reason why it couldn't be used for
more general application development as well; perhaps more
so given the current lack of 3D physics in javascript. |
| |
|
| Q6 |
GLGE
brings new capabilities for WebGL : shadows, bones... Do you
think that it is possible to build a "real engine"
with physic, sound, HUD,... ? |
| A6 |
There
are a few shortcomings with sound and physics at the moment,
but I'm sure they will be overcome and it will be possible.
It would certainly be no match for current generation desktop
engines but having the power of the web behind it can add benefits
you don't see in desktop engines. You have the ability to easily
add links between games, intergration with various other services
online (twitter,facebook, flickr), and I'm sure there are even
more possibilities that haven't even been thought of yet. |
| |
|
| Q7 |
Is
it possible to import 3D scenes (from a DCC software) with GLGE? |
| A7 |
I've
still got very little experience in DCC sofware generally, I'm
only an amateur when it comes to such applications and can't
really afford to be spending masses of money. So, my experience
is confined to blender. There is some limited support for exporting
animation and meshes from blender at the moment and more complete
support is coming; but with the changes taking place with blender
2.5 I'm holding back on a more advanced export until 2.5 is
more complete. As for other software, I hope at some point to
add some sort of support for collada which should (fingers crossed)
allow for export from many more sources. |
| |
|
| A8 |
Actually
the demo on your website run at 60 fps on our machine (quad
core + 8600 GT), it seems to be relatively slow. Do you think
that webGL could run in the future video games inside the browser? |
| Q8 |
The
demo itself is frame limited to 60fps to try and conserve CPU
usage. However, even with the limit off you would struggle to
get much more then 60fps at the moment. But, you have to remember
there is no optimization and the webgl implementations are still
very young so I would expect that it will be capable of much
more in the not too distant future. I think you will get a mixture
of both desktop and browser games in future. Browser games being
ideal for mobile devices and will easily transfer to desktop
browsers; but, for the foreseeable future they will lack the
features required for cutting edge 3D games. |
| |
|
| A9 |
Javascript
is more and more popular for 3D dev, but can it be enough fast
for interactive 3D contents? |
| Q9 |
It's
certainly fast enough for interactive content in some form.
Although, I think the question should be on what it will be
capable of given that its speed is still increasing at a blinding
rate. Combine that with the rate at which the web is developing
I think we could see some very innovative content that hasn't
been seen on the desktop. Remember, sometimes less is more;
who'd have thought limiting blog posts to 140 characters would
be so well received. |
| |
|
| A10 |
What
is the next milestone for GLGE? |
| Q10 |
Well,
currently features are coming thick and fast; I'm trying to
add at least one significant feature per week but that should
slow up within the next 3-4 weeks as work begins on adding some
physics. So, in answer to your question I think the next significant
milestone for GLGE will be the addition of some sort of physics
although I don't know at this point what form that will take
and what is going to be doable in javascript. |
| |
|
| |
|