通过鼠标碰撞完成物品高亮的效果

脚本展示

先展示更改材质脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ChangeMaterial : MonoBehaviour
{
    private MeshRenderer meshRenderer;//获取游戏物体中MeshRenderer插件
    public Material oldMaterial;//原本的材质
    public Material newMaterial;//触发后显示的材质
    public Material highLightMaterials;//高亮材质
    void Start()
    {
        meshRenderer = this.GetComponent<MeshRenderer>();

        oldMaterial = this.GetComponent<Material>();//将原本的材质赋给oldMaterial
        highLightMaterials = Resources.Load<Material>("Materials/11 - Default") as Material;//用Resources.Load方法调用资源文件中的材质

        newMaterial = highLightMaterials;
    }

    private void OnMouseEnter()
    {
        meshRenderer.material = newMaterial;//鼠标放上去的时候将目标游戏物体中MeshRenderer的材质更改为高亮材质
    }

    private void OnMouseExit()
    {
        meshRenderer.material = oldMaterial;//鼠标离开的时候将目标游戏物体中MeshRenderer的材质更改为原本的材质
    }
}

高亮材质直接调用资源文件中的材质

详细方法看https://blog.csdn.net/weixin_53777651/article/details/127458895?ops_request_misc=&request_id=&biz_id=102&utm_term=unity%20%E8%8E%B7%E5%8F%96%E8%B5%84%E6%BA%90%E4%BB%A3%E7%A0%81&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-127458895.142^v96^pc_search_result_base1&spm=1018.2226.3001.4187dang'wo

脚本使用方法

当我们拥有这个脚本了,我们就可以直接通过两种方法实现

1.直接添加脚本

该方法比较简单,直接将该脚本拖拽至游戏物体中即可

2.通过代码为目标物体添加脚本

 

        ChangeMaterial changeMaterial1 = pipeline1.gameObject.AddComponent<ChangeMaterial>();

为pipeline1游戏物体添加脚本文件ChangeMaterial

查验结果

运行时首先就要看我们需要出发高亮的游戏物体是否拥有ChangeMaterial脚本,其次看一下脚本内oldMaterial和newMaterial是否有赋值且两者不同。

后续有问题会继续更新

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值