ChrisC
23-10-2008 15:03:31
gimpact offers a number of advantages over opcode and I think I have nearly got it working
(think speed and stability!)
basically guns hit the static trimesh and stay put rather than jittering about like opcode can do...
when I had a prescaled barrel.mesh (had to scale it smaller!) - think proper wheel shapes not spheres!(eventually!!) I get dNormalization4 asserts just as two trimeshes are about to settle together (might be a problem with near parallel tris?), a trimesh will work just fine with the primitives...
I've seen something similar when I was messing round with the contrib cylinder collider and did a hairy arsed hack to add a small delta to very small values but that was ages ago, but the fact that it only happens with trimesh vs trimesh means it can already be narrowed down to one or two source files - so an ode patch might be a possibility
However (the good news) going back to an unscaled gun.mesh and it seems to work fine.
I need to do more testing...
Is this normal behaviour if you scale a trimesh node ??? (the barrel.mesh is very large and I had to scale by a factor of .1)
node->setScale(size.x * .1,size.y * .1,size.x * .1);
I've noticed the textures loose their mipmapping briefly every time a mesh is added - i do hope this is a simpleApplication.cpp bug..... (possibly platform implementation differences? RC wrinkle??)
I'm working on code I pulled from svn (for ogreode) a few days ago and OGRE 1.6.0RC1 source for ogre and ode (svn) configured with ./configure --with-pic --with-trimesh=gimpact on Ubuntu Intrepid (64-bit)
I'd like to see these improvements make it into svn - what's the best way to go about it? could someone contact me directly. I don't own windows so I will have to work with some poor unfortunate that has windows.
at the moment its restricted to single precision ode but that's not much of a caveat as I'm not convinced there's any real benefit from double precision - but I've been wrong before..
(and that's only really laziness on my part I'm fairly sure it could be made to work with both)
I'd welcome any advice or thoughts people have. I think I've covered all the major highlights of this coding session...
must.... sleep.....
basically guns hit the static trimesh and stay put rather than jittering about like opcode can do...
when I had a prescaled barrel.mesh (had to scale it smaller!) - think proper wheel shapes not spheres!(eventually!!) I get dNormalization4 asserts just as two trimeshes are about to settle together (might be a problem with near parallel tris?), a trimesh will work just fine with the primitives...
I've seen something similar when I was messing round with the contrib cylinder collider and did a hairy arsed hack to add a small delta to very small values but that was ages ago, but the fact that it only happens with trimesh vs trimesh means it can already be narrowed down to one or two source files - so an ode patch might be a possibility
However (the good news) going back to an unscaled gun.mesh and it seems to work fine.
I need to do more testing...
Is this normal behaviour if you scale a trimesh node ??? (the barrel.mesh is very large and I had to scale by a factor of .1)
node->setScale(size.x * .1,size.y * .1,size.x * .1);
I've noticed the textures loose their mipmapping briefly every time a mesh is added - i do hope this is a simpleApplication.cpp bug..... (possibly platform implementation differences? RC wrinkle??)
I'm working on code I pulled from svn (for ogreode) a few days ago and OGRE 1.6.0RC1 source for ogre and ode (svn) configured with ./configure --with-pic --with-trimesh=gimpact on Ubuntu Intrepid (64-bit)
I'd like to see these improvements make it into svn - what's the best way to go about it? could someone contact me directly. I don't own windows so I will have to work with some poor unfortunate that has windows.
at the moment its restricted to single precision ode but that's not much of a caveat as I'm not convinced there's any real benefit from double precision - but I've been wrong before..
(and that's only really laziness on my part I'm fairly sure it could be made to work with both)
I'd welcome any advice or thoughts people have. I think I've covered all the major highlights of this coding session...