高级检索
贾世宇, 潘振宽, 张维忠. OpenCL加速的基于虚拟节点法的柔性体实时切割仿真[J]. 计算机辅助设计与图形学学报, 2014, 26(10): 1852-1859.
引用本文: 贾世宇, 潘振宽, 张维忠. OpenCL加速的基于虚拟节点法的柔性体实时切割仿真[J]. 计算机辅助设计与图形学学报, 2014, 26(10): 1852-1859.
Jia Shiyu, Pan Zhenkuan, Zhang Weizhong. OpenCL-Accelerated Real-Time Cutting Simulation of Deformable Objects Based on Virtual Node Method[J]. Journal of Computer-Aided Design & Computer Graphics, 2014, 26(10): 1852-1859.
Citation: Jia Shiyu, Pan Zhenkuan, Zhang Weizhong. OpenCL-Accelerated Real-Time Cutting Simulation of Deformable Objects Based on Virtual Node Method[J]. Journal of Computer-Aided Design & Computer Graphics, 2014, 26(10): 1852-1859.

OpenCL加速的基于虚拟节点法的柔性体实时切割仿真

OpenCL-Accelerated Real-Time Cutting Simulation of Deformable Objects Based on Virtual Node Method

  • 摘要: 为了提高柔性体变形仿真运行速度并且解决切割对变形计算稳定性的负面影响,提出了能与GPU加速的变形算法协同运作的基于虚拟节点法的柔性体实时切割仿真方法.柔性体模型由真实四面体网格嵌入虚拟四面体网格中构成,前者用于碰撞处理和图形渲染,而后者则用于变形计算.切割算法首先分裂真实四面体网格;然后复制包含超过一块真实四面体连通碎片的虚拟四面体,每个复制品包含一块真实四面体碎片;再根据真实四面体之间的连接关系更新虚拟四面体之间的连接关系;最后更新真实四面体网格与虚拟四面体网格之间的镶嵌关系.为了确保仿真系统不被限制在NVIDIA公司的GPU上,GPU加速使用OpenCL实现.仿真测试结果表明,该方法可以在任意多次切割情况下保持变形计算稳定不发散,并且在NVIDIA公司和AMD公司的GPU上都可以正确运行.

     

    Abstract: A GPU-friendly implementation of the virtual node cutting method is proposed to cooperate with a GPU-accelerated deformation method, which both improves the efficiency of deformation calculation and alleviates numerical stability issues caused by cutting.A deformable object is modeled as a real tetrahedral mesh embedded in a virtual tetrahedral mesh.The former is used for collision and rendering, while the latter is used for deformation.During cutting, the real tetrahedral mesh is first split, and then the virtual tetrahedrons containing more than one connected real tetrahedral fragment are individually duplicated such that each copy contains only one fragment.Next, the connectivity between the virtual tetrahedrons is updated according to the connectivity of real tetrahedrons.Finally, the embedding information between the real and virtual tetrahedral meshes is updated.GPU acceleration is implemented using OpenCL to make it also compatible with those GPUs which do not support CUDA.The results of our experiments show that our method can keep deformation calculation stable (i.e., it is not divergent) under multiple arbitrary cuts, and works correctly on GPUs made by both NVIDIA and AMD.

     

/

返回文章
返回