Character can't go through a door

Hi,

I have a problem with my character, he cannot walk through the open door. It’s not the door frame because without the door I can pass.

Here my door BP :

This is my door mesh :

This is the door open with the collision activated in the editor (I see no change without the door) :

Here a video of what is going on

I try multiple things like changing the collision, changing the size of the character…
I tried all this link :

If you have any ideas I take it !

Thanks in advance :slight_smile:

1 Like

If you want to actually use physics, the collision box needs to be the root component, I believe ( don’t actually know because I don’t use physics ).

If you are just opening the door with a blueprint, the collision box is not parented to the door, and so will still be in the doorway after the door has opened, blocking the player.

Any good? :smiley:

You might want to look at the Collision Bounding Box of the character, most defaults use a capsule with a large margin. Create a simple mesh that can be applied to reduce the margins. I can see that the ‘doorway’ doesn’t use a lot of hulls to create the opening, add another 4 vertices may also help, to form a smoother arch as opposed to a triangle.

In the box below the selection box, where you have chosen Use Complex as Simple, drop a copy of the Root mesh of the character in there. The engine will simplify that mesh so it matches the character and not some capsule.

Then there is the Collision engines Margin buffer added to that. Think of your character wearing a tall top hat.

I do that all the time, for Tree Meshes, using a simplified mesh of the trunk and branches, not leaves, for collision.

I am not sure if you can edit the capsule in Unreal, to make it shorter. Alternatively, use simple boxes as collision for your walls, with nothing over the doors, so the thing stopping them from passing through, will be the actual door collider itself. You don’t need collision above the door itself. That will negate the editing or swapping of the character collision capsule. Oh it will also lessen the camera hitting you in the head each time the player passes through.

Just a thought.

Thanks for the answer !

I don’t want to specially use physics, I was trying many thing even physics ^^

I try to root the collision box to the door mesh but it’s doesn’t work :confused:

I just want my chacter to go through ahah

1 Like

Thanks for the post !

Tried this, I needed to reimport the character to have it in static mesh, I had only skeletal mesh, physics asset and skeleton. But it’s doesn’t work, with it, it’s like an invisible wall.

In the physics of my character, I changed the collision to make it smaller.

Right now, nothing works :confused:
But perharps I do something wrong (obviously).

When, I open the door, and try to go through, it’s looks like the physics of the door stay in place.

(post deleted by author)

So the door sounds to be the problem. You have created a static mesh collider for the Door Object.

Does it use the same pivot point?.

Is it attached to the actual door root mesh?

Is it created using the Mesh Editor in the engine?

Is the Door set as a Static object (small tick box, top right of the Inspection Window)?

Have you deselected the option ‘Can the Character/Player walk upon’ physics function?

Have you checked out the scene in Wireframe Mode, to see if there is the wall mesh blocking the way? Sometimes the mesh doorway will actually be a Hole in the Mesh, not an opening, Physic engines do not deal with holes well. If so, remove the threshold connections, so you have an actual Arch. You can check that in Wireframe Mode.

The characters Collision mesh, need only be a rectangle, or cylinder, it is about the actual size that is the key.

Its a bit of a long checklist, but it will eliminate several conditions that can cause the problem.

You may want to simply use a Volume trigger to open the door when the character enters that space, and not have any collision physics attached to the door at all. You can also set conditions like whether the character has picked up a key or something as a condition as well.

List of what I tried :

  • Remove the collision to make create a new one (simplified box collision)
  • Change the thickness of the door
  • Tried physics, if I put physics with a physic constraint it’s “working”, when I push the door, the door open and I can pass through the door frame, but if I press “E” to open, an invisible wall spawn in the door frame
  • Change the axe in my BP to make it directly opened, and I can go through the door frame and close the door, I can go through the door closed but there is an invisible wall where the door was in the first place
  • I look at the collision vision when I play the level, and there is nothing

I change the pivot point and it’s good

Yes, The door is rooted at the door frame, and the collision box is rooted at the door

Are you talking about the collision system ?

No, His mobility is “Movable” in the BP

Do you mean “Can Character Step Up On” ? If yes, it’s a no, he can’t. If no, I don’t know where is this function

I checked that, and I don’t think it’s the character, in collision mode, the character seems okay

If you need anything, like pictures or videos, tell me I will join it

Thanks for the help :slight_smile:

My last comment was perhaps the most useful if Physics are an issue. The same trigger volume can also trigger a timeline sequence, that swings the axe, that strikes the door, door swings open… Could be a neat solution.

I did something similar with a Space Port Door animation opens, when the player is within a Volume, and has 4 Codes collected in the scene. Created the timeline, with the animation, a condition to check all the codes had been collected… player passes through the port. No Physics in the whole show. Well apart from the blocking prim, should the code count be low.

You can attach and use the same timeline sequence for every door, just place it on a Non-Root object, so it will be in Local Space, not World Space, otherwise it will be World Coordinates specific.