国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity 編輯器擴(kuò)展之 Attribute

這篇具有很好參考價(jià)值的文章主要介紹了Unity 編輯器擴(kuò)展之 Attribute。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Unity內(nèi)置屬性[Attribute]是一種類(lèi)似修飾功能的標(biāo)簽??梢詫?duì)OnSceneGUI,InspectorGUI,MenuGUI,WindowGUI等實(shí)現(xiàn)各種各樣的GUI擴(kuò)展。用戶(hù)只要添加上特性標(biāo)簽,就能夠自由的使用這些擴(kuò)展功能。下面列出一些常用的標(biāo)簽:

HideInInspector

隱藏屬性在Inspector面板上的顯示。在繼承了MonoBehaviour的類(lèi)中,用public修飾的變量如果可以被序列化,那么就會(huì)在Inspector中顯示,使用HideInInspector可以讓他不顯示。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [HideInInspector]
    public string heroName;
}

Header

Header用來(lái)給屬性添加標(biāo)題文字。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [Header("Hero current blood")]
    public float blood;
}

Unity 編輯器擴(kuò)展之 Attribute

Tooltip

Tooltip用來(lái)顯示屬性標(biāo)簽的提示文字。當(dāng)鼠標(biāo)移動(dòng)到該屬性字段上的時(shí)候會(huì)出現(xiàn)相應(yīng)的提示。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [Tooltip("Hero current blood")]
    public float blood;
}

Unity 編輯器擴(kuò)展之 Attribute

Space

Space,空間占位,可以調(diào)整兩個(gè)屬性塊之間的間隔距離??梢詡鲄?shù),表示間距大小,單位是像素。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    public float heart;
    [Space()]
    public float blood;

    [Space(20)]
    public float money;
}

Unity 編輯器擴(kuò)展之 Attribute

Range

Range使得用戶(hù)可以使用Slider對(duì)類(lèi)似于int,float,long,double這一類(lèi)的數(shù)值類(lèi)型進(jìn)行改變。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [Range(1, 10)]
    public int num1;

    [Range(1, 10)]
    public float num2;

    [Range(1, 10)]
    public long num3;

    [Range(1, 10)]
    public double num4;
}

Unity 編輯器擴(kuò)展之 Attribute

Mulitline/TextArea

Textfile默認(rèn)情況下是只有一行的,但同時(shí)也能變成復(fù)數(shù)行顯示的TextArea。Multiline和TextArea功能大致上相同,不過(guò)Multiline有著[無(wú)法依據(jù)寬度自動(dòng)換行]和[不能使用scroll表示]的限制。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [Multiline(5)]
    public string multiline;

    [TextArea(3, 5)]
    public string textArea;
}

Unity 編輯器擴(kuò)展之 Attribute

ColorUsage

顏色拾取器。第一個(gè)參數(shù)控制是否顯示透明通道,第二個(gè)參數(shù)控制是否使用HDR。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [ColorUsage(true)]
    public Color color1;

    [ColorUsage(true,true)]
    public Color color2;
}

Unity 編輯器擴(kuò)展之 Attribute

SerializeField

Unity 默認(rèn)不會(huì)序列化私有變量,如果想強(qiáng)制序列化一個(gè)私有變量,那么可以用SerializeField修飾。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [SerializeField]
    private string str;
}

Unity 編輯器擴(kuò)展之 Attribute

ExecuteInEditMode

在 Unity 中繼承MonoBehaviour的腳本,并不是一直都會(huì)執(zhí)行的。Unity默認(rèn)只有在Play Mode下,才會(huì)運(yùn)行場(chǎng)景里GameObject下掛載的腳本。如果想在編輯狀態(tài)下也執(zhí)行該腳本可以用ExecuteInEditMode修飾,也可以用ExecuteAlways修飾。

using UnityEngine;
[ExecuteInEditMode]
public class PuzzleHero : MonoBehaviour
{
  private void Awake()
  {
    Debug.Log("Excute In Edit Model");
  }
}

HelpURL

在class類(lèi)上進(jìn)行幫助文檔的鏈接的設(shè)定,設(shè)置之后可以點(diǎn)擊腳本右上角的問(wèn)號(hào)按鈕可以調(diào)到對(duì)應(yīng)的網(wǎng)頁(yè)。

using UnityEngine;
[HelpURL("https://www.xrlmall.top")]
public class PuzzleHero : MonoBehaviour
{

}

Unity 編輯器擴(kuò)展之 Attribute

AddComponentMenu

可以在UnityEditor的Component的Menu中增加自定義的項(xiàng)目。菜單可以設(shè)置多級(jí),使用斜線(xiàn)/分隔即可。在Hierarchy中選中GameObject的時(shí)候,點(diǎn)擊該菜單項(xiàng),就可以在GameObject上追加該Component,或者在Inspector面板點(diǎn)擊“Add Component”按鈕追加。

using UnityEngine;
[AddComponentMenu("Custom/PuzzleHero")]
public class PuzzleHero : MonoBehaviour
{
    
}

Unity 編輯器擴(kuò)展之 Attribute

ContextMenu

可以在Inspector的ContextMenu中增加選項(xiàng),執(zhí)行某個(gè)操作。

using UnityEngine;
public class PuzzleHero : MonoBehaviour
{
    [ContextMenu("SaveFile")]
    void DoSomething()
    {
        Debug.Log("save level data to file");
    }
}

Unity 編輯器擴(kuò)展之 Attribute

DisallowMultipleComponent

對(duì)一個(gè)MonoBehaviour的子類(lèi)使用這個(gè)屬性,那么在同一個(gè)GameObject上面,最多只能添加一個(gè)該Class的實(shí)例。

using UnityEngine;
[DisallowMultipleComponent]
public class PuzzleHero : MonoBehaviour
{
  
}

嘗試添加多個(gè)的時(shí)候,會(huì)出現(xiàn)下面的提示。

Unity 編輯器擴(kuò)展之 Attribute

RequireComponent

在Class上使用,添加對(duì)另一個(gè)Component的依賴(lài)。當(dāng)該Class被添加到一個(gè)GameObject上的時(shí)候,如果這個(gè)GameObject不含有依賴(lài)的Component,會(huì)自動(dòng)添加該Component。且該Componet不可被移除。

using UnityEngine;
[RequireComponent(typeof(Rigidbody))]
public class PuzzleHero : MonoBehaviour
{
  
}

Unity 編輯器擴(kuò)展之 Attribute

自動(dòng)添加Rigidbody,并且不能被移除

MenuItem

快捷鍵打開(kāi)資源路徑文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-405533.html

public class EditorTool
{
	//Alt+R打開(kāi)資源路徑
	[MenuItem("HSJ/快捷方式/打開(kāi)UI預(yù)制路徑 &R")]
	static void OpenResourcesUIPanel()
	{
		Selection.activeObject  = AssetDatabase.LoadAssetAtPath<GameObject>("Assets/Resources/Prefab/Panel/LoginPanel.prefab");
	}
	//Alt+S打開(kāi)腳本路徑
	[MenuItem("HSJ/快捷方式/打開(kāi)Panel腳本路徑 &S")]
	static void OpenScript()
	{
		Selection.activeObject = AssetDatabase.LoadAssetAtPath<TextAsset>("Assets/Scripts/MessageBoxPanel.cs");
	}
	//Alt+S打開(kāi)指定文件夾路徑
	[MenuItem("HSJ/快捷方式/打開(kāi)工程目錄 &O")]
	private static void OpenProjectFolder()
	{
		EditorUtility.RevealInFinder(Application.dataPath);
	}
}

到了這里,關(guān)于Unity 編輯器擴(kuò)展之 Attribute的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Unity編輯器擴(kuò)展之GenericMenu菜單擴(kuò)展

    Unity編輯器擴(kuò)展之GenericMenu菜單擴(kuò)展

    內(nèi)容將會(huì)持續(xù)更新,有錯(cuò)誤的地方歡迎指正,謝謝! ? Unity編輯器擴(kuò)展之GenericMenu自定義菜單 ? ? ? TechX 堅(jiān)持將創(chuàng)新的科技帶給世界! 擁有更好的學(xué)習(xí)體驗(yàn) —— 不斷努力,不斷進(jìn)步,不斷探索 TechX —— 心探索、心進(jìn)?。?助力快速掌握 GenericMenu 菜單擴(kuò)展 為初學(xué)者節(jié)省寶貴的

    2024年02月01日
    瀏覽(38)
  • 【Unity編輯器擴(kuò)展】| 頂部菜單欄擴(kuò)展 MenuItem
  • Unity 擴(kuò)展自定義編輯器窗口

    Unity 擴(kuò)展自定義編輯器窗口

    在Assets文件夾路徑下任意位置創(chuàng)建Editor文件夾,將擴(kuò)展編輯器的代碼放在Editor文件夾下 代碼中首先引用命名空間 然后將創(chuàng)建的類(lèi)繼承自EditorWindow 然后通過(guò)擴(kuò)展編輯器菜單功能調(diào)用創(chuàng)建窗口的方法 要注意方法中泛型參數(shù)需要傳入的是自己代碼的類(lèi),這個(gè)功能是根據(jù)后面OnGUI方

    2024年04月27日
    瀏覽(19)
  • Unity編輯擴(kuò)展:功能篇之Json數(shù)據(jù)編輯器

    Unity編輯擴(kuò)展:功能篇之Json數(shù)據(jù)編輯器

    前言 編輯器擴(kuò)展算是比較純粹的功能開(kāi)發(fā),基本沒(méi)有什么理論知識(shí),都是一些 Unity 相關(guān)接口的使用與數(shù)據(jù)類(lèi)型的設(shè)計(jì)操作等。在本篇文章主要的文字描述基本都是在做代碼解釋?zhuān)瑸榱耸箖?nèi)容接受度更高,我會(huì)盡量描述到代碼結(jié)構(gòu)中的每個(gè)細(xì)節(jié)。如果有對(duì)此不太了解又很感興

    2024年02月06日
    瀏覽(25)
  • 【Unity編輯器擴(kuò)展】| Inspector監(jiān)視器面板擴(kuò)展

    【Unity編輯器擴(kuò)展】| Inspector監(jiān)視器面板擴(kuò)展

    前言 前面我們介紹了Unity中編輯器擴(kuò)展的一些基本概念及基礎(chǔ)知識(shí),還有編輯器擴(kuò)展中用到的相關(guān)特性Attribute介紹。 后面就來(lái)針對(duì)Uniity編輯器擴(kuò)展中比較常用的模塊進(jìn)行學(xué)習(xí)介紹。 本文就來(lái)詳細(xì)介紹一下Unity編輯器擴(kuò)展中關(guān)于 Inspector面板 擴(kuò)展功能學(xué)習(xí)。

    2024年02月08日
    瀏覽(20)
  • 盤(pán)點(diǎn)Unity幾款編輯器擴(kuò)展工具

    盤(pán)點(diǎn)Unity幾款編輯器擴(kuò)展工具

    unity 編輯器一個(gè)不容忽視的強(qiáng)大之處就是非常易于自定義擴(kuò)展工具,來(lái)滿(mǎn)足各種各樣的美術(shù)、策劃及程序上的需求。今天為大家介紹Asset Store資源商店中幾款實(shí)用的編輯器擴(kuò)展工具,幫助大家直接在Unity編輯器中完成3D建模與調(diào)整工作,免去與其它軟件進(jìn)行數(shù)據(jù)轉(zhuǎn)換的過(guò)程,從

    2024年04月09日
    瀏覽(25)
  • 【Unity編輯器擴(kuò)展】| 自定義窗口和面板
  • Unity編輯器擴(kuò)展-第四集-獲取物體的方法

    Unity編輯器擴(kuò)展-第四集-獲取物體的方法

    第三集鏈接:Unity編輯器擴(kuò)展-第三集-添加按鈕到組件菜單并且重置組件_菌菌巧樂(lè)茲的博客-CSDN博客 ?一、本節(jié)目標(biāo)+效果展示 1.改選中單個(gè)物體的名字 2.改選中所有物體的名字 ?3.選中了所有的物體,但只改第一層物體的名稱(chēng) ?4.來(lái)個(gè)有用的(選中的所有物體,按順序起名)

    2024年02月14日
    瀏覽(25)
  • 【Unity UIToolkit】UIBuilder基礎(chǔ)教程-制作簡(jiǎn)易的對(duì)話(huà)系統(tǒng)編輯器 3步教你玩轉(zhuǎn)Unity編輯器擴(kuò)展工具

    【Unity UIToolkit】UIBuilder基礎(chǔ)教程-制作簡(jiǎn)易的對(duì)話(huà)系統(tǒng)編輯器 3步教你玩轉(zhuǎn)Unity編輯器擴(kuò)展工具

    隨著Unity開(kāi)發(fā)的深入,基本的Unity編輯器界面并不能滿(mǎn)足大部分玩家高階開(kāi)發(fā)的要求。為了提高開(kāi)發(fā)的效率,有針對(duì)性的定制化擴(kuò)展編輯器界面是提高開(kāi)發(fā)效率的不錯(cuò)選擇。 今天就給大家?guī)?lái)Unity官方提高的編輯器擴(kuò)展工具UIToolkit(集成了UIBuilder和UI Debugger等插件)的使用教程。

    2024年02月04日
    瀏覽(77)
  • Unity編輯器擴(kuò)展-第六集-創(chuàng)建窗口/批量填圖

    Unity編輯器擴(kuò)展-第六集-創(chuàng)建窗口/批量填圖

    第五集鏈接:Unity編輯器擴(kuò)展-第五集-撤回操作/禁止操作/加快捷鍵_菌菌巧樂(lè)茲的博客-CSDN博客 一、本節(jié)目標(biāo)+效果展示 1.創(chuàng)建窗口 2.圖片批量賦值到物體上 二、創(chuàng)建窗口? 這個(gè)功能其實(shí)也很好理解,我們之前學(xué)了點(diǎn)擊選擇,但 我們難免會(huì)遇見(jiàn)需要選不同位置,不同種類(lèi)的很多

    2024年02月10日
    瀏覽(18)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包