Index | FAQ | Search | Memberlist | Usergroups | Profile | Log in to check your private messages | Log in | Register

$frames and self.frame Goto page Previous 1, 2

| Inside3d Forums Forum Index -> QuakeC Programming

View previous topic :: View next topic
Author | Message
--- | ---
Swift Joined: 26 Jan 2010 Posts: 44 |

Posted: Sat Apr 17, 2010 4:20 am Post subject: |

If you're working with Darkplaces, it may be better to use framegroups instead. http://dpwiki.slipgateconstruct.com/index.php?title=Modeling_for_DP

Back to top |

Sajt Joined: 16 Oct 2004 Posts: 1026 |

Posted: Sat Apr 17, 2010 5:50 am Post subject: |

Hmm. Framegroups are useful for idle animations, but not much else. An illustration: if you use framegroups, and some entity goes into a death animation outside of your PVS, and then you move into the room, you'll see the death animation just starting when it should be ending.
_________________
F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.

Back to top |

Swift Joined: 26 Jan 2010 Posts: 44 |

Posted: Sat Apr 17, 2010 5:55 am Post subject: |

Oh really? I'm sure I saw Nexuiz use framegroups for character anims. For some reason I thought they could drastically simplify a hub system for anims. Well, is there any way to jigg it so that framegroup data would be sent to players outside the PVS?
Edit: Actually, one could create seperate DYING and DEAD framegroups entries and do some statemachine checking. Ya? Either way, I'm not entirely sure I understand the downside.

Back to top |

Spike Joined: 05 Nov 2004 Posts: 944 Location: UK |

Posted: Sat Apr 17, 2010 10:20 am Post subject: |

Depends what the framegroup is synced to. In regular quake, the framegroup animation is synced to map start time. So start a framegroup animation and your animation begins mid-death. DP's skeletal models are an exception to this, and those start the animation when the model first dies.
If you're using csqc, then framegroups may be easier to use, where you can specify the exact time into it. Otherwise I wouldn't really recommend using framegroups (the death animation is just one issue).
The first time you see the ent, it'll start playing its current animation. If you remove it and readd it (teleport out and back) the animation restarts. If you switch it to its dead non-animation after a fixed length of time, people just entering the room will see it starting to die then suddenly flat on the ground.
_________________
What's a signature?

Back to top |

mk Joined: 04 Jul 2008 Posts: 95 |

Posted: Tue Apr 20, 2010 3:41 pm Post subject: |

Spike wrote:
In regular quake, the framegroup animation is synced to map start time.

Plus a random amount, if the "random" flag is defined.
_________________
Makaqu engine blog / website.
Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn.

Back to top |

Swift Joined: 26 Jan 2010 Posts: 44 |

Posted: Thu Apr 22, 2010 6:14 am Post subject: |

I guess the question remains: can all of these problems with framegroups can be averted if player animation is coded in CSQC?

Spike wrote:
If you're using csqc, then framegroups may be easier to use, where you can specify the exact time into it.

What are the effects of using .frame1time frame2time etc?
Assuming MD1/MD3 model - Does frame1time/frame2time specify the next frame, or next framegroup?

Back to top |

Spike Joined: 05 Nov 2004 Posts: 944 Location: UK |

Posted: Thu Apr 22, 2010 10:35 am Post subject: |

.frame specifies the framegroup .frametime specifies the time into the framegroup. this results in a 4-way blend between the two frames of the new framegroup and the two frames of the old framegroup. if you then send the time at which the animation was meant to start from the server, and calc the frametime as time - startime, then someone seeing a death half way through or after the event will see it starting half way through or already dead.
how you encode the time can vary. one way is as 'X seconds ago' rather than the absolute time, as this can be sent in a single byte. You'll want to scale it.
_________________
What's a signature?

Back to top |

ceriux Joined: 06 Sep 2008 Posts: 969 Location: Florida, USA |

Posted: Mon Apr 26, 2010 2:56 pm Post subject: |

frag.machine wrote:
I still don't think it's a good programming practice, but... It's up to you. It's your code.

personally its easier for me to code animations with out macro's they confuse me.
_________________
QuakeDB - Quake ModDB Group

Back to top |

Display posts from previous:

| Inside3d Forums Forum Index -> QuakeC Programming | All times are GMT Goto page Previous 1, 2
Page 2 of 2

Jump to:

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2004 phpBB Group