游戏开发:光标控制与资产导入全解析
1. 光标控制中的距离检查
在早期的点按式冒险游戏中,游戏基于一系列精美的高分辨率静态图像或手绘卡通风格背景,每个静态图像都需手动创建热点。而在实时 3D 中,由于碰撞体的存在,动作对象本身就成为了热点,这可能导致玩家在几百米外就能触发操作。为避免玩家触发看不见的事物,需要限制玩家与对象交互的距离。
具体操作步骤如下:
1. 在 Interactor 脚本中添加计算对象到相机距离的自定义函数:
function DistanceFromCamera () {
// get the direction the camera is heading so you only process stuff in the line of sight
var heading : Vector3 = transform.position - cam.transform.position;
//calculate the distance from the camera to the object
var distance : float = Vector3.Dot(heading, cam.transform.forward);
return distance;
}
此函数使用向量数学和点积来计算距离,需要注意的是,这里使用了 Vector3 类型变量,它期望一个三部分的值,如 (X,Y,Z) 或 (R,G,B)。
2. 在 controlCenter 变量声明下方添加内部变量:
internal var cam : GameO
超级会员免费看
订阅专栏 解锁全文
10

被折叠的 条评论
为什么被折叠?



