2019-01-19 13:47:53 ghaokl 阅读数 193
  • Unity 值得看的500+ 技术内容列表

    Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

最近在用Unity做小游戏玩儿时,经常需要用到添加一些整体的说明或者相关系列脚本开发的功能,每一次都需要去手动的敲一下题头说明,虽然也只是从一个脚本copy题头过来修改,但是也是挺麻烦的,做的只是无用功重复,因此就上网查找一些文章的说明,只恨自己读书少,原来网上相关脚本模板的设置文章很多,自己也是根据大神们的教导,自己一步步尝试一下吧,因此也记录一丢丢小技巧吧。
废话不多说,直接走流程,Unity中的VS脚本模板设置分3步:

1.找到自己的Unity工具所在安装位置,通过桌面Unity图标
右键–>属性–>打开文件所在位置 或者 直接右键–>打开文件所在位置

在这里插入图片描述
2.寻找到脚本模板所在文件夹
Data–>Resources–>ScriptTemplateswen文件夹

在这里插入图片描述
3.使用相关的工具打开第一个Txt文档,笔者在这里使用的是Sublime打开的,之后就可以设置自己的格式了,
在这里插入图片描述
注:一般这类模板包含:标题,作者,日期,版本,功能,描述等其他,根据各自需求设置格式

2019-11-20 15:41:07 itsxwz 阅读数 31
  • Unity 值得看的500+ 技术内容列表

    Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

  • https://docs.unity3d.com/Manual/ReducingFilesize.html
    通常纹理、声音、动画占用较多空间;脚本、关卡、着色器影响较小。
    【1】设置纹理的MaxSize可以减小空间占用。
    【2】禁用纹理的透明通道可以减小空间占用。

  • 减少无用资源
    【1】StreamingAssets文件夹下无用资源要删除。
    【2】Resources文件夹下无用资源要删除。

  • 比对数据信息
    【1】Unity引擎自身通过Open Editor Log查看。
    ps:真的很难看到有用信息,可能我看的是假"Log"??
    在这里插入图片描述
    【2】使用插件:Build Report Tool
    https://assetstore.unity.com/packages/tools/utilities/build-report-tool-8162
    ps:Delete All Unused Assets 发布包并不会减小,Unity引擎不会把无关资源构建到发布包中。

  • 罪魁祸首?
    在这里插入图片描述
    存储数据需要空间。项目发布后,有一个XXX_Data文件夹占用空间最多,里面的sharedassetsX.assets.resS占用了很大一部分的空间。
    <1>0 1 2 3 对应项目四个场景
    <2>前面两个场景没有.resource文件??(有没有大佬解释下这个文件干嘛的)
    <3>主要占用是sharedassets2.assets.resS文件,没有找到相关Resources文件夹。个人推测纹理、网格、地形资源在第三个场景占用较多。
    【目前尚未找到有效减小该文件的方法,如果有大佬知道请告知,谢谢。】

注:
项目Assets文件夹1.4GB
发布包671MB
Build Report Tool监测纹理占用27%
sharedassets2.assets.resS文件211MB【恐怖如斯~】

2018-03-21 10:06:47 qq_34444468 阅读数 674
  • Unity 值得看的500+ 技术内容列表

    Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
/// <summary>
/// 给所有的按钮创建碰撞体
/// </summary>
public class CreateColliderForButton : MonoBehaviour {

    //public GameObject canvas;
    private Button[] _buttonArray;          //按钮
    private Slider[] _sliderArray;          //滑动条

// Use this for initialization
void Start () {
            _buttonArray = this.GetComponentsInChildren<Button>(true);            //获取所有的Button按钮
            _sliderArray = this.GetComponentsInChildren<Slider>(true);              //获取所有的slider
        //给每一个按钮创建一个碰撞体
        for(int i = 0; i < _buttonArray.Length; i++)
        {
            //判断按钮是否有碰撞器
            if (_buttonArray[i].gameObject.GetComponent<Collider>() == null)
            {
                //创建碰撞器
                var buttonSize = _buttonArray[i].gameObject.GetComponent<RectTransform>().sizeDelta;
                BoxCollider button_BoxCollider = _buttonArray[i].gameObject.AddComponent<BoxCollider>();
                button_BoxCollider.size = new Vector3(buttonSize.x,buttonSize.y,2);
                button_BoxCollider.center =new Vector3(0, 0, 1);
            }
        }


        //判断滑动条是否有碰撞体
        for(int j = 0; j < _sliderArray.Length; j++)
        {
            //Debug.Log("=============================");
            //Debug.Log(_sliderArray[j].name);
            if (_sliderArray[j].gameObject.GetComponent<Collider>() == null)
            {
                //创建碰撞器
                var sliderSize = _sliderArray[j].gameObject.GetComponent<RectTransform>().sizeDelta;
                BoxCollider slider_BoxCollider = _sliderArray[j].gameObject.AddComponent<BoxCollider>();
                slider_BoxCollider.size = new Vector3(sliderSize.x, sliderSize.y, 2);
                slider_BoxCollider.center = new Vector3(0, 0, 1);
            }
        }
}

}


//脚本需要添加在Canvas上,确保对所有的按钮和滑动条都能添加上。

2017-07-07 16:57:00 weixin_30367543 阅读数 25
  • Unity 值得看的500+ 技术内容列表

    Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

一切从build settings开始,它即是 构建列表,构建运行包当然从它开始。

1,只有在构建列表中的场景和场景引用资源才会被打进包里,其它资源除了2,3位置都不会被打包

2,streammingAssets下的所有东西都会被打进包里

3,resources文件夹下的所有东西都会被打进包里

4,Assets下的任何位置的脚本资源(UNITY脚本.cs, js, )都会无条件打进包里,不管有没有用到。

其它脚本不认,如LUA,除非放在2,3两个特殊文件夹下才会被打包

 

转载于:https://www.cnblogs.com/timeObjserver/p/7133099.html

没有更多推荐了,返回首页