最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

unity實現鼠標經過時ui及物體的變色操作

 更新時間:2021年04月12日 09:28:00   作者:qq_41168330  
這篇文章主要介紹了unity實現鼠標經過時ui及物體的變色操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

1、實現UI的變色

設置Highlighted Color為鼠標經過時變的顏色(Normal為常態(tài),Pressed為按下時的顏色,Disabled為禁止的顏色)

2、通過代碼實現物體的顏色改變

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Cube_change : MonoBehaviour 
{    private Color CubeColor;
    private Texture CubeTexture;
    public GameObject objCube;
 // Use this for initialization
 void Start () 
       {             objCube = GameObject.Find("Cube");
             objCube.GetComponent<Renderer>().material.color = Color.blue;
 }
       public void OnMouseEnter()
       {
            objCube.GetComponent<Renderer>().material.color = Color.red;
       }
      public void OnMouseExit()
      {
            objCube.GetComponent<Renderer>().material.color = Color.blue;
       }
       // Update is called once per frame
      void Update ()
      { 
 }

//+++++++++++++++++++++++++++

unity5.0之后renderer就不能使用material,需要使用GetComponent來獲取

GameObject objcub = GameObject.CreatePrimitive(PrimitiveType.Cube);  
objcub.AddComponent<Rigidbody>();  
objcub.name = "Cube";  
//設置color 使用這個來獲取material  
objcub.GetComponent<Renderer>().material.color = Color.blue;  

補充:Unity 實現鼠標滑過UI時觸發(fā)動畫

在有些需求中會遇到,當鼠標滑過某個UI物體上方時,為了提醒用戶該物體是可以交互時,我們需要添加一個動效和提示音。這樣可以提高產品的體驗感。

解決方案

1、給需要有動畫的物體制作相應的Animation動畫。(相同動效可以使用同一動畫復用)

2、給需要有動畫的物體添加腳本。腳本如下:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public class OnBtnEnter : MonoBehaviour, IPointerEnterHandler,IPointerExitHandler
{
    //鼠標進入按鈕觸發(fā)音效和動畫
    public void OnPointerEnter(PointerEventData eventData)
    {
      //  AudioManager.audioManager.PlayEnterAudio();//這里可以將播放觸發(fā)提示音放在這里,沒有可以提示音可以將該行注釋掉
        if (gameObject.GetComponent<Animation>()!=null) {
            if ( gameObject.GetComponent<Animation>() .isPlaying) {
                return;
            }
            gameObject.GetComponent<Animation>().wrapMode = WrapMode.Loop;
            gameObject.GetComponent<Animation>().Play();
        }
    }
//鼠標離開時關閉動畫
    public void OnPointerExit(PointerEventData eventData)
    {
        if ( gameObject.GetComponent<Animation>() != null )
        {
            if ( gameObject.GetComponent<Animation>().isPlaying )
            {
                gameObject.GetComponent<Animation>().wrapMode = WrapMode.Once;
                return;               
            }
            gameObject.GetComponent<Animation>().Stop();
        }
    }
}

補充:unity人物接近時觸發(fā)事件或動畫demo

定義物體GameObject o;

效果:當人物接近物體時,物體觸發(fā)動畫,比如位移

1.創(chuàng)建o的動畫km和gm

2.創(chuàng)建空物體 Empty,大小稍微比o大一點,拖入o,用來接受觸發(fā)判定,防止物體移動過后觸發(fā)器跟著移動,勾選 is trigger

2.人物控制器

using System.Collections;
using System.Collections.Generic;
using UnityEngine; 
public class DoorController : MonoBehaviour
{
private Animation ani;
 
void Start() {
//獲取子組件下的第一個組件,再獲取子組件animation,
//如果是獲取自身組件,直接GetComponent<XXX>()
ani = transform.GetChild(0).GetComponent<Animation>();
}
 
private void OnTriggerEnter(Collider other){
//當物體接觸到時則播放animation中的km動畫
ani.Play("km");
}
 
private void OnTriggerExit(Collider other){
//當物體接觸到時則播放animation中的gm動畫
ani.Play("gm");
}
 
void Update()
{
 
}
}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章

  • C#實現讓窗體永遠在窗體最前面顯示的實例

    C#實現讓窗體永遠在窗體最前面顯示的實例

    這篇文章主要介紹了C#實現讓窗體永遠在窗體最前面顯示,功能非常實用,需要的朋友可以參考下
    2014-07-07
  • C#使用Resources資源文件

    C#使用Resources資源文件

    這篇文章介紹了C#使用Resources資源文件的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • C#使用ping命令的兩個例子

    C#使用ping命令的兩個例子

    這篇文章主要介紹了C#使用ping命令的兩個例子,本文給出了調用CMD命令和使用C# ping類的兩個例子,需要的朋友可以參考下
    2014-08-08
  • c# 刪除所有的空文件夾的小例子

    c# 刪除所有的空文件夾的小例子

    c# 刪除所有的空文件夾的小例子,需要的朋友可以參考一下
    2013-03-03
  • C#實現簡單學生成績管理系統(tǒng)

    C#實現簡單學生成績管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C#實現簡單學生成績管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C#實現圖形界面的時鐘

    C#實現圖形界面的時鐘

    這篇文章主要為大家詳細介紹了C#實現圖形界面的時鐘,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • C#中Entity Framework常見報錯匯總

    C#中Entity Framework常見報錯匯總

    給大家總結了C#中Entity Framework常見報錯,以及處理這些錯誤的方法,希望能夠為你提供到幫助。
    2017-11-11
  • C#四舍五入MidpointRounding.AwayFromZero解析

    C#四舍五入MidpointRounding.AwayFromZero解析

    這篇文章主要介紹了C#四舍五入MidpointRounding.AwayFromZero,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • C# this關鍵字的四種用法

    C# this關鍵字的四種用法

    這篇文章主要為大家詳細介紹了C# this關鍵字的四種用法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 一文詳解如何在C#中使用RESTful API

    一文詳解如何在C#中使用RESTful API

    通過Web開發(fā)的路徑,大家會發(fā)現自己遲早需要處理外部API,本文將列出在C#項目中使用RESTful API的方法的最全面列表,希望對大家有所幫助
    2025-03-03

最新評論

海晏县| 德昌县| 宁明县| 榆社县| 定结县| 景东| 清流县| 甘谷县| 雅江县| 邳州市| 疏勒县| 麻江县| 安丘市| 靖州| 甘谷县| 保康县| 外汇| 潞城市| 扎赉特旗| 乌审旗| 马鞍山市| 如皋市| 沙田区| 灌南县| 马边| 嘉峪关市| 黄冈市| 成安县| 静安区| 无棣县| 通海县| 博乐市| 清徐县| 新和县| 阿瓦提县| 祁连县| 盐津县| 灵宝市| 平遥县| 扎囊县| 齐齐哈尔市|