static string testDir = "Assets/LuaScripts/"; [MenuItem("测试/lua命名")] public static void MakeLuaBundleNames() { //获取testDir路径下的所有文件 foreach (var filepath in Directory.GetFiles(testDir, "*.*", SearchOption.AllDirectories)) { //…
→→前情提要:让用户选择要打包的文件←← 大结局:更多选择 Unity打包AssetBundle从入门到放弃系列终于要迎来大结局了[小哥哥表示实在写不动了o(╥﹏╥)o]... 经过上一次的教程,其实整个打包的功能也就差不多完成了,只是我们还没加上打包的按钮.这几次我们会加上打包和取消的按钮,并且开放更多的选项. 开始之前我们再来看看BuildAssetBundles函数的定义↓↓ public static AssetBundleManifest BuildAssetBundles(strin…
Unity生成脚本自动添加头注释 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力快速完成 Unity 创建脚本时自动生成头注信息为新手节省宝贵的时间,避免采坑! Chinar 教程效果: 1 Editor Script -- 编辑类脚本 支持 May Be -- 搞开发,总有一天要做的事! 全文高清图片,点击即可放大观看 (很多人竟然不知道) 1 Editor…
一.如何组织assetBundle: unity5以前,打包需要自己去找依赖,然后需要按照拓扑图顺序压入AB栈,这样在最后打AB时才能有效利用依赖(栈内已有的AB才能作为依赖). unity5.x后,打包变得简单,但如何组织assetBundle依然需要琢磨和规划. 首先我们需要知道:AB.asset和资源的关系:一个AB包括1个或多个asset,一个asset可能没有依赖其他asset(即包括了其需要的所有资源),也可能依赖其他asset(包括一些资源和指向其他asset所在AB的引用). 其…
Unity中集成三方SDK有两种方式: Unity 项目开发中时常有集成 Android 第三方 SDK 的需求,比如接入第三方推送,分享等功能.而第三方 SDK 的集成文档提到的往往是基于原生 Android 项目集成. 第一种 导出 gradle 项目进行集成 导出 gradle 项目的方式可以直接将项目导入 AndroidStudio 中进行集成,而此时可以直接按照第三方集成文档完成集成. 第二种 直接在 Unity 中集成 有些公司是基于 Unity 项目结构进行自动打包的,这样导出 g…
(2008-05-24 13:37:55) 转载▼ 标签: 杂谈 分类: 编程杂文 一.匈牙利命名法:         广泛应用于象Microsoft Windows这样的环境中. Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Microsoft 程序员查尔斯·西蒙尼(Charles Simonyi) 提出的. 匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等.这些符号可以多个同时使用,顺序是先m_(成…
一.匈牙利命名法      Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Microsoft 程序员查尔斯·西蒙尼(Charles Simonyi) 提出的. 匈牙利命名法基本原则是:变量名=属性+类型+对象描述,通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等.这些符号可以多个同时使用,顺序是先m_(成员变量),再指针,再简单数据类型,再其他.例如:m_lpszStr, 表示指向一个以0字符结尾的字符串的长指针成…
文件夹: 1.JavaScript发展史 2.JavaScript与JScript差别 3.JavaScript引入方式 4.JavaScript基本数据类型及布尔值 5.JavaScript命名规范 6.JavaScript命名推荐 7.JavaScript解决命名冲突 1. JavaScript发展史 1.Netscape发明了JavaScript(1992年后) 1)出现JavaScript的原因(Netscape Navigator) * 网络的不断普及与推广,有庞大的用户量 * 因为当…
一.C语言变量名的命名规则:(可以字母,数字,下划线混合使用) 1. 只能以字母或下划线开始:2. 不能以数字开始:3. 一般小写:4. 关键字不允许用(eg:int float=2//error  float 为保留字不允许用): 二.函数名的命名规则 1.见名知意:2.自定义函数函数名首字母大写(库函数里的函数名都是以小写字母定义,为了区分库函数和自定义函数,避免冲突). 三.宏定义里面的变量 全大写 eg:#define SIZE 100(后面函数所有出现的SIZE全用100代替,它在所有…
CSS语义化命名 从上图我们可以大概看出这里有两种CSS的命名方式:1.结构化命名法:2.语义化命名法. 结构化命名法:根据页面中板块的位置而命名,如上图中的content-left,这时如果我们想把侧边栏sidebar放在左边,那么这时content-left板块却在右边,板块位置与其命名完全不符,那么我们这时就要修改页面中的以及CSS样式中的选择器名字了,这样会很不方便,尤其是当页面结构复杂时,一会儿left,一会儿right,这样会很不容易维护. 语义化命名法:根据页面中模块的功能而命名,…
驼峰命名和下划线命名经常需要互转,下面提供两种php的实现方式.第一种方法效率相对差一些,实现方式如下: //驼峰命名转下划线命名 function toUnderScore($str) { $dstr = preg_replace_callback('/([A-Z]+)/',function($matchs) { return '_'.strtolower($matchs[0]); },$str); return trim(preg_replace('/_{2,}/','_',$dstr),'…
匈牙利命名法.骆驼命名法.帕斯卡(pascal)命名法 C#命名规范 一.匈牙利命名法:广泛应用于象Microsoft Windows这样的环境中. Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Microsoft 程序员查尔斯·西蒙尼(Charles Simonyi) 提出的. 匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等.这些符号可以多个同时使用,顺序是先m_(成员变量),再指针,再简单数据类型…
package com.xsh.util; /** * String工具类 * * @author xieshuang * @date 2019-05-23 */ public class StringUtils { private final static String UNDERLINE = "_"; /*** * 下划线命名转为驼峰命名 * * @param para * 下划线命名的字符串 */ public static String underlineToHump(Stri…
Camel命名法:即骆驼式命名法,首字母小写,采用该命名法的名称看起来就像骆驼的驼峰一样高低起伏.Camel命名法有两种形式: 1.混合使用大小写字母,例如runFast 2.单词之间加下划线,例如run_fast 用于所有的类和方法名,无论其可访问性如何.而对于attribute的名称而言,公共的attribute名称采用此法 Pascal命名法:首字母大写,与Camel命名法类似,用于非公共的attribute的名称. 匈牙利命名法.Camel命名法与Pascal命名法…
转  Unity资源打包之Assetbundle 本文原创版权归 csdn janeky 所有,转载请详细注明原创作者及出处,以示尊重! 作者:janeky 原文:http://blog.csdn.net/janeky/article/details/17652021 如果这篇文章对你有帮助,敬请关注作者<Unity手游之路>系列教程. 在手游的运营过程中,更新资源是比不可少的.资源管理第一步是资源打包.传统的打包可以将所有物件制成预设Prefab,打包成场景.今天我们来一起学习官方推荐的As…
AssetBundle Resources:表示U3D自动将资源打成一个AssetBundle包,所有放在Resources下的文件夹都会打成一个AssetBundle包,资源非常大,Resources文件夹在真机上最大只有2G的内存(专业版会增大内存) AssetBundle包:其实可以看成一个压缩包(有固定格式的),默认情况下使用LZMA压缩方式压缩的资源文件:和压缩ZIP一样的,只不过里面的格式变了 Unity3D引擎为我们提供了三种压缩策略来处理AssetBundle的压缩,即: 1.L…
→前情提要:Unity最基本的AssetBundle打包方式. 第二种打包方式 Unity提供的BuildAssetBundles API还有一个重载形式,看下面↓↓ public static AssetBundleManifest BuildAssetBundles(string outputPath, AssetBundleBuild[] builds, BuildAssetBundleOptions assetBundleOptions, BuildTarget targetPlatfo…
最近参考了各位大神的资源,初步学习了Unity的资源管理模式,包括在编辑器管理(使用AssetDatabase)和在运行时管理(使用Resources和AssetBundle).在此简单总结运行时用AssetBundle动态打包/解包资源的方法,方便自己回顾. 关于AssetBundle有很多的细节问题,在此先作个笔记,等更多的问题搞清楚了/有了新的理解,再接着补充/修改. 创建编辑器菜单项,用于打包AssetBundle using UnityEngine; using System.Coll…
转载请标明出处:http://www.cnblogs.com/zblade/ 0. 概述 本文主要针对项目中自动打包过程进行调研,实现用python脚本来打出win/android/ios三个平台下的游戏运行包. 1.工具安装 首先基本的工具需要安装,Unity, python, 如果需要修改python脚本,则需要安装一下pycharm,对应的链接: Download Python 用最新版本即可 pycharm安装 选中最新的即可 pyCharm最新2018激活码(转) - 老董 - 博客园…
→→前情提要:窗口初现←← 让用户选择要打包的文件 时至今日,我们选择打包文件的方式依然是在Project面板或Hierarchy面板中用鼠标点选.现在既然有了窗口,我们自然希望可以将所有文件罗列在窗口中,然后在窗口中进行选择,今天就来实现这一功能. 既然要显示所有的文件,我们就必须首先知道工程目录下都有哪些文件,并获取它们的路径.网上关于递归获取某一目录下的所有文件的例子有很多,这里就不细说了,但是要注意过滤掉.meta的文件,这是Unity为每个资源文件自动生成的,里面存储了资源的GUID,…
前情提要:第二种打包方式 窗口初现 通过前面的两篇教程和一篇番外,我们已经完全实现了打包的功能.但是使用起来总是觉得有些晦涩别扭,如果不告诉别人怎么使用,对方肯定是一头雾水. What?你给我的这是啥?? 当你亲自演示了如何操作时,对方... 这也就是前面的教程将操作过程写的那么详细的原因(当然,高手请忽略). Unity除了提供常规API以外,还提供了一系列窗口编程的API,这就意味着我们可以轻松创建自定义窗口,扩展编辑器功能,可以说是很方便了.今天的任务就是在Unity中创建一个自定义的窗口…
说明:这是一系列循序渐进的教程,今天先介绍最简单的AssetBundle打包方式. 这是一个由在Unity中需要加载模型而引发出来的一系列坑,为了填坑花了不少时间,如果有需要在Unity中自定义菜单,或者创建窗口,扩展编辑器,特别是有需要打包AssetBundle包的筒子们,请看过来←_← 在Unity中载入模型最简单的方式是直接将模型文件放到工程目录下,然后拖进场景中.但是如果我们需要在程序运行时将网络或任意目录下的模型加载到场景中,那么我们只能自己编写解析模型文件的脚本.因为Unity并没有…
读取/加载 AssetBundle 资源的多种方式 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力快速理解如何读取 AssetBundle 中的资源为新手节省宝贵的时间,避免采坑! Chinar 教程效果: 0 AssetBundle Description -- AssetBundle描述 1 Async Loading -- 内存加载-异步加载 2 Syn…
Transform[],GameObject[]这些class类型,Unity会进行自动初始化. 但[ExecuteInEditMode]在编辑模式下执行的时候,会发现初始化其实也是有顺序的,并且在Update之后. 这时候就会遇到等于NULL的情况.…
原文: http://wiki.unity3d.com/index.php?title=AutoSave  最近发现Unity老有自动崩溃的BUG. 每次崩溃的时候由于项目没有保存所以Hierarchy视图游戏对象与游戏资源的关系就会丢失.所以想到自动保存场景. 本来想自己写一个这样的脚本,但是发现维基百科上已经有了... using UnityEngine; using UnityEditor; using System; public class AutoSave : EditorWindo…
项目进入上线阶段了, 有一些地方需要总结和优化.  我发现UI一改变,我就要拖很久的UI. UI结构发生改变我还必须给一些变量设置好引用,后来我去看别人预设的时候组件拖放的变量至少10个以上, 它们一旦丢失了引用了, 作为一个外人就很难把他们关联起来.  预设就定义了m_xxx名字必须和GameObject名字一样, 这样就方便其他人帮你修复预设的引用啦. 今天就突然想起写一个辅助用具, 一键把一些简单的引用帮我赋值上去. 就再也不用手动拖啦. 代码如下: using UnityEngine;…
转载:http://www.cnblogs.com/sifenkesi/p/3557231.html 将本地资源打包,然后放到资源服务器上供游戏客户端下载或更新.服务器上包含以下资源列表:(1)游戏内容资源assetbundle(2)资源维护列表,包含每个资源的名字(完整路径名)和对应的版本号[资源名,版本号],如下表所示(VersionNum.xml): <VersionNum> <File FileName="Assets.Resources.BigLevelTexture…
一. 1.关于如何打包成ab包,就不多说了,网上很多教程,siki学院也有siki老师的免费视频教程挺详细的,可以看看 http://www.sikiedu.com/my/course/74 2.为了图方便,用了siki老师说的AssetBundlesBrowser打包工具,这个工具还可以查看包内容,满赞的 二.打包完成之后得到ab包 1.直接上代码吧,毕竟那么简单 IEnumerator wait() { string path = Application.streamingAssetsPat…
前情提要:第二种打包方式. 自定义AssetBundle包扩展名 在之前的教程中,我们已经多次提到过扩展名了,并且也已经说明了如何设置自定义的AssetBundle扩展名.至于为什么还要把它单独拿出来说一遍,自然是有它的道理的,因为这里面有一个巨大的坑... 注意,前方有坑... 根据前面的剧情,我们有三方式可以设置自定义的AssetBundle包扩展名,下面就来一一讲解: 一.在Inspector面板中设置扩展名 这种设置AssertBundle包扩展名的方式可能是最简单的方式了,这里我把图片…
对与U3D  AI,看了下,自己做了小功能,以备后用啊! 一,在某区域随机产生某个对象 C# 文件名称为RadomAPoint.cs using UnityEngine; using System.Collections; public class RadomAPoint : MonoBehaviour { public GameObject mObjArea; // 随机区域 public GameObject prefabObj;    // 对象prefab public string m…