Help me migrate to NxOgre

okasugandi

22-07-2009 04:39:59

Hello, i'm a newbie in NxOgre, I hope all of my questions are not asked before.

I have a quite working game that is using OpCode (Collision Detection only), everything works well, but I had a frustrating problem regarding character jumping that I was implemented by myself which resulted in many bugs :(. Why I chose Ogre-OpCode instead of a Physics Engine because I thought using Physics Engine is overkill, my game does not need a complex physics simulation, "just" a jump and movement, no sliding, no bumping, etc. Am I wrong? :? After I compared many Ogre-Binding-Physics Engine, I thought NxOgre is the most promising :) I like Betajaen's short guide very much!

I have compiled NxOgre, and when I want to implement NxOgre to my game, I have several difficulties:
1. Does NxOgre have the ability to create Ogre3DBody using an already created Ogre::Entity? Because I have my own resource management and paging using Ogre's background loading capabilities (my world is about 4km x 4 km full with objects). My question about entity is the rendering part of the body, not the shape part of the body. I have learned that NxOgre cannot have a Shape straight from the .mesh (entity), but using a tool named flour to convert it, I thought it is very great, because in OpCode before, I almost made a tool to reduce the vertex of the mesh too :).
2. Does NxOgre have the ability to load Nx files (.nxs, .xsk, etc) from Ogre::Resource? Because I have my own Archive data type (.dat) and almost all my resource files are archived to those files.
3. Regarding my thought about overkill by using physics engine, is there any mechanism to use only gravitation and collision engine and shut off all others like bumping, sliding, etc? E.g. a character is standing in a not flat terrain, logically the character is sliding down, but my game is not like that, the character should just stand still at the terrain.

Thank you very much Betajaen and others! I hope I can contribute something to NxOgre development :).

spacegaier

22-07-2009 06:57:21

1. The Ogre3DBody provided by betajaen can't do that, but there is noone stopping you from subclassing it and adding some functions to it.

betajaen

22-07-2009 10:37:55

1. The Ogre3DBody provided by betajaen can't do that, but there is noone stopping you from subclassing it and adding some functions to it.

Or writing your own from scratch based roughly upon the OGRE3DRenderSystem is encouraged.

2. No, it doesn't touch the Ogre Resource system. It has it's own; but you can write your own resource protocol (see ResourceProtocol, Archive and Resource) to work with your dat archives. It isn't that difficult to do, and you may be able to use much of your code from your Ogre implementation in it.

3. You could try increasing the linear damping, and lowering the sleep threshold.

okasugandi

23-07-2009 03:12:21

Thank you spacegaier and betajaen for your answers and support. I will give it a try :).