# Unexpected Collision Event Cycle While Walking using Havok Physics Plugin

**URL:** <https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783>\
**Category:** Questions\
**Tags:** physics, havok\
**Created:** [September 2, 2023, 8:44pm UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783 "2023-09-02T20:44:05Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![ertugrulcetin](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ertugrulcetin/32/33011_2.png) [@ertugrulcetin](https://forum.babylonjs.com/u/ertugrulcetin)\
**Post date:** [September 2, 2023, 8:44pm UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783/1 "2023-09-02T20:44:05Z")

</div>

I’m using the Havok Physics plugin. In the video, my character walks on a flat surface. I’ve set up collision event callbacks to monitor the status of collision event types, such as COLLISION\_STARTED and COLLISION\_FINISHED. However, even though I’m only walking, I sometimes see this cycle: STARTED, CONTINUED, FINISHED.

I’m not jumping, floating, or doing anything else — just walking. The only event I should see is COLLISION\_STARTED. Any ideas on what might be wrong?

**P.S.:** I’m using the latest versions of all libraries.

[https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/9/c/9cc5a283b5546bc69bf848c89319e7915b415ed6.mp4](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/9/c/9cc5a283b5546bc69bf848c89319e7915b415ed6.mp4)

---

<div class="post-metadata">

**Author:** ![ertugrulcetin](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ertugrulcetin/32/33011_2.png) [@ertugrulcetin](https://forum.babylonjs.com/u/ertugrulcetin)\
**Post date:** [September 4, 2023, 8:56am UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783/2 "2023-09-04T08:56:52Z")

</div>

@carolhmj any idea, what it could be?

---

<div class="post-metadata">

**Author:** ![carolhmj](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/carolhmj/32/25918_2.png) [@carolhmj](https://forum.babylonjs.com/u/carolhmj)\
**Post date:** [September 4, 2023, 10:58am UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783/3 "2023-09-04T10:58:34Z")

</div>

Hmmmmm my suspicion is that the character movement is set, it might have some downward component that contacts with the ground, and this causes a collision to be processed start to finish. I tried setting up a similar scene here: [Character Import and animation | Babylon.js Playground (babylonjs.com)](https://playground.babylonjs.com/#AHQEIB#2192), but I’m mostly only seeing the collision continued. Any chance you can set up a PG on your side?  
I’ll tag @eoin too as he probably has a better idea of what’s going on.

---

<div class="post-metadata">

**Author:** ![eoin](https://avatars.discourse-cdn.com/v4/letter/e/f14d63/32.png) [@eoin](https://forum.babylonjs.com/u/eoin)\
**Post date:** [September 4, 2023, 11:34am UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783/4 "2023-09-04T11:34:12Z")

</div>

Contact events will be raised for every “subshape” that a body collides with; if that character is sliding across a highly-tessellated mesh, then I’d expect to see those STARTED/FINISHED events for every triangle the body moved across.

---

<div class="post-metadata">

**Author:** ![ertugrulcetin](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ertugrulcetin/32/33011_2.png) [@ertugrulcetin](https://forum.babylonjs.com/u/ertugrulcetin)\
**Post date:** [September 4, 2023, 12:55pm UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783/5 "2023-09-04T12:55:28Z")

</div>

@eoin Highly-tessellated mesh, like that in the video below? If so, what might the solution be that I can apply? I’m also creating a terrain from a heightmap.

[https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/9/0/90c35ab8a1f7dfba15735b1787ebb6760394f0ff.mp4](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/9/0/90c35ab8a1f7dfba15735b1787ebb6760394f0ff.mp4)

---

<div class="post-metadata">

**Author:** ![eoin](https://avatars.discourse-cdn.com/v4/letter/e/f14d63/32.png) [@eoin](https://forum.babylonjs.com/u/eoin)\
**Post date:** [September 4, 2023, 1:45pm UTC](https://forum.babylonjs.com/t/unexpected-collision-event-cycle-while-walking-using-havok-physics-plugin/43783/6 "2023-09-04T13:45:55Z")

</div>

Right, in that situation, I would expect multiple STARTED/FINISHED events as the body moves across the triangles. A body can interact with multiple triangles at once, so it’s important to be able to keep track of each one individually. If you want only a single event, you can just keep a count of the number encountered.
