IrrLua

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
Post Reply
zenakuten
Posts: 4
Joined: Wed Apr 06, 2005 9:09 pm
Location: Phoenix, AZ

IrrLua

Post by zenakuten »

I've been working on a Lua front-end to IrrLicht-0.9, and have gotten most of it working last night. I now have an IrrLua interpreter that understands most of Irrlicht's types and objects. Right now I'm converting the example c++ apps to lua to make sure everything works.

There is still a lot of work to be done (such as making IEventReceiver work), but I've done most of the tedious work dealing with the header files and templates already. tolua++ helps a lot :)

When I get everything cleaned up and working I'll put a sourceforge page up.
zen
katoun
Posts: 239
Joined: Mon Nov 15, 2004 9:39 am
Location: Romania
Contact:

Post by katoun »

Nice!
Very, very usefull.
Kat'Oun
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Post by niko »

Very cool, looking forward to it!
zenakuten
Posts: 4
Joined: Wed Apr 06, 2005 9:09 pm
Location: Phoenix, AZ

Sorry for the delay

Post by zenakuten »

IrrLua is currently delayed. I updated my computer and now I've been stuck in SLI hell. (http://www.hardwareanalysis.com/content/topic/38623/ )



In any event, I'll put what I do have working up on irrlua.sourceforge.net this weekend as a version 0.1

In this version all of Irrlichts header files have cleaned up .pkg files to go with them. This exposes the raw Irrlicht engine to Lua.

There is also a simple casting class so that you can cast between Irrlicht types and Lua types. Lua does not understand irrlichts types, so to use irrlicht with lua, you have to cast your lua types to irrlicht types before calling the functions, i.e. scm:GetMesh("meshfile") will fail under IrrLua saying "type const c8* expected". So to get around it, initially in this first version you can do scm:GetMesh(cast::to_const_char_ptr("meshfile"))

It's ugly, but it works.

Ultimately, once the wrappers are finished, none of that will be necesary and you will be able to do something like this:

local Device = IrrrLua.CreateIrrrlichtDevice(video::EDT_SOFTWARE, { 640, 480 }, 16)

This way, you don't need to cast, and some types like vector3d can just be passed in as a lua table.




---
zen
zen
keless
Posts: 805
Joined: Mon Dec 15, 2003 10:37 pm
Location: Los Angeles, California, USA

Post by keless »

good, but hopefully it'll be IrrLua instead of IrrrLua!
a screen cap is worth 0x100000 DWORDS
Electron
Posts: 874
Joined: Sun Mar 14, 2004 12:05 am
Location: Massachusetts USA

Post by Electron »

looks cool :)
You do a lot of programming? Really? I try to get some in, but the debugging keeps me pretty busy.

Crucible of Stars
zenakuten
Posts: 4
Joined: Wed Apr 06, 2005 9:09 pm
Location: Phoenix, AZ

IrrLua 0.1 released

Post by zenakuten »

http://irrlua.sourceforge.net



This 0.1 version is only set up to build under linux, at the moment.

Next up will be DevStudio project files and finishing the rest of the examples.
zen
cassini
Posts: 68
Joined: Thu May 12, 2005 2:40 pm

Post by cassini »

Will it be a visual studio 6 project file?
zenakuten
Posts: 4
Joined: Wed Apr 06, 2005 9:09 pm
Location: Phoenix, AZ

Post by zenakuten »

cassini wrote:Will it be a visual studio 6 project file?
Yes. DevStudio 6.0 is the only Microsoft compiler I own. I also want to provide a Dev-C++ project, but I'm unfamiliar with setting up Dev-C++ projects, so that will have to come later, as will DevStudio.NET (which I don't own).
zen
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Post by niko »

Nice, I'm going to link this from irrlicht.sf.net
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

IrrLua-0.2 released

Post by zenaku »

IrrLua 0.2 has been released (couple weeks ago)

This is very much a developers only release.

Changes include:

irrlicht-0.10.0 support (0.10.0 is now required)
VisualStudio 6.0 support
VisualStudio 2003 .NET support


The 01.HelloWorld.lua app is still the only app ported so far.


I should have another release ready in a couple weeks. I've been working on dynamic module support so that IrrLua can be extended at runtime.


---
zen
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

IrrLua 0.3 released

Post by zenaku »

IrrLua 0.3 has been released.

This release has binaries provided for both windows and linux. See http://irrlua.sourceforge.net for info on building and using.

New features:

dynamic module loading support
Event receiver support
proper handing of vector3d, rect, dimension2d, etc
First five examples now work correctly.
irrlicht shared library support under linux
--
zen
Sindwiller(forget to log)

Post by Sindwiller(forget to log) »

Ok...

Ive tried everything, now i can post it.

All LUA Examples dont work, when i choose a Driver the Window comes up for an second and then closes. Only the UI Example works fine.

I have tried to update my GFX Drivers, my PC is up-to-date.

mfg, Sindwiller
Sindwiller
Posts: 4
Joined: Sun Aug 07, 2005 7:16 pm

Post by Sindwiller »

Do someone works on Irrlua anyway?

mfg, Sindwiller
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

Post by zenaku »

Sindwiller(forget to log) wrote:Ok...

Ive tried everything, now i can post it.

All LUA Examples dont work, when i choose a Driver the Window comes up for an second and then closes. Only the UI Example works fine.

I have tried to update my GFX Drivers, my PC is up-to-date.

mfg, Sindwiller

Hmm. I've run the pre-built IrrLua.exe on a few machines without problems.

You may have IrrLua installed in the wrong location? The IrrLua directory needs to go in the Irrlicht-0.10/source/Irrlicht directory, otherwise the examples won't find all of the data files. The UI example (05.UserInterface.lua) works even if it can't find the media files. The other examples do not. The interpreter will give an error and you'll most likely see an un-rendered irrlicht window on top of the interpreter running behind it. This sounds like what you're seeing. If you move the directory to where it's supposed to go, everything should work. You may need to copy Irrlicht.DLL into the IrrLua\Bin directory as well. Sorry. Where to put the files is not documented other than here.


The Irrlicht engine is large so in order to make sure the lua language binding is bug free I've been porting each example one at a time to make sure every ported function works. Because of this, the current language binding has just enough functionality to make the examples work, but not more. IrrLua is alpha software and is not ready for developing applications with. The goal is that at version 1.0, 100% of Irrlicht's API will be available from Lua.


IrrLua 0.4 is on the way. I have the first 9 examples now working and fixed some dumb bugs in the other examples. I still need to update irrlua-0.4 to use Irrlicht-0.11 and then I'll most likely release it this weekend. After that I really need to update the web page with some docs! :)
Post Reply