2017-12-4 十三:移动路径时光标约束在范围内讲解
来源:互联网 发布:淘宝店的客服怎么登陆 编辑:程序博客网 时间:2024/06/08 19:39
听了一遍,没懂,教师语文是体育老师教的,方言又比标准话讲得好;
第二遍:移动路径时光标约束在范围内讲解
1.constant path 里有nodes,判断当前的光标(鼠标ray)在不在nodes里,判断出在范围内
2.重点讲一下约束节点这个类:FangKuaiGeZiManager.cs
在这个脚本里写:
public NNConstraint NConstraint; 这个约束public后,在unity面板里没有看到,因为加序列化的特性
可以修改这个类,也可以拓展,建议拓展,否则a星升级,这个类会更新回去
3.在VS里,工程目录下SLG.BLL目录下,加一个NNConstraintS目录,注意要末尾加“s”,以区别A星里的
在目录下,建一个子类,类名NNConstraintEXT.cs ,继承自NNConstraint
这时回到FangKuaiGeZiManager.cs ,改为
public NNConstraintEXT nConstraintEXT;
约束出现在面板里了
有很多参数
4.继续FangKuaiGeZiManager.cs
void Update() { Vector3 ConstrainPosition= (Vector3)AstarPath.active.GetNearest(IGuangBiao.GetGuangBiaoPos(), nConstraintEXT).node.position; // GuangBiaoTransform.position = IGuangBiao.GetGuangBiaoPos(); GuangBiaoTransform.position = ConstrainPosition; }
5.参数
如上图,A星,不可行走区,红点区;
当GuangBiaoManger的FangKuaiGeZiManager.cs参数,不勾选Walkable时,即鼠标停留在红点区
6.对应输入参数
如图,建立Temp物体
给其GraphUpdateScene.cs脚本
选择Modify Tap
在Tag Value里有很多可以选项:
可以修改,到A星物体下修改
选择Temp物体,在顶视图,按住Shift键,点击出一个图案,此为可移动区A;
这时,选择Model,在Seeker.cs里,选择Valid Tags为MoveRange,如图,则人物在上面的区域A中移动;
同理,鼠标也希望它约束在区域 A中
这里的区域选择是,旧版本的a星插件,是一个1和0的二进制数
回到GuangBiaoManger物体,在面板参数里输入(按位运算的)1000,代表MoveRange,如图,鼠标只在区域A中移动,输入1000的十进制数“8”,也可以
- 2017-12-4 十三:移动路径时光标约束在范围内讲解
- javascript在限定范围内移动
- 在画布范围内移动的圆点
- Tab键控制光标在指定范围内移动
- 在过滤器中设置一个应用范围内的路径
- Unity3d镜头范围内移动。
- 限制窗口在屏幕范围内移动(不能移到屏幕外)
- WinForm 子窗体在父窗体范围内移动,不能出父窗体
- revit参照平面在参数约束下如何移动
- 时光总在流逝
- 在时光里跋涉
- AS3在范围内拖动
- SQL 约束讲解
- oracle约束讲解constraint
- SQL 约束讲解
- SQL 约束讲解
- 打开页面时光标自动在输入框
- SecureCRT在切换窗口时光标丢失的解决方法
- LWC 61:738. Monotone Increasing Digits
- Android之小技巧android:drawableRight
- elk 问题解决办法
- vlc-解码一个RTP数据包函数分析
- 记录一次Tshark使用异常
- 2017-12-4 十三:移动路径时光标约束在范围内讲解
- Kmp 与 BF算法
- 高数 07.09 多元函数微分学习题01
- win10 anacoda2 cuda theano安装笔记
- 1.1亿创业“红包” !“双11”创业节等你来打Call
- Python脚本分析CPU使用情况
- 细数2017年网络安全事件
- ZooKeeper示例 实时更新server列表
- Windows程序设计 读书笔记(3)