unity中C#跟随和射线
来源:互联网 发布:盛世传奇翅膀进阶数据 编辑:程序博客网 时间:2024/06/05 07:03
usingUnityEngine;
usingSystem.Collections;
publicclassgensui:MonoBehaviour{
publicTransforma;//a是主物体被跟随物体
publicTransformb;//b是跟随主物体的物体
// public Animator ani;
publicNavMeshAgentagint;//是跟随主物体的物体,获取组件
publicLineRendererlr;//射线渲染
// Use this for initialization
voidStart () {
//射线长度
lr.SetVertexCount(2);
//跟随移动
/*
1.选中plane--选择属性列表里的Static
2.选中plane--Windows--Navigation--右下角Back烘焙一下
3.建白Cube,建黑Cube
*/
}
// Update is called once per frame
voidUpdate () {
//跟随
agint.SetDestination(a.position);
//射线的两种方法
////1.1.屏幕发出,是摄像机射出的绿色线
////实例化射线
//Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
////检测射线碰撞
//RaycastHit hit;
//if (Physics.Raycast(ray,out hit))
//{
// Debug.Log(hit.point);
//}
//Debug.DrawLine(ray.origin,hit.point,Color.green);
////2.指定射线,是被跟随物体射出来的线
//Ray ray2 = new Ray(a.position,b.position-a.position);
//RaycastHit hit2;
//if (Physics.Raycast(ray2,out hit2))
//{
// Debug.Log(hit2.point);
// Debug.Log(hit2.collider.gameObject.name);
//}
////画射线
//Debug.DrawLine(ray2.origin, ray2.direction*20, Color.red);
//Move();
look();
Fire();
}
voidlook() {
Rayray =Camera.main.ScreenPointToRay(Input.mousePosition);
//射线命中检测
RaycastHithit;
//物理方法检测射线
if(Physics.Raycast(ray,outhit))
{
//射线朝向跟随鼠标
a.LookAt(newVector3(hit.point.x,0.1f,hit.point.z));
}
}
voidFire() {
Rayray2 =newRay(a.position, a.forward);
//射线命中检测
RaycastHithit2;
if(Input.GetMouseButtonDown(0))
{
//再次点击出射线
lr.enabled =true;
//传射线坐标 起始点位置靠上
lr.SetPosition(0,newVector3(A.position.x,1,A.position.z));
// 终点朝向,玩家位置
lr.SetPosition(1,a.position+a.forward*15);
//开启时间间隔协程
StartCoroutine("startTime");
if(Physics.Raycast(ray2,outhit2))
{
Destroy(hit2.collider.gameObject);
}
}
}
IEnumeratorstartTime() {
yieldreturnnewWaitForSeconds(0.1f);
lr.enabled =false;
}
}
做记录用,不喜勿喷!!!谢谢
阅读全文
0 0
- unity中C#跟随和射线
- unity中摄像机跟随主角,摄像机穿墙,射线碰撞检测,摄像机穿墙跟随
- unity中摄像机跟随主角,摄像机穿墙,射线碰撞检测,摄像机穿墙跟随
- Unity中相机跟随
- 在Unity中使用射线
- Unity 碰撞检测和射线
- Unity中实现UI跟随
- Unity射线
- Unity 射线
- Unity中射线碰撞试验分享:
- unity中射线碰撞检测总结
- Unity中射线的用法小结
- Unity中从鼠标位置发射射线
- unity之角色控制器和射线
- 【Unity】屏幕射线和鼠标指针
- Unity基础—射线概念和API
- Unity学习(五):Unity中的射线和组件访问
- unity中摄像机的跟随移动
- spring boot中统一异常处理
- js数组的常见操作( push、pop、unshift、shift、splice、concat、 join)的用法
- 时间格式化工具类,非常好用
- 算法导论 单源最短路径 Dijkstra
- (四)Android数据结构学习之栈
- unity中C#跟随和射线
- 事务不回滚
- 菜鸟先飞之JAVA_其他类
- 在NanoPi-NEO上试验dts和平台总线机制
- Caffe实践
- 【JZOJ5246】【NOIP2017模拟8.8A组】Trip
- 存储过程的导入List<Object>集合
- ES6中集合的应用
- Python之访问dict