我正在尝试制作一个简单的 3d 平台游戏。我遇到的问题是碰撞检测和响应。我目前正在用球体代表我的玩家角色(用于墙壁和地板碰撞)。
我使用简单的重力和方向力,使用箭头键进行移动。
当我走到边缘(如悬崖)时,我的问题就会出现。我像球一样滑过边缘,但我正在寻找的行为是像直立的圆柱体一样从边缘滑落。一个布尔值“我在平台上,或者我不在平台上”,而不是“我正在逐渐滑出边缘”。
使用直立圆柱体的问题是自动上楼梯变得不可能,并且当沿着任何类型的斜坡行走时,圆柱体必须仅接触一个边缘,或者部分嵌入斜坡中。
什么是 3d 平台游戏中玩家角色的良好碰撞表示?