论文部分内容阅读
计算机动画在当今具有广泛的应用,无论游戏、电影还是虚拟现实,到处都有它的身影。人物动画作为计算机动画的一部分,是一个应用研究热点。因为人物运动的复杂性,无论是人体关节的相互作用,还是皮肤之间的作用,都会随着运动的不同而不同。想逼真模拟人物运动,不仅要考虑人物的逻辑动作,还要处理好皮肤等组织的变形。而将人物放置到虚拟环境中,还需要考虑在环境中如何运动以及与环境中其它物体之间的碰撞检测。这些都具有相当的难度。本文的研究工作分为三个主要部分:第一部分是虚拟人运动模型的建立;第二部分是虚拟人运动控制;第三部分是基于A*算法的三维地形条件下的路径规划。虚拟人模型是三维计算机动画的基础,在三维人体动画中,首要问题就是要构造出逼真的人体模型。本文采用分层虚拟人表示方法,在这样一种分层表示模型中,一个虚拟人模型由基本骨架层和皮肤层组成。其中的基本骨架由关节确定其状态,决定了虚拟人体的基本运动姿态,然后由皮肤层确定虚拟人显示的外观。运动控制是虚拟人研究中一项十分重要的内容,也是本文的一个研究重点,本文主要结合了关键帧方法和逆运动学方法来实现虚拟人的步行运动。生物学的研究把步行运动归结为两个运动相的循环:站立相和摇摆相。本文根据这两个运动相将每一步划分成三个阶段,并借助3D Max设计出对应于每个阶段的关键帧,且使用Spline插补法来产生平滑的插补曲线,这样使动画看起来很通畅、平滑。而逆运动学可以明确关节模型中不同层次的对象的位置,可以让运动看起来更自然协调。要实现虚拟人在三维场景中的行走,本文首先建立一个虚拟场景,并且运用模糊逻辑理论,用栅格法将3D虚拟环境映射成2D环境。然后应用启发式搜索来进行路径规划,产生从初始位置到目标位置的最优路径,引导虚拟人对环境进行漫游。A*算法是本文用来解决路径搜索问题的启发式搜索方法,其主要思想是通过不断搜索,以避开障碍物、不断逼近目的地的节点来获得所需要的路径。