unity使用射线实现贴花系统
作者:Maddie_Mo 时间:2023-04-23 10:22:00
本文实例为大家分享了Unity使用射线实现贴花系统,供大家参考,具体内容如下
老规矩,直接上代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
/// <summary>
/// 贴花系统
/// </summary>
public class Applique_ZH: MonoBehaviour
{
[Header("贴花粒子")]
public Transform _AppliqueParticle;
void Start()
{
//实例化
_AppliqueParticle = Instantiate(_AppliqueParticle);
}
void LateUpdate()
{
Applique();
}
//贴花实现
public void Applique()
{
//屏幕坐标转射线
object _Ray = Camera.main.ScreenPointToRay(Input.mousePosition);
//射线对象是:结构体类型(存储了相关信息)
RaycastHit _Hit;
//发出射线检测到了碰撞 isHit返回的是 一个bool值
bool _IsHit = Physics.Raycast((Ray)_Ray, out _Hit, 1000, ~(LayerMask.GetMask("AppliqueParticle")| LayerMask.GetMask("Click")));
//EventSystem.current.IsPointerOverGameObject() 鼠标在UI上面
if (_IsHit && !EventSystem.current.IsPointerOverGameObject())
{
_AppliqueParticle.localPosition = _Hit.point;
_AppliqueParticle.localRotation = Quaternion.LookRotation(_Hit.normal);
}
}
}
最终效果:
暂时先这样吧。
来源:https://blog.csdn.net/weixin_43925843/article/details/106214824
标签:unity,射线,贴花系统
0
投稿
猜你喜欢
关于spring的自定义缓存注解分析
2023-11-28 17:02:50
Java编码摘要算法实例解析
2022-07-21 23:33:29
mybatis-plus用insertBatchSomeColumn方法批量新增指定字段
2022-03-02 10:20:58
java io读取文件操作代码实例
2023-04-12 08:53:57
全面理解java中的异常处理机制
2023-10-26 04:08:20
使用Nexus搭建Maven私服教程的方法步骤
2023-03-05 18:56:58
实体类或对象序列化时,忽略为空属性的操作
2022-03-01 17:02:56
Android使用系统自带的相机实现一键拍照功能
2023-06-05 10:27:23
应用启动数据初始化接口CommandLineRunner和Application详解
2023-02-06 05:00:33
android activity设置无标题实现全屏
2023-04-22 15:56:52
Android平台基于Pull方式对XML文件解析与写入方法详解
2021-07-21 01:52:52
C# SQLite执行效率的优化教程
2021-07-11 00:11:41
Android项目实战之ListView悬浮头部展现效果实现
2022-08-11 16:35:32
WPF实现动画效果(七)之演示图板
2021-08-18 20:31:53
轻松学习C#的异常处理
2022-09-14 22:10:20
C#实现数据包加密与解密实例详解
2022-05-14 18:44:50
SpringBoot实现拦截器、过滤器、监听器过程解析
2023-07-01 02:34:52
java查找图中两点之间所有路径
2022-10-04 03:08:11
利用POI生成EXCEL文件的方法实例
2023-11-23 21:44:14
探讨Object转为String的几种简易形式详解
2023-08-21 11:47:27