Invert collision box inside a cube

I have created a big cube (supposed to be a building) and the player can move inside it. I want the walls and floor of the box to have collision so the player can’t get out of the box. I apply Box collision bounds to it but it looks like the collision is calculated for the entire cube, not for each face, so the player is locked in the middle of the cube. Can I somehow make the collision for each wall and floor/ceiling instead of the entire cube? Thanks

Collision Type “Box” means a virtual box is created around the mesh. The dimensions fit the mesh completely but the center of the box is the center of the mesh. This way the box might be much larger then the mesh.

I thought that objects can be inside the box too. But it seems that changed some time ago. You still can have the flat architecture with collision bounds “triangle mesh”.
As an alternative you can make the walls, roof etc. separate objects.

Is what I have done. Sometimes I pass through wall, though, but I suppose I have to optimize the code. Now I have created a ship model and I want to be able to walk inside yet its faces should also block the user to pass outside. Is there a way to make the collision bounds of a mesh take the form of its external or internal faces instead of being a box around it (which won’t let the player go inside the ship)?

If you set the collision bounds to triangle mesh it should allow collision within the object.
.blend I made to show this:
https://dl.dropboxusercontent.com/u/38384163/blender_trianglemesh.blend

Thanks, MrPutuLips