unity3d - 在统一 3d 中模拟 linerenderer 严重出错(具有不同的开始高度和结束高度)
问题描述
所以试图为玩家绘制一条移动路径,这条路径用linerenderer表示。线是根据鼠标位置绘制的。但是将相机放在自上而下的视图中会弄乱 linerenderer ,使其不可见。问题是鼠标位置的高度不同。我如何使鼠标位置不具有不同的高度,例如它必须具有恒定的 y 轴值。
这是代码。Liner 是 linerenderer
if (Input.GetButton("Fire1")) // 鼠标 {
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hitinfo;
if (Physics.Raycast(ray, out hitinfo))
{
if (Dist(hitinfo.point) > 1f)
{
points.Add(hitinfo.point);
liner.positionCount = points.Count;
liner.SetPositions(points.ToArray());
}
}
然后我有另一个脚本,在这个鼠标路径上移动角色。不幸的是,该行的起始位置与结束位置的高度不同。那么如何模拟在 mouseposition 上绘制但具有相同高度的线(以获得 2d 屏幕效果)?
解决方案
推荐阅读
- fluentd - 在 Fluentd 中将字符串转换为浮点数
- javascript - 如何在异步函数中抛出异常?
- kubernetes - 列出 Kubernetes 中运行的所有控制器
- c++ - 为什么让 operator new 私有中断 std::shared_ptr?
- rabbitmq - 聊天机器人中消息之间的动态延迟
- angular - Bootstrap Carousel 中的幻灯片不是以水平形式出现,而是仅以垂直形式出现
- xml - Powershell XML 删除 ChildNode“日期”超过一个月的节点
- python - 将数据框转换为列表时出现错误
- arrays - 两个excel数组的逻辑运算
- python - Python Web Scrape:删除输出中多余的 HTML 标签。所有数据都来自页表,get_text 和 pretiffy 不起作用