IrrGameShell

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

Post by zenaku »

Nice work :)


I just built it, and I must say I'm really sorry about all those IrrLua warnings :) I'll have that fixed next release.
-------------------------------------
IrrLua - a Lua binding for Irrlicht
http://irrlua.sourceforge.net/
TheWorstCoderEver
Posts: 47
Joined: Wed Feb 01, 2006 8:09 pm
Location: Wroclaw
Contact:

Post by TheWorstCoderEver »

I wanted to write similiar framework for my own game... But got stuck writing logging function for simple editor. You made my day... :lol:
MarcoTMP
Posts: 37
Joined: Mon Aug 29, 2005 8:14 pm
Location: Dominican Republic
Contact:

Post by MarcoTMP »

DustyEngine exported 100%

Now every class of DustyEngine are working inside of GameShell. :)

Start working with newton interfaces... :wink:
roninmagus
Posts: 91
Joined: Fri Oct 31, 2003 5:03 am

Post by roninmagus »

Wow that's amazing :-) I'm glad to see someone is using DE in such a great project.

I need to learn Lua...
daveandrews.org - A Christian Programmer's Weblog | Dusty Engine - A Task Engine for Irrlicht
amega

Post by amega »

This is really great !


Keep up the great work ! (please? :lol: )
MarcoTMP
Posts: 37
Joined: Mon Aug 29, 2005 8:14 pm
Location: Dominican Republic
Contact:

Post by MarcoTMP »

I Just uploaded IrrGameShell v0.4.1

It include:
- Audiere lua function
- Newton Collision Serialization
- More Newton Functions
- All Dusty Engine classes
- Vehicle class
- Some Documentation

I wanted to upload version 0.5 with a complete documentation, but i'm getting very busy this days.

Download it and enjoy :wink:
https://sourceforge.net/project/showfil ... _id=116600
Maize
Posts: 163
Joined: Sat Oct 29, 2005 12:12 am
Location: In a cave...
Contact:

Post by Maize »

Can you set up a package that comes with everything you need for it like the lib files so I don't need to search around for each component of it?
elander
Posts: 193
Joined: Tue Oct 05, 2004 11:37 am

Post by elander »

Sounds like a nice compileation of tools. But you mention in your site you are planning to change to OpenAL. You may want to do some good tests and compare FMOD with OpenAL before commiting to this. FMOD is very fast and rock solid and it supports almost every sound, music and tracker format out there. I have from experience that FMOD sound quality is much superior when playing midis and other tracker music.

I think i found a bug in your demo. In the level3.lvl script you have:
--Load level mesh
mesh = smgr:getMesh("demo1/models/models/ciudad2.x")
When it should be demo1/models/ciudad2.x

Then it looks for some textures like Windows3.jpg, FOLIAGE.jpg .. i can't find anywhere.

Later it fails to load because it can't find demo1/models/car.obj. I can't find this file in the demo data dir only a micarro.x.
Eternl Knight
Posts: 313
Joined: Tue Nov 01, 2005 5:01 am

Post by Eternl Knight »

I think the reason for including OpenAL would be the fact that it natively supports 3D sound sources (whereas I do not belive FMOD does, though I may be wrong about that).

--EK
MarcoTMP
Posts: 37
Joined: Mon Aug 29, 2005 8:14 pm
Location: Dominican Republic
Contact:

Post by MarcoTMP »

elander wrote: I think i found a bug in your demo. In the level3.lvl script you have:

--Load level mesh
mesh = smgr:getMesh("demo1/models/models/ciudad2.x")

When it should be demo1/models/ciudad2.x

Then it looks for some textures like Windows3.jpg, FOLIAGE.jpg .. i can't find anywhere.

Later it fails to load because it can't find demo1/models/car.obj. I can't find this file in the demo data dir only a micarro.x.

Yes elander, i delete some mesh and texture files by mistake when creating GameShell041bin.rar :oops:
Try with your own meshes, it will work. I'm thinking uploading some demos alone.
Eternl Knight wrote: I think the reason for including OpenAL would be the fact that it natively supports 3D sound sources (whereas I do not belive FMOD does, though I may be wrong about that).
The reason is Audiere/OpenAL are "free" then GameShell stay "free". :wink:

I start using Audiere cause i have an already made AudiereLua + Ogg support, but i'd like 3d sound effects with a free library, so i'm planning change to OpenAL.
Last edited by MarcoTMP on Mon Mar 06, 2006 2:58 am, edited 1 time in total.
MarcoTMP
Posts: 37
Joined: Mon Aug 29, 2005 8:14 pm
Location: Dominican Republic
Contact:

Post by MarcoTMP »

Maize wrote:Can you set up a package that comes with everything you need for it like the lib files so I don't need to search around for each component of it?
I include all .lib files in source041.rar and all .dll in GameShell041bin.rar
elander
Posts: 193
Joined: Tue Oct 05, 2004 11:37 am

Post by elander »

I have two questions about using your api.

What version of irrlicht, irrlua and the other apis is used by your shell?

I only realy need the sound api for now. In case irrgameshell doesn't use the latest version of irrlua is there any way to just copy-paste the audiere package from irrgameshell into irrlua?

If there was a way to separate packages we would be able to update them separatly, which is the best thing when dealing with systems that are a collection of other different systems like irrgameshell.
MarcoTMP
Posts: 37
Joined: Mon Aug 29, 2005 8:14 pm
Location: Dominican Republic
Contact:

Post by MarcoTMP »

I)
Irrlicht 0.14
Irrlua 0.6
Audiere 1.9.4
Dusty Engine r9
Newton 1.52

II)
You can include all Audiere .cpp and .h related files to irrlua interpreter and recompile.

Don't know if there is a way to separate packages, but maybe zenaku can give you an answer, he is more expert with lua than me.
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

Post by zenaku »

MarcoTMP wrote:I)
Irrlicht 0.14
Irrlua 0.6
Audiere 1.9.4
Dusty Engine r9
Newton 1.52

II)
You can include all Audiere .cpp and .h related files to irrlua interpreter and recompile.

Don't know if there is a way to separate packages, but maybe zenaku can give you an answer, he is more expert with lua than me.
Bleh. Well, I tried to get it working, but it's going to take more than 20-30 minutes that I have time to hack tonight ;)

I was actually planning on adding an audiere module to irrlua, so that the irrlicht demo will work 100%.

I have it mostly working already though. I took the audiereLua stuff from irrGameShell and made an audiere.lua.dll module that you could load from lua. Unfortunately, it doesn't actually load. :oops:

I'm not sure what's wrong with it.


I was planning on creating a bunch of additional lua modules once I had IrrLua at 1.0. The idea is to have seperate modules that can be individually loaded. There would be no GameShell as all you would need is a standard lua.exe to load the modules. Since lua supports loadlib() there is no need to link anything into the interpreter at all.


You could have something like

Code: Select all

lua.exe
irrlicht.lua.dll  <-- new, more proper name for IrrLua
newton.lua.dll
audiere.lua.dll
zip.lua.dll     <-- these already exist as LuaZip and LuaSocket
socket.lua.dll 
etc...
If you want to try to make it yourself, if you use Visual Studio just create a new Win32/DLL project and add the AudiereLua.cpp file to it.

In the AudiereLua.cpp file I had to remove the line:

Code: Select all

#include "../GameShell.h" 
and add include the line:

Code: Select all

#include "audiere.lua.h"  // replace the with name of 
                                   // your DLL project header file
You'll also have to change the TOLUA_API typedefs at the top and bottom of the file to AUDIERELUA_API (or whatever you named your project).

Like I said, mine builds but doesn't load in lua, so I'm not sure what else I'm missing.

edit:

Ok, I got it working. I forgot about stupid extern "C" for DLLs.

To make it work, you need to add

Code: Select all

#ifdef __cplusplus
extern "C" {
#endif
AUDIERELUA_API int tolua_Audiere_open (lua_State* tolua_S);
#ifdef __cplusplus
}
#endif
to your project header file. Since Lua502.dll is made as "C" linkage, anything that links to it also needs "C" linkage. If you don't do that, the compiler makes C++ linkage for a .cpp file.

There are a lot of DLLs that are written in C, and a lot that are written in C++. To make them all play together, most people stick with C linkage for DLLs, even if they are written in C++.
-------------------------------------
IrrLua - a Lua binding for Irrlicht
http://irrlua.sourceforge.net/
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

Post by zenaku »

Here it is:

http://storeandserve.com/download/15181 ... 1.zip.html

On the site, there is a box on the right that says "download now" and the link is at the bottom of the page.


I dunno how long it will stay there, so get it while it's toasty :)
-------------------------------------
IrrLua - a Lua binding for Irrlicht
http://irrlua.sourceforge.net/
Post Reply