# Single Direction Collider?

**URL:** <https://forum.babylonjs.com/t/single-direction-collider/60153>\
**Category:** Questions\
**Tags:** physics\
**Created:** [August 20, 2025, 12:24am UTC](https://forum.babylonjs.com/t/single-direction-collider/60153 "2025-08-20T00:24:34Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pryme8](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/pryme8/32/7212_2.png) [@Pryme8](https://forum.babylonjs.com/u/Pryme8)\
**Post date:** [August 20, 2025, 12:24am UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/1 "2025-08-20T00:24:35Z")

</div>

Is it possible to make a single direction collider with Havok? Basically I want a ball to be able to pass through a collider one direction and not in another.

---

<div class="post-metadata">

**Author:** ![roland](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/roland/32/38940_2.png) [@roland](https://forum.babylonjs.com/u/roland)\
**Post date:** [August 20, 2025, 10:17am UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/2 "2025-08-20T10:17:43Z")

</div>

> **[ChatGPT - One-way collider in Havok](https://chatgpt.com/share/68a5a0b1-c674-8006-8a6c-359ec72368cd)**
>
> A conversational AI system that listens, learns, and challenges

🙈

---

<div class="post-metadata">

**Author:** ![HiGreg](https://avatars.discourse-cdn.com/v4/letter/h/c5a1d2/32.png) [@HiGreg](https://forum.babylonjs.com/u/HiGreg)\
**Post date:** [August 20, 2025, 2:38pm UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/3 "2025-08-20T14:38:04Z")

</div>

I wonder if one of the events triggers after collision detected and impulse calculated but before collision impulse is applied.

If so, maybe the “impulseApplied” field can be zeroed out.

Something like

```auto
onCollisionObservable.add(a=>{
// is body in one-way group?
// find havok buffer on body
// set impulseApplied in floatBuf to zero.
// Location indicated in CollisionEvent.readToRef():
// eventOut.impulseApplied = floatBuf[offB + 13 + 3];
});

```

---

<div class="post-metadata">

**Author:** ![Pryme8](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/pryme8/32/7212_2.png) [@Pryme8](https://forum.babylonjs.com/u/Pryme8)\
**Post date:** [August 20, 2025, 4:02pm UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/4 "2025-08-20T16:02:28Z")

</div>

That funny Roland, my first instinct was to compare velocity to the contact normal and do some sort of collision negation through that. Cool Ill investigate that method.

I hate that we should ask Claude or ChatGPT before posting on here because then it feels like nobody else gains from that conversation.

---

<div class="post-metadata">

**Author:** ![roland](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/roland/32/38940_2.png) [@roland](https://forum.babylonjs.com/u/roland)\
**Post date:** [August 20, 2025, 4:37pm UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/5 "2025-08-20T16:37:27Z")

</div>

> [@Pryme8](#):
>
> I hate that we should ask Claude or ChatGPT before posting on here because then it feels like nobody else gains from that conversation.

OMG, I never thought about this! You’re totally right! Let’s keep the conversation on the forum. That way it helps everyone and keeps us from going brain-dead 😃

Sharing is caring…

---

<div class="post-metadata">

**Author:** ![Pryme8](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/pryme8/32/7212_2.png) [@Pryme8](https://forum.babylonjs.com/u/Pryme8)\
**Post date:** [August 20, 2025, 4:47pm UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/6 "2025-08-20T16:47:47Z")

</div>

> **[Babylon.js Playground](https://playground.babylonjs.com/#V5MX26%231)**
>
> Babylon.js playground is a live editor for Babylon.js WebGL and WebGPU 3D scenes

Got it!

Im sure there are better ways to do this, but this helped me dig into how to actually trigger events and filters.

> **[Babylon.js docs](https://doc.babylonjs.com/features/featuresDeepDive/physics/collisionEvents/#collision-filtering)**

---

<div class="post-metadata">

**Author:** ![roland](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/roland/32/38940_2.png) [@roland](https://forum.babylonjs.com/u/roland)\
**Post date:** [August 20, 2025, 4:52pm UTC](https://forum.babylonjs.com/t/single-direction-collider/60153/7 "2025-08-20T16:52:58Z")

</div>

Nice! Bookmarked. 😉
