lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Dolan, Ryanne Thomas (UMR-Student) wrote:

Lua can, however, be quite fast enough when used right, and for the
right sort of application. I wouldn't want to write a 3D shooter
engine in lua, but we use it extensively with our game engines to
define rooms, for example, and it works quite well for that. Kerry
Thompson


Funny you say that, because I used my game engine to write a simple
3d shooter, and everything is implemented in Lua with the luaglut
binding.  I certianly wouldn't argue with your assertion that Lua is
slower than a compiled language, but writing a 3D game engine in Lua
isn't that bad of an idea.  At least in my experience, the framerate
of a game is influenced most by the geometry it is trying to render,
not by the language in which it was written.  For example, my
engine's framerate doesn't improve at all when I use LuaJIT, because
in reality there isn't much Lua code being interpretted each frame.

Emma (http:// emma3d.org) is an application engine which interfaces to Ogre3D and uses Lua for scripting. We have done tests and have found that Lua can warp a 20,000 triangle mesh using a sine function at over 100 fps. No other interpreted language I have ever seen can get close to that.

These days, most 3D animation is done using algorithms built in to the 3D engine. Ogre does it this way. But it is nice to know that Lua is up to the challenge of doing high bandwidth manipulations at frame rate!

--
chris marrin              ,""$, "As a general rule,don't solve puzzles
chris@marrin.com        b`    $  that open portals to Hell" ,,.
        ,.`           ,b`    ,`                            , 1$'
     ,|`             mP    ,`                              :$$'     ,mm
   ,b"              b"   ,`            ,mm      m$$    ,m         ,`P$$
  m$`             ,b`  .` ,mm        ,'|$P   ,|"1$`  ,b$P       ,`  :$1
 b$`             ,$: :,`` |$$      ,`   $$` ,|` ,$$,,`"$$     .`    :$|
b$|            _m$`,:`    :$1   ,`     ,$Pm|`    `    :$$,..;"'     |$:
P$b,      _;b$$b$1"       |$$ ,`      ,$$"             ``'          $$
 ```"```'"    `"`         `""`        ""`                          ,P`