[Bf-committers] restore Game Engine project
Ton Roosendaal
bf-committers@blender.org
Sat, 16 Aug 2003 13:19:19 +0200
Hi,
(forgot to reply to this one too!)
On Sunday, Aug 10, 2003, at 03:31 Europe/Amsterdam, Patrick wrote:
> I've been thinking a lot lately on the speed issues, and I'm not
> sure that the lack of culling is the only culprit. Having a lot of
> objects seems really slow regardless of how many polys they are. If I
> have 100 cubes all joined into one mesh, it has no trouble running
> that. But if I have 100 cubes all seperate objects it really dies. I
> think this may be because of how it adds the objects to the scene but
> I'm not sure. Ton or carsten, do you know of any other culprits for
> the game engines aparent lack of speed?
This was the major annoyance the NaN artists were fighting with in the
current (2.25) engine. Slow downs really go exponentially, and there's
no simple clue how to fix it, except with a good spatial subdivision
(culling) system.
It seems to be related to how the internal event system functions, with
evaluating the sensor-controller-actuator system. Solid itself didn't
make it slow... but Solid is the major memory & time consumer for the
initializing phase.
> All throughout game development these past few years, no one has ever
> really figured out what keeps speed down the most. There are some
> guidelines to follow, but sometimes it doesn't really pan out. I know
> in my game I've run numerous tests and can't find any surefire speed
> bottlenecks. I guess we'll have to keep testing and scanning through
> the code.
There's also the problem of 'focus' and 'design' here. The person who
wrote most of the engine (erwin) did an honest attempt to make an
engine which can function for professional developers as well. For this
reason he wanted it to be very generic, with no (minimal) dependencies
on Blender itself.
The main advantage is quite obvious; by not depending on Blender, it
doesn't work well with Blender either...
> The modular approach would be desirable I think, and we can start
> by seperating the game engine out. The rest of blender would be much
> harder to do that with :/
> Anyway, I am optomistic about the future of the engine. I think with
> some work it could become the premier game engine for hobbyist game
> designers and proffesional RGD (rapid game development), although I
> really do hope some more programmers can help us out:)
We can evaluate this topic in the same way we're looking at support for
Yafray. Our own rendering system doesn't have to compete with this (nor
with Renderman, etc). For rendering, I think we can find the balance...
especially when exporting/cooperation works fluently.
Game engines - however different in architecture - also have common
denominators. We can try to find what's useful to keep in Blender,
especially when it's closely related to 'providing tools for artists'.
Then leave most of the final 'media delivery' topics to the more
specialized software projects.
Apart from the crucial question "what do we want Blender todo" we have
to cope with the practical question "what can me make Blender todo".
Accepting & knowing our limitations - both in current code as in
current team - will help us a lot in moving forward.
-Ton-
------------------------------------------------------------------------
--
Ton Roosendaal Blender Foundation ton@blender.org
http://www.blender.org