Entity system in Lua, communication with C++ and level editor. Need advice.

Posted by Notbad on Game Development See other posts from Game Development or by Notbad
Published on 2011-01-06T20:48:48Z Indexed on 2011/01/06 20:59 UTC
Read the original article Hit count: 141

Filed under:


I know this is a really difficult subject. I have been reading a lot this days about Entity systems, etc... And now I'm ready to ask some questions (if you don't mind answering them) because I'm really messed.

First of all, I have a 2D basic editor written in Qt, and I'm in the process of adding entitiy edition. I want the editor to be able to receive RTTI information from entities to change properties, create some logic being able to link published events to published actions (Ex:A level activate event throws a door open action), etc... Because all of this I guess my entity system should be written in scripting, in my case Lua.

In the other hand I want to use a component based design for my entities, and here starts my questions:

1) Should I define my componentes en C++? If I do this en C++ won't I loose all the RTTI information I want for my editor?. In the other hand, I use box2d for physics, if I define all my components in script won't it be a lot of work to expose third party libs to lua?

2) Where should I place the messa system for my game engine? Lua? C++?.

I'm tempted to just have C++ object to behave as servers, offering services to lua business logic. Things like physics system, rendering system, input system, World class, etc... And for all the other things, lua. Creation/Composition of entities based on components, game logic, etc...

Could anyone give any insight on how to accomplish this? And what aproach is better?.

Thanks in advance, HexDump.

© Game Development or respective owner

Related posts about architecture