美文网首页
Unity开发技巧

Unity开发技巧

作者: 奔跑在春风里 | 来源:发表于2022-03-30 14:37 被阅读0次
    1. 发布出来的内容没有碰撞检测,但是开发的时候在编辑器里正常

      解决办法:在模型里勾选 Read/Write Enabled
    1. UNITY检视面板(INSPECTOR)的属性显示
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
     
    [AddComponentMenu("自己的脚本/Test_Inspector")]  //只能用在类上,在菜单栏Commponent会增加一个 自己的脚本/Test_Inspector 的选项,
    //用于在物体身上添加该脚本
    [RequireComponent(typeof(Rigidbody))]   //在物体添加该脚本时,会自动添加Rigidbody组件
    //typeof()中可以写自己的脚本,做到一次添加多个脚本的效果。
    //需要注意的是,在该脚本还挂在物体上时,不能将typeof()中添加的组件卸载
    [RequireComponent(typeof(Collider))]
    public class Test_Inspector : MonoBehaviour {
     
        [SerializeField]    //强制去序列化一个private的字段,也就是说字段虽然是private的,但还是可以在Inspector面板来调整数值
        private int SerializeField;
     
        [HideInInspector]   //和上面的正好相反,将public的字段不在Inspector面板上显示。
        public int HideInspector;
     
        [System.NonSerialized]  //同样的将public的字段不在Inspector面板上显示
        public int NonSerialized;
     
        [Range(1,10)]   //滑动条来控制数值,最大值10,最小值1
        public int range;
     
        [Tooltip("我就是说明文本")]  //当鼠标光标停在字段上时,显示说明文本
        public string prompt;
     
        [Space(20)]     //设置字段上方空间为20,用于设置字段的间距
        public float space;
     
        [Header("我是标题")]
        public float title;  //在字段上方显示标题
     
        [Multiline(5)]      //用于显示多行文本
        public string multiline;
     
        [TextArea(1,5)]     //设置多行输入的文本字段,设置显示的最大值和最小值
        public string text;
     
        [System.Serializable]   //只可以对class,struct,enum,delegate进行序列化,不可对属性序列化。
        private enum Temp
        {
            test01 = 0,
            test02 = 1
        }
    }
    
    Inspector 面板效果

    相关文章

      网友评论

          本文标题:Unity开发技巧

          本文链接:https://www.haomeiwen.com/subject/fwhnjrtx.html