for now, the bsp reader only reads the static world data. i took a look in the developement section on the irrlicht site and read that the bsp importer is concerned 100% finished.
my question @niko: what are your plans concerning the bsp importer? i started to play around a bit and managed it to create meshes for all brush entities like doors (by and large i customized constructMesh() and splitted loadTextures() that it works for multiple meshes). i just want to know if you are working on this, because if not i would like to help (for my own benefit also , cause i'm working on an old school fps).
ok, i also want to share some thougths on how the entity (i'm talking bout simple, solid entities like doors, teleporters or buttons) functionality could be implemented... since it is easy to parse the entity string from the lump it won't be too difficult to create animated meshes (like opening doors) according to the entity's properties so that the "dumb" part of the implementation is done.
for the logic there could be a Q3CameraSceneNode that inherits from FPSCameraSceneNode (since the simple logic is automatic this class does not need an interface of it's own), this class could store some states (like pressed buttons etc). for the animations i think of some simple collision response animators that read some state vars from the camera and play animations (like opening a door or remove a secret wall).
this way a subset of q3's entities could be supported without adding a new abstraction layer and the road to implement some more enhanced features like pickung up items or shooting is open too.
ok, long post, maybe just rant, but i like the idea of automating things, especially in game development.
cu
corban
enhancement of bsp importer
I did not really plan to use .bsp files for loading game data, just for getting some coole level geometry into the engine. But as you mention it, maybe it would be a good idea. It would be possible to add some extra methods to the .bsp mesh interface, for letting it create the entities, or at least to get the data out of it.
that would be cool. i think a method to get the entity meshes with their names (maybe a map or two arrays or whatever) and a method to get the entity string. the entity parsing can bedone outside the mesh class (from my pov it also wouldn't fit there, 'cause after all it's a mesh ).niko wrote:It would be possible to add some extra methods to the .bsp mesh interface, for letting it create the entities, or at least to get the data out of it.
cu
corban