自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

奋斗的老刘

欢迎技术交流,QQ103266509

  • 博客(27)
  • 收藏
  • 关注

原创 在OsX系统上使用Jenkins自动构建发布Unity3d的iOS版本到fir.im

一、在OsX系统上安装Jenkins二、打开终端,安装XCode的命令行工具xcode-select --install三、添加xcodeproj和fir-cli工具gem install xcodeprojgem install fir-cli四、在~目录中新建一个Unity.rb文件,内容是需要对导出的iOS工程进行修改的脚本,其中releaseTarget.f

2016-06-02 22:08:15 1651

原创 【Lua】将Lua5.1的setfenv迁移到Lua5.2的_ENV

原来在Lua5.1中管理器定义function _G.Meta(name)  setfenv(2, setmetatable({}, Base))end使用中定义Meta("name1")function Execute()end现在在Lua5.2中管理器定义function _G.Meta(name)  return setmetatabl

2015-12-29 18:53:40 1039

原创 OSX平台下使用Jenkins自动发布Unity之iOS程序与补丁

由于Unity构建Android程序放在Windows机器上,Jenkins也安装于Windows平台上为了便于使用,那么OSX下面自动发布,就不安装Jenkins了,改为直接使用ssh命令远程连接到OSX上面直接执行shell脚本即可。一、在OSX上面新建 /User/liu/ios_build.sh, 内容如下/Applications/Unity/Unity.app/Co

2015-10-13 15:17:00 669

原创 Windows平台下使用Jenkins自动发布Unity之Android程序与补丁

一、安装Jenkins官方地址:jenkins-ci.org一步步安装完毕后,启动Jenkins二、安装Jenkins Unity插件插件下载地址:http://updates.jenkins-ci.org/download/plugins/选择Unity3d-plugin,下载新最的版本文件,然后在Jenkins中安装此插件三、配置Unity3D插件

2015-10-13 15:01:04 2455

原创 OSX向Linux自动拷贝文件

由于出版本需要,需要将在iMac上面生成的文件,自动传到Linux系统上。首先,需要使用OSX中的scp命令scp filename root@192.168.0.123:/tmp/将filename传到192.168.0.123服务器的tmp目录由于scp在使用时会询问密码,所以我们需要sshpass自动传送密码sshpass -p "123456"

2015-09-28 17:40:44 485

原创 【坑爹】布署CDN时,坑爹的IDC缓存(游戏补丁包被坑一事小记)

引子:游戏项目用Unity开发,补丁放置于CDN上面,由于区分Android和iOS平台,所以添加目录区分,例如:5.0.0.0 => 5.0.0.1 [appstore目录]     |_5.0_5.1.zip[android目录]     |_5.0_5.1.zip现象:不断有玩家反馈,在更新完之后,无法进入游戏BugReport, 收到玩家的U

2015-07-31 14:43:11 1308

原创 【Unity3d】资源依赖反查工具

虽然Unity提供了资源的正向依赖查询,也就是一个Prefab引用了哪些资源,是可以使用EditorUtility.CollectDependencies函数全部找出来的。但是,如果在项目中,我想知道一个Script,或者一个图片到底被哪些Pefab、material用了,如果没人用了,我就可以删掉了。可惜Unity没有提供这个工具。制作方案一:选定一组资源对象

2015-06-27 20:15:02 4159

原创 【Unity3d】在编辑器中实现位操作(Bit)的编辑

有些时候,想高效利用数据,把一个int(32位)掰成32个bool值。那么编辑器中有没有一个这样的插件支持呢?以下是代码using UnityEngine;using UnityEditor;using System;using System.Collections;using System.Reflection;public enum MyEnum{ Enum1 = 1,

2015-06-27 15:36:36 876

原创 【Unity3d】调整NGUI的打包工具,让NGUI打包Atlas时,自动获得图片九宫信息。

Unity试图整合美术流程,但是像我们的UI美术终究不可能全部在Unity中制作,主要工具还是Photoshop在使用NGUI的过程中,不可避免地要使用NGU的Atlas,以及Sprite。对于含有九宫信息的Sprite,一开始我们是先在Photoshop中切好图丢到Unity中打包成Atlas,然后手工去设置九宫信息。美术再修改这张图,那么需要再修改Atlas,也就是说,原始图片是不

2015-06-27 15:26:59 983

原创 【Unity3d】如何解决在开发中添加了新场景后,需要手工维护BuildSettings中场景列表的问题

Unity有一项设定,就是如果Secne不在BuildSettings中,运行过程中就无法加载此Scene当前,如果是在正式发布版本中,会使用Assetbundle来加载此Scene,但是如果在开发过程中用Assetbundle肯定是不方便的,我们希望每次添加一个新的Scene,系统会自动将此Scene文件添加到BuildSettings中那么,我们写一个RefreshScen

2015-06-27 15:04:38 7698

原创 使用Perforce命令行实现自动化

第一步、初始化P4的命令行环境::在这里填的P4连接的IP和端口号p4 set P4PORT=192.168.0.1:1666::在这里设置字符集p4 set P4CHARSET=utf8-bom::在这里填你的workspace名, 例如 p4 set P4CLIENT=my-workspacep4 set P4CLIENT=::你存放P4的根目录, 比如d:\depot, 查看

2015-06-27 14:54:39 2270

原创 【Unity3d】在Unity3d中,使用C#中访问系统剪贴板

直接上代码public static class ClipboardHelper{ private static PropertyInfo m_systemCopyBufferProperty = null; private static PropertyInfo GetSystemCopyBufferProperty() { if (m_systemCopyBuffer

2015-06-27 14:51:30 2638 1

原创 【Unity3d】自动拼接地型板块

在手游中可以使用Unity的terrain系统,不过效率当前并不理想,还有一种方式是自己做地块。首先美术预制作一系列Prefab,然后在每个地块的衔接处打上衔接点。然后程序根据进入点和退出点自动拼接以下为实现:设有进入和退出2个块板1、挪动进入板块,将进入板块与退出板块的衔接点重合。  即:enter.pos += ( exit.pos - enter.pos)

2015-06-27 14:33:08 2943

原创 【Unity3d】Animator和Animation组件使用注意事项

一、Animator一般用于人物动画控制,特点是动画是持续的,可能有动作切换    Animation一般用于连持续状态动画的控制,比如一个场景特效的播放,只播放一次就完了二、实测Animation速度比Animator快10%左右,内存占用没测过三、Animation组件不兼容Animator的动画、但Animator动画兼容Animation动作(有点记得不清了)

2015-06-22 17:44:00 4475

原创 【Unity3d】如何开发Unity自动化补丁工具

当前手游需要具备热更新能力,那么如何拥有了热更新机制,如何把本次版本与上次版本的差异补丁打出来呢?这是当前我们项目的原理:一、在每次出全量二进制版本,或者出补丁前,先执行一个“生成版本数据库”的前置流程工具脚本它的作用是将当前所有的资源的MD5码,以及关联资源的MD5码全部生成到一份XML文件中那如何将关联资源也取出来呢? 使用EditorUtility.CollectDepend

2015-06-22 17:22:06 1516

原创 【Unity3d】热更新Assetbundle资源以及需要注意的地方

热更新技术,是当前网络游戏的一项必要功能, 在此只讨论Assetbundle资源的更新, 不讨论代码的更新。一、进行资源梳理切分,哪些资源是独立性较好的,依赖链清晰的,可以归纳到一个包的,把资源依赖的层级关键画好。二、将资源分为两大类,一类为内置Resources资源,一类为Assetbundle资源    内置Resources资源或者叫AssetsLibrary,由Unity自行管

2015-06-22 16:42:55 2155

原创 【Unity3d】如何在Unity中动态载入Lightmapping

用Lightmapping的好处就不用多说了(渲染速度快又出效果), 下面是解决方案一. 首先, 美术将A.Prefab放到场景中打光, 渲出Lightmapping, 假设生成的的是A_Lightmapping.exr二.然后, 在运行时载入此A.Prefab, 这时是没有Lightmapping的, A模型是花的三. 载入对应的Lightmapping并且添加进来

2015-06-21 22:47:43 2802 2

原创 【Unity3d】在Unity中播放视频

不解释,上代码 private void PlayMovie(string filename, bool cancel) { #if UNITY_IPHONE || UNITY_ANDROID FullScreenMovieControlMode mode = FullScreenMovieControlMode.Hidden; if (cancel) { mode =

2015-06-21 22:41:27 776 1

原创 【Unity3d】注意C#的字符串拼接效率问题

现在项目中用的Log输出机制, 都是使用StringBuilder进行字符串拼接的, 那么为什么要使用StringBuilder进行字符串拼接呢?一开始是这样的:private string content;public void log(string text){ content += text;}public void log2File(string fi

2015-06-21 22:33:37 5004

原创 【Unity3d】自动版本构建: 如何在Windows平台下自动打开资源管理器并且选中指定文件

static public void ShowAndSelectFileInExplorer(string path) { path = path.Replace('/', '\\'); string arg = string.Format(@"/select,{0}", path); System.Diagnostics.Process.S

2015-06-21 22:09:40 993

原创 【Unity3d】优化裁剪Unity骨骼动画,减少动画文件容量

我们做的android游戏项目对安装包有容量限制,原先是限制在100M之内分析了一下, Texture占用容量最多, 排名第二的竟然是 角色动画文件一个角色含有若干个动作,一个动作文件约1M+大小, 原来我们在PC上使用Gamebryo制作端游时,一般一个kf文件也只有20KB. 虽然Unity的动作数据是原始文本文件, 但也不至于这么大...与美术同学聊了一下, 想到了一个裁剪方

2015-06-21 21:57:13 5778 1

原创 【Unity3d】如何解决Unity3d在引用外部插件时报DLLNotFoundException的问题

我们在项目中使用了Lua插件, 一直用得很好, 最近安装了几台新的祼机, 用Unity在编辑器模式下运行项目时发现总是报DllNotFoundException: /Assets/Plugins/lua.dll解决方案是使用M$的depends.exe分析一下就行了原来依赖了MSVCR100.DLL, 那么安装一下Vcredist2010解决了问题

2015-06-20 16:10:53 9734 1

转载 从Code Review 谈如何做技术

本文转载自 www.coolshell.cn(这篇文章缘由我的微博,我想多说一些,有些杂乱,想到哪写到哪)这两天,在微博上表达了一下Code Review的重要性。因为翻看了阿里内部的Review Board上的记录,从上面发现Code Review做得好的是一些比较偏技术的团队,而偏业务的技术团队基本上没有看到Code Review的记录。当然,这并不能说没有记录他们就没

2015-06-20 00:27:18 469

原创 【Unity3d】疑难杂症解决之系统报错:Supplied NxActorDesc is not valid. createActor returns NULL

最近用Unity3d开发的游戏项目忽然频频报错:Supplied NxActorDesc is not valid. createActor returns NULL.按照csdn的搜索结果:http://blog.csdn.net/zzxiang1985/article/details/43561833使用NGUI时偶尔会遇到以下两个报错:Supplied

2015-06-20 00:08:13 1606

转载 如何更好地给同事讲代码

我们技术团队有两个习惯:一是程序员写好一个新的比较重要的系统,或是引入了一个第三方框架或库后,主程会要求程序员做一个ppt,在会议室里给所有程序与QC做一次团队分享;二是程序员写好一个新系统,或做了比较大的或比较重要的修改后,要知会相关QC,并把QC叫到电脑前,一对一把相关代码给QC讲一遍。   我认为做ppt团队分享可以起到两个重要作用:一是让团队成员之间时常互通有无,避免各人只了解自己

2015-06-19 19:01:39 1422

原创 【Unity3d】在Unity3d中调用外部程序及批处理文件,写自动化编译脚本需要注意的地方

如果调用外部普通应用程序, 比如notepad.exe 这样调用static public bool ExecuteProgram(string exeFilename, string workDir, string args){ System.Diagnostics.ProcessStartInfo info = new System.Diagnostics.ProcessStartIn

2015-06-18 19:09:27 3267 2

原创 【Unity3d】如何解决错误:A script behaviour has a different serialization layout when loading

我们的项目是使用C#做为开发语言在实际开发中碰到一个问题,加载一个Prefab, Unity会报以下错误:A script behaviour has a different serialization layout when loading. (Read 24 bytes but expected 40 bytes), Did you #ifdef UNITY_EDITOR

2015-06-18 18:54:32 6558

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除