| Q&A |
Ogre3D
Steve Streeting, Torus
Knot Software
january 2008 |
| |
 |
"[...]
a number of larger hardware and services companies are
realising that open source has a lot of advantages over
closed software, particularly if they have business
models that don't revolve around selling units of software
- the Internet has a lot to do with this, as people
move to a more service-delivery culture."
<
images courtesy incrediblebox.com
© 2008 Incredible Box / HFI DTC / Aerosystems International |
|
| |
|
| Q1 |
You
are the founder of Ogre3D project. Can you tell us how the developer
community appeared and grew? |
| A1 |
It
really just grew organically, initially by news on places like
GameDev.net, then by wider news coverage in print magazines
(including Game Developer) and more mainstream places like Gamasutra,
but really now word of mouth is our best referrer. There are
enough people now who have used Ogre and liked it, that they
tell their friends who try it to and hopefully come to the same
conclusion. We try to provide the facilities for a vibrant community,
such as hosting community add-ons, a fast dedicated server for
the site, promoting moderators and experts in the community,
and generally just managing the environment and encouraging
people to get involved. We try to be professional, responsive
and open, which helps build a solid community. |
| |
|
| Q2 |
There
are many realtime 3D engines available. How does Ogre3D stand
from the crowd? |
| A2 |
Ogre
has always tried to concentrate on quality, stability, flexibility,
wide application compatibility and keeping a strong graphics
focus. We don't try to be a game engine or anything else which
would pull our focus too wide to give every element the attention
it deserves - we believe that the power of open software development
is in very strongly focussed, high quality components that can
be integrated with others of the developers choice. So you'll
find lots of community add-on projects integrating Ogre with
all kinds of other software, from physics engines to GUI components,
augmented reality systems to CAVE. We also take code stability
and quality very seriously, and our release structure reflects
that - we typically do one major release every year with all
the new features, and maintenance releases every 4-8 weeks so
people have a solid platform to build production applications
on, that doesn't change under their feet all the time. Of course,
people who want to be on the cutting edge can be, since our
development branch is generally stable anyway and is accessible
to all, but there's a guaranteed stable option for those that
want it. I think these 2 things set up apart from some of the
alternatives out there, which is why you see a big range in
the kind of apps being made using Ogre and also see quite a
lot of commercial applications using it. |
| |
|
| Q3 |
Do
you exchange ideas with other Open Source projects such as OSG
or Irrlicht? What do you think of those initiatives? |
| A3 |
Yes,
I know some of the developers of Irrlicht, CrystalSpace and
others - we all have a slightly different focus and I think
each project has its own particular audience. I don't use any
other engines personally but the real test is the community;
so long as there's a community around a project, then it must
be doing the right thing for that particular community. There's
no such thing as a 'best' engine, each one has aspects of it
that will attract a particular group of people. I think there's
room for all of us :-) |
| |
|
| Q4 |
You
run a consulting company, TorusKnot Software. What kind of professional
services do you offer? |
| A4 |
We
offer consultancy, contract development, support - basically
if the resources available for free in the community aren't
enough (and for most people, they are), we're a fallback where
a company can approach us for extra assistance. This might be
because they have a particularly specific issue they need addressing
quickly, or want some feature developed for them, or they want
something investigated and cannot post details on the public
forum because of NDAs or other commercially sensitive issues.
In addition, we also offer an alternative license for Ogre for
people who cannot or do not want to comply with the LGPL conditions
in their particular circumstances. |
| |
|
| Q5 |
Do
business executives consider Open Source engines as serious
alternatives to proprietary software? |
| A5 |
Increasingly,
yes. Some sectors have always been very proprietary software
oriented (e.g. the mainstream game industry), but the smaller
start-up companies are always looking at ways to do things faster
and more effectively for a given budget, and open source brings
a lot to the table. Also, a number of larger hardware and services
companies are realising that open source has a lot of advantages
over closed software, particularly if they have business models
that don't revolve around selling units of software - the Internet
has a lot to do with this, as people move to a more service-delivery
culture. I think over time we'll just see more of this. |
| |
|
| Q6 |
How
is the Ogre3D project managed? How are the orientations decided?
|
| A6 |
I
still lead the core project, and what gets worked on in the
core tends to go through me still, in terms of 'approval' -
I don't implement all of it, of course, we have several team
members and many external contributors, but people do tend to
consult me about proposed approaches which is nice. The items
which go on the planning list are a mixture of things the team
has thought of, and things that the community have raised -
and we really value the ideas of people 'in the trenches' using
Ogre in real products and coming back with ideas of how to make
it slicker. Apart from the core project, there are lots of add-ons
which are all run pretty independently by their respective maintainers
- we encourage them to run in whatever direction makes sense
to them. That's a benefit of keeping the core tightly focussed
and solid, it means we can operate a 'satellite' system like
this where so long as the core is rigorously maintaned in terms
of structure and quality, all kinds of cool things can go on
around the edges and the best stuff tends to rise to the surface.
You couldn't run the whole project like that, because everything
would be too independent and changing all the time for people
to rely on it, but having a core stable nucleus with elements
around it able to change more freely is quite a powerful model
I think, and one which many other successful open source projects
(Linux, Apache) use to good effect. |
| |
|
| Q7 |
Cross-platform
formats such as Collada and FBX are becoming widespread. Will
Ogre support these formats? |
| A7 |
We
already do, but we don't consider file format support a 'core
feature' - they're just sources of data. Ogre has its own core
format, that allows us to optimise that and provide tools to
do things like calculate edge lists, LOD and tangents offline
and have them all there ready to go at runtime for optimum speed,
but of course you can source the data that becomes that optimal
runtime format from anywhere you like. There are exporters for
modelling tools and converters for an awful lot of formats,
including Collada. People can use those to convert data offline
(which most people do), or convert at runtime if they're willing
to take the hit. That's just a conversion process and we have
plugins and other code to do that - it's a 'satellite' feature
as far as we're concerned, we don't care where model data comes
from so long as it can be turned into visual data. To include
support for 20 different formats in the core would just bloat
it for everyone - instead we have a single optimal core format,
and external systems for feeding data into that as optional
extras, should you want them. |
| |
|
| Q8 |
Can
you unveil some future features of Ogre3D? |
| A8 |
In
the next major version we offer things like hardware sRGB support,
antialising on render textures, DirectX10 support, a more flexible
script compiler system for materials, enhanced tangent generation
tools for higher quality normal mapping, and more. Most of these
you can already get by using the CVS version, Dx10 support isn't
finished yet though. |
| |
|
| |
|
| |
|
| |
|
 |
|
|