///注明:需要特效动画
using
UnityEngine;
///
<summary>
///
鼠标点击位置实例化点击特效-RPG游戏常用,位于player
///
</summary>
public
class
PlayerDir
:
MonoBehaviour
{
///
<summary>
///
鼠标点击特效预制体
///
</summary>
public
GameObject
effectClickPrefab;
void
Update()
{
//调用鼠标点击地面特效
PlayerDirectional();
}
///
<summary>
///
射线检测
///
</summary>
void
PlayerDirectional()
{
//检测鼠标是否按下
if
(
Input
.GetMouseButtonDown(1))
{
//判断当前是否点击到了地面
//定义主摄像机发射一条射线,进行检测
Ray
ray =
Camera
.main.ScreenPointToRay(
Input
.mousePosition);
//定义精测碰撞
RaycastHit
hitInfo;
//Bool判断当前是否检测碰撞到了游戏对象
bool
isCollider =
Physics
.Raycast(ray,
out
hitInfo);
//如果当前射线检测碰撞到了游戏对象并且是地面
if
(isCollider && hitInfo.collider.tag ==
"BoxColliderGround"
)
{
//实例化出来点击的效果,调用ShowClickEffect方法
ShowClickEffect(hitInfo.point);
}
}
}
///
<summary>
///
在鼠标点击的位置实例化鼠标特效
///
</summary>
///
<param name="
hitPoint
">
检测碰撞到的位置信息
</param>
void
ShowClickEffect(
Vector3
hitPoint)
{
//实例化鼠标点击特效,位置是当前鼠标检测碰撞到的位置
GameObject
currentObj = Instantiate(effectClickPrefab, hitPoint,
Quaternion
.identity)
as
GameObject
;
//定时销毁当前实例化的鼠标点击特效
Destroy(currentObj, 0.3f);
}
}
Unity3d鼠标点击位置实例化点击动画特效-RPG游戏常用
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 目录:1.基本信息2.示例工程3.脚本 目标这篇博客的主要目标是告诉你使用鼠标点击的位置拾取或放置对象的做法。 你...