Stéphane Redon, Young J. Kim, Ming C. Lin, Dinesh Manocha, Jim Templeman
{"title":"Interactive and continuous collision detection for avatars in virtual environments","authors":"Stéphane Redon, Young J. Kim, Ming C. Lin, Dinesh Manocha, Jim Templeman","doi":"10.1109/VR.2004.46","DOIUrl":null,"url":null,"abstract":"We present a fast algorithm for continuous collision detection between a moving avatar and its surrounding virtual environment. We model the avatar as an articulated body using line-skeletons with constant offsets and the virtual environment as a collection of polygonized objects. Given the position and orientation of the avatar at discrete time steps, we use an arbitrary in-between motion to interpolate the path for each link between discrete instances. We bound the swept-space of each link using a swept volume (SV) and compute a bounding volume hierarchy to cull away links that are not in close proximity to the objects in the virtual environment. We generate the SV's of the remaining links and use them to check for possible interferences and estimate the time of collision between the surface of the SV and the objects in the virtual environment. Furthermore, we use graphics hardware to perform collision queries on the dynamically generated swept surfaces. Our overall algorithm requires no precomputation and is applicable to general articulated bodies. We have implemented the algorithm on a 2.4 GHz Pentium IV PC with NVIDIA GeForce FX 5800 graphics card and applied it to an avatar with 16 links, moving in a virtual environment composed of hundreds of thousands of polygons. Our prototype system is able to detect all contacts between the moving avatar and the environment in 1.0 - 30 milliseconds.","PeriodicalId":375222,"journal":{"name":"IEEE Virtual Reality 2004","volume":"46 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-03-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Virtual Reality 2004","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/VR.2004.46","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5
Abstract
We present a fast algorithm for continuous collision detection between a moving avatar and its surrounding virtual environment. We model the avatar as an articulated body using line-skeletons with constant offsets and the virtual environment as a collection of polygonized objects. Given the position and orientation of the avatar at discrete time steps, we use an arbitrary in-between motion to interpolate the path for each link between discrete instances. We bound the swept-space of each link using a swept volume (SV) and compute a bounding volume hierarchy to cull away links that are not in close proximity to the objects in the virtual environment. We generate the SV's of the remaining links and use them to check for possible interferences and estimate the time of collision between the surface of the SV and the objects in the virtual environment. Furthermore, we use graphics hardware to perform collision queries on the dynamically generated swept surfaces. Our overall algorithm requires no precomputation and is applicable to general articulated bodies. We have implemented the algorithm on a 2.4 GHz Pentium IV PC with NVIDIA GeForce FX 5800 graphics card and applied it to an avatar with 16 links, moving in a virtual environment composed of hundreds of thousands of polygons. Our prototype system is able to detect all contacts between the moving avatar and the environment in 1.0 - 30 milliseconds.
提出了一种快速的移动角色与其周围虚拟环境之间的连续碰撞检测算法。我们使用具有恒定偏移量的线骨架将化身建模为铰接体,并将虚拟环境建模为多边形对象的集合。给定角色在离散时间步长的位置和方向,我们使用任意的中间运动来插值离散实例之间每个链接的路径。我们使用扫描卷(SV)绑定每个链接的扫描空间,并计算边界卷层次结构来剔除虚拟环境中不靠近对象的链接。我们生成剩余链路的SV,并使用它们来检查可能的干扰,并估计SV表面与虚拟环境中物体之间的碰撞时间。此外,我们使用图形硬件对动态生成的扫描表面执行碰撞查询。我们的整体算法不需要预计算,适用于一般铰接体。我们在2.4 GHz Pentium IV PC和NVIDIA GeForce FX 5800显卡上实现了该算法,并将其应用于具有16个链接的化身,在由数十万个多边形组成的虚拟环境中移动。我们的原型系统能够在1.0 - 30毫秒内检测到移动角色和环境之间的所有接触。