动态模型互动


12

我只是想知道在许多游戏(例如arkham庇护/城市,追捕,杀手等游戏)中如何做到这一点,以便您的角色可以“抓住”您面前的角色并对其进行处理。我知道这听起来可能很令人困惑,但是举个例子,去youtube并搜索“杀手s子”,而第一个视频就是我要问的例子。

基本上,我想知道它们是如何使您的模型与您遇到的任何其他模型动态交互的,所以在《杀手》中,当您用纤维丝站在某个人身后时,您会勒住另一个角色,或者如果您使用麻醉剂,则在某个人身后当他们挣扎时,把手放在那张嘴上,然后慢慢走到地板上,放下它们。如果只是在正确的时间播放两个完全独立的动画,使它们看起来像是在实际交互,还是其他东西在一起,我是否为使用两个模型使用特定的骨骼/骨骼标识符感到困惑。

我不是动画师,所以我认为我刚才所说的大部分内容都不对,但我希望有人能理解我的意思并提供答案。

PS)我是一名程序员,并且我正在开发一款流线型游戏,因为我喜欢那种风格的游戏,而且我想增加一些有趣的东西的技能,所以如果您确实知道我在说什么,请尝试一些同时涉及模型和编程的示例(我目前使用c ++,主要使用Ogre3D,但我正在使用unity和XNA),我将不胜感激。

谢谢。

Answers:


4

我怀疑它们是同步的动画,因为在大多数情况下(即角色在同一楼层上),这最容易实现。您可以看到,Hitman动画实际上并没有特别好地同步(剑杆场景)。当时它已经是一个相当革命性的游戏,所以我认为玩家愿意忽略一些小错误。我当时知道的游戏玩家当然没有抱怨。

除此之外,例如,如今,对于角色动画,还有一些非常出色的物理驱动解决方案。EuphoriaRune Skovbo Johansen的Unity运动系统,仅举几例。在“ 欣快感”中,您可以从他们的视频中看到现实主义的疯狂程度。该系统用于GTA 4,《荒野大镖客》和《星球大战:原力释放》。毫无疑问,它可以轻松实现您给出的示例。它还暗示了反应式动画的开发工作量。

对于单个开发人员而言,完成比同步动画方法更多的工作可能会非常耗时,甚至可能会出现问题:例如,处于不同高度的角色,您可能需要弯腰躯干才能发动攻击在另一个角色上,但这可能会有自己的问题(例如,在勒死/割喉时),例如角度太锐利。我想一种解决方法可能是使角色略微弯曲膝盖,以使受害者的躯干高度均匀。有点像排队打高尔夫球,老家伙。


谢谢尼克的信息。我怀疑它们只是同步的动画,应该可以满足我的需求,因为我的角色(无论何时都可以“执行”它们)将始终与您处于同一水平。
理查德
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.