DP supports skeletal objects too. If you have your various different entities(body parts) all moving around hidden in csqc, you can build a skeletal object containing those positions and attach that you an iqm mesh or so.
Should look better than the multiple disjointed aproach.
This is basically what 'real' ragdoll is - using a physics engine to determine the position of the bones of a model. The only catches with DP here is that there's no ODE available to csqc, and no way to automatically set up/copy ODE bodies into the bones of your mesh.
Of course, if you remember that ODE sucks in the first place, then this isn't too much of a concern.
RaQdoll
-
- Posts: 1395
- Joined: Tue Feb 24, 2009 4:39 pm
- Location: Italy
Re: RaQdoll
Yeah, that was my first attempt with DP, but I failed because I couldn't move physics object with csqc. Now I switched to FTE and I'm happy!DP supports skeletal objects too. If you have your various different entities(body parts) all moving around hidden in csqc, you can build a skeletal object containing those positions and attach that you an iqm mesh or so.
![Big Grin :D](./images/smilies/icon_biggrin.gif)
According to this.. why did you guys (you and LordHavoc) choose ODE instead of Bullet physics engine? I mean, Bullet is more stable, and it's more often updated. ODE is buggy and its development it's dead long time ago(I noticed on sourceforge page just little bug fixes).Of course, if you remember that ODE sucks in the first place, then this isn't too much of a concern.
If you don't believe me, listen to who really knows what he's talking about!
![Big Grin :D](./images/smilies/icon_biggrin.gif)
Meadow Fun!! - my first commercial game, made with FTEQW game engine
Re: RaQdoll
If I recall, LH added ODE to DP around the same time that we did to CRX. If you notice that article from Wolfire was five years ago too, and pointed out some of the reasons why he originally used ODE. Basically, the C api for Bullet was undeveloped and poorly documented, whereas ODE seemed like the more complete, stable, well tested and documented engine.
Implementing ragdolls was something that we had looked at for CRX ever since UT2k3 came out. Then Lee Salazman got them working in Sauerbraten Engine, using his own newtonion particle based physics engine, and my first attempt was to adapt that to CRX, but I started looking at other open sourced physics engines like Bullet and ODE, and eventually settled on ODE, this in 2010 or 2011 I think. Lee and I had talked about that when he was first thinking of the design of the IQM format, and he was hoping that I'd use his particle engine, but I insisted on sticking with ODE as it was what I had been studying for some time. He of course warned me about ragdolls - that they are very tricky to get right - and he was right. I spent many nights in the summer of 2011 working on them, and I eventually got them very close to working, but something was off. Lee and I spent a number of nights working together on it to try and get it finished, and eventually he figured out my error(and a couple of other errors), and we got it working.
Since then ODE has gotten some bug fixes, and it seem quite stable, IMO. We've had very few issues with it - the only issues we have now are distros that are using older versions of it and should be updated.
Implementing ragdolls was something that we had looked at for CRX ever since UT2k3 came out. Then Lee Salazman got them working in Sauerbraten Engine, using his own newtonion particle based physics engine, and my first attempt was to adapt that to CRX, but I started looking at other open sourced physics engines like Bullet and ODE, and eventually settled on ODE, this in 2010 or 2011 I think. Lee and I had talked about that when he was first thinking of the design of the IQM format, and he was hoping that I'd use his particle engine, but I insisted on sticking with ODE as it was what I had been studying for some time. He of course warned me about ragdolls - that they are very tricky to get right - and he was right. I spent many nights in the summer of 2011 working on them, and I eventually got them very close to working, but something was off. Lee and I spent a number of nights working together on it to try and get it finished, and eventually he figured out my error(and a couple of other errors), and we got it working.
Since then ODE has gotten some bug fixes, and it seem quite stable, IMO. We've had very few issues with it - the only issues we have now are distros that are using older versions of it and should be updated.
http://red.planetarena.org - Alien Arena and the CRX engine
Re: RaQdoll
I'm really not sure if that is the case. People have done all the usual PC game physics things with ODE at this point. It really is not this hellspawn that some people make it out to be. It's just a physics engine.Of course, if you remember that ODE sucks in the first place, then this isn't too much of a concern.
Now Quake engines seem to have trouble properly supporting ODE (or any other physics engine for that matter), that's true. But that's not ODE's fault.
-
- Posts: 14
- Joined: Sun Oct 19, 2014 2:37 am
Re: RaQdoll
@Error,Quick QC question:
What would be the best way to have an entity "circle" another entity while being affected by gravity and velocity? It should be a straight line on a set distance. Tracelines aren't working too well for me. All my entities are movetype_bounce currently.
This is really cool stuff so thanks for sharing. If you want to get things to orbit around another entity much like planets do for the sun then this is not that difficult. Basically you can spawn your sun to have a think. Have it do a findradius for a specific classname you want to be affected. Take its velocity and add it to the vector length distance difference of its location minus the other entities location, give it an attraction/force coefficient and multiple by this amount. That will draw the entity in to the direction of the "sun" entity. But as you might have guessed as it gets closer its velocity will increase significantly and it will shoot out away from the 'sun' entity. To fix this when it leaves from the entity after a certain distance you start applying a reverse amount of force to make it come back towards the entity. This would simulate a gravity type effect. For this to work well you would want your other entities (planets) to have varies different velocities so you can get different orbit patterns and distances and also change direction of velocity for or varied orbital patterns. Here is an example I cooked up for you to see. I have trouble recording video so I made a gif.
![Image](http://i.imgur.com/s7GLb2x.gif)
-
- Posts: 1395
- Joined: Tue Feb 24, 2009 4:39 pm
- Location: Italy
Re: RaQdoll
I think it's one of the most poetic Quake-related pics!
Anyway, planets seem to go off the path, after a while
![Big Grin :D](./images/smilies/icon_biggrin.gif)
Meadow Fun!! - my first commercial game, made with FTEQW game engine
Re: RaQdoll
Sorry to necro this really old thread, but
Just wondering if Error is around, or if there's someone else that has the source to this mod they could share with me. Working on a CSQC mod and this one looks good for better corpses
. I've tried sagdoll, but could not get it to work properly clientside for some reason - also just playing the normal version of it against Frikbots I get looots of lag and framedrops ![Neutral :|](./images/smilies/icon_neutral.gif)
Just wondering if Error is around, or if there's someone else that has the source to this mod they could share with me. Working on a CSQC mod and this one looks good for better corpses
![Smile :)](./images/smilies/icon_smile.gif)
![Neutral :|](./images/smilies/icon_neutral.gif)