Jtro的开发杂记

作者: UnityPlane | 来源:发表于2019-06-17 09:25 被阅读0次

    1.

    当高版本(unity2018)的项目迁移到低版本(unity2017)中的时候,需要将项目中的“Packages”文件夹中的json文件删除并让它重新生成。

    2.

    2d图片的位置跟随3d物体的位置:
    Update中写:

     Images.rectTransform.position = Camera.main.WorldToScreenPoint(pointImage.position);
    

    3.

    有时候unity打开奔溃,将包中的library文件夹删除重新生成即可。

    4.

    webgl打包的时候,在playersetting中 compression format选择broli模式
    与enable exceptions中选择none,这样打出来的包占用空间会小。

    5.

    在Unity中,那些Shader中被设置为“Geometry” 队列的对象总是从前往后绘制的,而其他固定队列(如“Transparent”“Overla”等)的物体,则都是从后往前绘制的。这意味这,我们可以尽量把物体的队列设置为“Geometry” 。

    6.

    天空盒旋转:
    在任意一个脚本中加入如下代码:

    float num;
        private void Update()
        {
            num = RenderSettings.skybox.GetFloat("_Rotation");
            RenderSettings.skybox.SetFloat("_Rotation", num + 0.005f);
    }
    

    7.

    使用canvas上的自适应排版 canvas上的canvas scaler中UI scaleMode选择scale with screen size ,referencce resolution 选择当前的分辨率,例如1920*1080,screen match mode 选择expand。

    8.

    Text组件中如果text中的字是变化的,添加contentsize fitter组件,将组件中的2个选项都选为preferred size。可以根据字数改变text的组件大小

    9.

    在编辑视口中,选择将要编辑的物体,按下V键,然后可以选择中物体的临时中心点,这个中心点可以移动旋转操作。

    10.

    你在photoshop中把图片转换为web所用,可以看到压缩选项。这样的压缩实际上是去掉了原图片中的很多色彩信息,这样会使图片占用的空间变得更小

    11.

    Dotween中让一个数字从一个值变化到另一个值:
    声明myFloat
    DOTween.To(() => myFloat, x => myFloat = x, 5.5f, 1);
    在1秒中,从默认的值变化到5.5

    12.

    当你的显卡是N卡,而且装的驱动不是gameready ,那么你的unity很可能开启之后会假死,这个时候你需要将显卡驱动控制面板打开,并且将驱动换到gameready就可以了。

    13.

    当动画师给你的动画文件你看到的效果和动画师调的效果不一致时,试试点击模型到inspector面板中的animation中的anim.compression中选择Optimal选项

    14.

    如果想在update中运行一段代码的时候,你不必在update中写那么一大段的代码,

    使用委托
    private Action prgCB = null;
    
    void Start ()
    {
     prgCB = () => {
              //do something...
            };
    }
    
    void Update ()
    {
    prgCB ();
    }
    

    15.

    playerprabs使用方法: https://www.cnblogs.com/planezhong/p/10061977.html

    16.

    字符串“”与null的区别,虽然都是代表没有任何东西,但是“”表示在内存中有这个字符串,而null表示内存中没有为此字符串分配空间。

    17.

    字符串“”与null的区别,虽然都是代表没有任何东西,但是“”表示在内存中有这个字符串,而null表示内存中没有为此字符串分配空间。

    18.

    excel的开发工具:在文件->选项->自定义功能->(主选项卡)开发工具

    19.

    如果有一天,当你打开unity安装了VS,然后发现你使用vs的时候在输入Ontrigger这类函数的时候发现没有了智能提示,你需要重新在unity中指定unity打开脚本的方式。

    20.初始化类中的参数

    比如你的类:

    public class A 
    {
        string Str = "";
    }
    

    一般的引用会是这样:

    首先是new一个出来
    A a = new A();
          a.Str = "Hello";
    

    也可以写成这样

    A a = new A{
          Str = "Hello"//注意,这里不能加分号,如果多的话用逗号隔开,因为一个分号代表一行代码
    };
    

    相关文章

      网友评论

        本文标题:Jtro的开发杂记

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