Abstract
We propose a graphics processing unit-based approach to accelerate the radial view-based culling method for continuous self-collision detection of deformable surfaces. The deformable surfaces may have small round-shaped holes and ghost triangles are used to fill the holes. We identify the key processes of the radial view-based culling method, including triangle classification, traversal of bounding volume hierarchies and handling violated triangles (i.e., the triangles intersecting with ghost triangles). We propose efficient parallel processing techniques to perform these key processes on a programmable graphics unit. We have evaluated our proposed approach on several examples. Experimental results show that our approach significantly cuts down the cost of the key processes of the radial-based culling method, compared with the serial implementation on CPU.











Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
Solving a cubic equation for a triangle pair and distance calculation for the triangle pair.
References
Allard, J., Faure, F., Courtecuisse, H., Falipou, F., Duriez, C., Kry, P.: Volume contact constraints at arbitrary resolution. ACM Trans. Graph. 29(4), 82 (2010)
Baciu, G., Wong, W.-K.: Hardware-assisted selfcollision for deformable surfaces. In: ACM Symposium on Virtual Reality Software and Technology, pp. 129–136 (2002)
Govindaraju, N., Knott, D., Jain, N., Kabul, I., Tamstorf, R., Gayle, R., Lin, M., Manocha, D.: Interactive collision detection between deformable models using chromatic decomposition. ACM Trans. Graph. 24(3), 991–999 (2005)
Gottschalk, S., Lin, M., Manocha, D.: OBBTree: a hierarchical structure for rapid interference detection. In: Proceedings of the 23rd Annual Conference on Computer Graphics and Interactive Techniques, pp. 171–180 (1996)
Govindaraju, N., Redon, S., Lin, M., Manocha, D.: Cullide: interactive collision detection between complex models in large environments using graphics hardware. In: Proceedings of ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware, pp. 25–32 (2003)
Heidelberger, B., Teschner, M., Gross, M.: Detection of collisions and self-collisions using image-space techniques. In: WSCG, pp. 145–152 (2004)
Kim, D., Heo, J., Huh, J., Kim, J., Yoon, S.: HPCCD: hybrid parallel continuous collision detection using CPUs and GPUs. Proc. Korea Adv. Inst. Sci. Technol. 28(7), 1791–1800 (2009)
Klosowski, J., Held, M., Mitchell, J., Sowizral, H., Zikan, K.: Efficient collision detection using bounding volume hierarchies of k-DOPs. IEEE Trans. Vis. Comput. Graph. 4(1), 21–36 (1998)
Knott, D., Pai, K.: Cinder: collision and interference detection in real-time using graphics hardware. In: Proceedings of Graph Interface (2003)
Larsson, T., Akenine-Möller, T.: A dynamic bounding volume hierarchy for generalized collision detection. Comput. Graph. 30(3), 450–459 (2006)
Liu, F., Harada, T., Lee, Y., Kim, Y.: Real-time collision culling of a million bodies on graphics processing units. ACM Trans. Graph. (TOG) 29(6), 154 (2010)
Lauterbach, C., Mo, Q., Manocha, D.: gProximity: hierarchical GPU-based operations for collision and distance queries. Comput. Graph. Forum 29(2), 419–428 (2010)
Palmer, I., Grimsdale, R.: Collision detection for animation using sphere-trees. Comput. Graph. Forum 14(2), 105–116 (1995)
Pabst, S., Koch, A., Straßer, W.: Fast and scalable CPU/GPU collision detection for rigid and deformable surfaces. Comput. Graph. Forum 29(5), 1605–1612 (2010)
Pan, J., Manocha, D.: GPU-based parallel collision detection for real-time motion planning. Algorithmic Found. of Robot. IX, 211–228 (2011)
Provot, X.: Collision and self-collision handling in cloth model dedicated to design garments. In: Proceedings of Graphics Interface, pp. 177–189 (1997)
Schvartzman, S., Gason, J., Otaduy, M.: Bounded normal trees for reduced deformations of triangulated surfaces. In: Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation, pp. 75–82 (2009)
Tang, M., Curtis, S., Yoon, S.-E., Manocha, D.: ICCD: interactive continuous collision detection between deformable models using connectivity-based culling. IEEE Trans. Vis. Comput. Graph. 15(4), 544–557 (2009)
Teschner, M., Kimmerle, S., Heidelberger, B., Zachmann, G., Raghupathi, L., Fuhrmann, A., Cani, M., Faure, F., Magnenat-Thalmann, N., Strasser, W., et al.: Collision detection for deformable objects. In: Computer Graphics Forum, pp. 61–81 (2005)
Tang, C., Li, S., Wang, G.: Fast continuous collision detection using parallel filter in subspace. In: ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games, pp. 71–80 (2011)
Tang, M., Manocha, D., Lin, J., Tong, R.: Collision-streams: fast GPU-based collision detection for deformable models. In: I3D’11: Proceedings of the 2011 ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games, pp. 63–70 (2011)
Tang, M., Manocha, D., Tong, R.: Multi-core collision detection between deformable models. In: 2009 SIAM/ACM Joint Conference on Geometric and Physical Modeling, pp. 355–360 (2009)
Tang, M., Yoon, S.-E., Manocha, D.: Adjacency-based culling for continuous collision detection. Vis. Comput. 24(7–9), 545–553 (2008)
van den Bergen, G.: Efficient collision detection of complex deformable models using AABB trees. J. Graph. GPU Game Tools 2(4), 1–14 (1999)
Volino, P., Magnenat-Thalmann, N.: Efficient self-collision detection on smoothly discretized surface animations using geometrical shape regularity. In: Computer Graphics Forum, pp. 155–166 (1994)
Vassilev, T., Spanlang, B., Chrysanthou, Y.: Fast cloth animation on walking avatars. Comput. Graph. Forum 20(3), 260–267 (2001)
Wong, W., Baciu, G.: Dynamic interaction between deformable surfaces and non-smooth objects. IEEE Trans. Vis. Comput. Graph. 11(3), 329–340 (2005)
Wong, S.-K., Baciu, G.: A randomized marking scheme for continuous collision detection in simulation of deformable surfaces. In: Proceedings of the ACM Int’l Conference on Virt. Reality Continuum and its Applications, pp. 181–188 (2006)
Wong, W.S.-K., Baciu, G.: Robust continuous collision detection for interactive deformable surfaces. Comput. Animat. Virtual Worlds 18(3), 179–192 (2007)
Wong, S.-K., Baciu, G.: Continuous collision detection for deformable objects using permissible clusters. Vis. Comput. 1–13 (2014). doi:10.1007/s00371-014-0933-6
Wong, S.-K., Baciu, G., Liu, C.-M., Yeh, C.-C.: Robust continuous collision detection for deformable objects. In: ACM Symp. on Virtual Reality Software and Technology, pp. 55–62 (2010)
Wong, S.-K., Cheng, Y.-C.: Continuous self-collision detection for deformable surfaces interacting with solid models. Comput. Graph. Forum. 33(6), 143–153 (2014)
Wang, B., Faure, F., Pai, D.K.: Adaptive image-based intersection volume. ACM Trans. Graph. (Proc. SIGGRAPH) 31(4), 97:1–9 (2012)
Wong, S.-K., Lin, W.-C., Hung, C.-H., Huang, Y.-J., Lii, S.-Y.: Radial view based culling for continuous self-collision detection of skeletal models. ACM Trans. Graph. (Proc. SIGGRAPH) 32(4), 114:1–10 (2013)
Wong, S.-K., Lin, W.-C., Wang, Y.-S., Hung, C.-H., Huang, Y.-J.: Dynamic radial view based culling for continuous self-collision detection. In: ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games, pp. 39–46 (2014)
Wong, S.-K.: High performance virtual clothing dynamics. Ph.D. thesis, Computer Science, HKUST (2005)
Zhang, X., Kim, Y.: Simple culling methods for continuous collision detection of deforming triangles. IEEE Trans. Vis. Comput. Graph. 18(7), 1146–1155 (2012)
Acknowledgments
The authors thank the anonymous referees for their constructive comments. This work was supported in part by the National Science Council of ROC (Taiwan) under the grant no. NSC 102-2221-E-009-103-MY2 and the Ministry of Science and Technology of ROC (Taiwan) under the grant no. MOST 103-2221-E-009-122-MY3.
Author information
Authors and Affiliations
Corresponding author
Electronic supplementary material
Below is the link to the electronic supplementary material.
Supplementary material 1 (wmv 6248 KB)
Appendices
Appendix A. The pseudo-code of algorithms
Algorithm 1 is the entire process of CSCD. Algorithm 2 is the pseudo-code for the boundary handling of ghost triangles using a stack.


Appendix B. Characteristic functions
In sake of completeness, we list the characteristic functions which are defined in [32]. Denote a triangle of deformable mesh \(M\) as \(T(\mathbf {p}_0(t), \mathbf {p}_1(t), \mathbf {p}_2(t))\).
Let \(\mathbf {q}\) be an observer point. The characteristic function \(\phi (T(t), \mathbf {q}(t))\) is defined as
where \(\mathbf {n}_T(t)\) is the continuous normal vector of triangle \(T\), i.e., \(\mathbf {n}_T(t) = (\mathbf {p}_1(t)-\mathbf {p}_0(t))\times (\mathbf {p}_2(t)-\mathbf {p}_0(t))\). The normal vector of a triangle points outside of the deformable mesh.
Let \(\overline{q_0q_1}\) be an observer line segment. A vertex, e.g., \(\mathbf {p}_0(t)\), of triangle \(T\) is projected onto \(\overline{q_0q_1}\). We compute the projected component \(u(t)\) of \(\mathbf {p}_0(t)\) as follows:
The range of \(u(t)\) is evaluated as follows:
-
1.
Case I. If \(\exists t \in [0, \Delta t]\ \mathrm{s.t.}\ u(t) \ge 1 \), set \(\mathbf {p}'(t) = \mathbf {q}_1(t)\).
-
2.
Case II. If \(\exists t \in [0, \Delta t]\ \mathrm{s.t.}\ u(t) \le 0 \), set \(\mathbf {p}'(t) = \mathbf {q}_0(t)\).
-
3.
Case III. If \(\exists t \in [0, \Delta t]\ \mathrm{s.t.}\ 0<u(t)<1 \), set \(\mathbf {p}'(t) = \mathbf {q}_0(t)+u(t)(\mathbf {q}_1(t)-\mathbf {q}_0(t))\).
The characteristic function of triangle \(T\) is defined as:
To evaluate the sign of the characteristic functions, readers are referred to [32] for details.
Rights and permissions
About this article
Cite this article
Wong, SK., Cheng, YC. GPU-based radial view-based culling for continuous self-collision detection of deformable surfaces. Vis Comput 32, 67–81 (2016). https://doi.org/10.1007/s00371-014-1056-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00371-014-1056-9