【技术实现步骤摘要】
基于可形变网格的碰撞处理方法、系统、设备及介质
[0001]本专利技术涉及计算机仿真
,尤其是基于可形变网格的碰撞处理方法、系统、设备及介质。
技术介绍
[0002]基于物理的仿真动画通过在计算机中求解基于物理的动力学微分方程实现逼真的物体运动和交互动画,在游戏、影视特效、工业设计和计算机图形学(CG)艺术中有着大量运用。现实中的可形变弹性物体如布料、头发、橡胶、塑料和金属薄壳制品等在受力下会发生形变,而形变又产生应力。在物理仿真动画的实际应用中,一般会将多个可形变弹性物体和预设的碰撞物一同组成场景并使其相互碰撞交互,产生丰富的视觉效果。
[0003]计算机图形学中,可形变弹性物体一般由网格(mesh)表示,其运动和形变自由度由各个顶点的位置坐标提供。对于单个可形变物,其总弹性势能一般可写为由网格所有顶点坐标决定的标量值函数。由总弹性势能对各顶点位置坐标求导可得到各顶点所受的弹力,而弹力对时间积分则可得到顶点的冲量。由于弹力是顶点坐标的函数,但顶点坐标随时间一直变化,因此弹力对时间的积分难以精确计算。应用中一般将整个仿真的时域划分为大量极短的时间步,并近似认为单个时间步中的弹力保持恒定,从而近似计算冲量积分。冲量积分计算完成后,将冲量除以顶点质量即可得到一个时间步中弹力对顶点施加的速度变化量。
[0004]但是,由于物理仿真往往涉及极高的三角面数,即使使用BVH(层次包围盒)和空间剖分等加速结构,碰撞处理在仿真中也常常占据大量的运行时间,且加速结构和碰撞处理的实现较为复杂。
技术实现思路
...
【技术保护点】
【技术特征摘要】
1.基于可形变网格的碰撞处理方法,其特征在于,包括以下步骤:获取可形变弹性物体表面中三角面的纤维向量;构建可形变弹性物体的包围盒,根据所述包围盒构建得到笛卡尔网格;对碰撞接触面进行采样,并根据所述三角面的顶点坐标构建得到采样点集;根据所述三角面的顶点坐标以及所述纤维向量,进行塑性投影得到目标弹性形变梯度;根据所述采样点集中的采样点以及所述目标弹性形变梯度,对动量方程进行离散化求解得到所述笛卡尔网格中格点的第一速度;构建有向距离场,根据所述格点在所述有向距离场的第二速度以及法向量确定可形变弹性碰撞后的第三速度;根据所述第三速度确定所述采样点的第一冲量,根据所述第一冲量确定所述三角面的速度变化量,根据所述速度变化量确定碰撞情况。2.根据权利要求1所述的基于可形变网格的碰撞处理方法,其特征在于,所述构建可形变弹性物体的包围盒,根据所述包围盒构建得到笛卡尔网格这一步骤,包括:获取所述包围盒的最大值坐标点以及最小值坐标点;根据所述最大值坐标点、所述最小值坐标点以及元胞边长计算得到三轴元胞数,根据所述三轴元胞数确定所述笛卡尔网格。3.根据权利要求1所述的基于可形变网格的碰撞处理方法,其特征在于,所述根据所述三角面的顶点坐标以及所述纤维向量,进行塑性投影得到目标弹性形变梯度这一步骤,包括:根据所述三角面的顶点坐标以及所述纤维向量构建得到正交基;获取初始构型下的第一向量,以及发生弹性形变后的第二向量,所述第二向量通过所述正交基进行表征;根据所述第一向量的逆矩阵以及所述第二向量计算得到所述候选弹性形变梯度;根据所述候选弹性形变梯度进行塑性投影得到所述目标弹性形变梯度。4.根据权利要求3所述的基于可形变网格的碰撞处理方法,其特征在于,所述根据所述三角面的顶点坐标以及所述纤维向量,进行塑性投影得到目标弹性形变梯度这一步骤,包括:获取所述三角面在法向量上的伸缩状态;根据所述伸缩状态确定所述三角面所在表面为未接触状态,将接触弹力与摩擦力均置零,根据塑性约束条件对所述候选弹性形变梯度进行塑性投影得到所述目标弹性形变梯度;或者,根据所述伸缩状态确定所述三角面所在表面为接触状态,获取所述三角面在法向量上的剪切状态以及剪切方向,确定所述剪切状态以及所述剪切方向满足摩擦定律约束,对所述候选弹性形变梯度进行塑性投影得到所述目标弹性形变梯度。5.根据权利要求4所示的基于可形变网格的碰撞处理方法,其特征在于,所述根据所述伸缩状态确定所述三角面所在表面为接触状态,获取所述三角面在法向量上的剪切状态以及剪切方向,确定所述剪切状态以及所述剪切方向满足摩擦定律约束,对所述候选弹性形
变梯度进行塑性投影得到所述目标弹性形变梯度这一步骤,包括:...
【专利技术属性】
技术研发人员:柯建生,戴振军,陈学斌,
申请(专利权)人:广州极点三维信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。