unity---射线

射线#

image

	 Ray ray= Camera.main.ScreenPointToRay(Input.mousePosition);//获得鼠标射向的射线
            RaycastHit hit;//射线碰撞物体
            if(Physics.Raycast(ray,out hit)){

                Debug.DrawLine(ray.origin,hit.point);//显示射线
               cursor.transform.position=Input.mousePosition;//imge准星移动到鼠标位置
            }

效果图展示#

image

点击发射小球#

image

if(Input.GetMouseButtonDown(0)){
                GameObject addPosObj=GameObject.CreatePrimitive(PrimitiveType.Sphere);//创建小球
            
            //    addPosObj.GetComponent<Material>().color=Color.red;
                addPosObj.AddComponent<Rigidbody>();
                addPosObj.transform.position=Camera.main.transform.position;//位置固定在摄像头位置
                addPosObj.GetComponent<Rigidbody>().AddForce(100*(hit.point-addPosObj.transform.position));//给小球一个沿着碰撞物体的力
                Destroy(addPosObj,3);//5秒后自动销毁
            }

效果图展示#

image

posted @   lxp_blog  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示
主题色彩