自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tianmao111的专栏

这傻瓜什么都没留下

  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 代码创建动画状态机

Unity的动画状态机有以下一些特性:1:动画状态机是无法直接获取到指定名称的状态的,这也就意味着,你不能加载一个已有的状态机,然后对其中的状态或状态连线做修改,只能是完全重新创建整个状态机。2:在子状态机中,无法手动创建(Up)Base Layer节点到其他节点的连线。3:假设有子状态机,play_anim和Jump_Fall 如下图:当只有AnyState到play_anim的连线,没有其他状

2018-01-19 09:54:26 658

原创 ToLua学习笔记,增量热更新

增量热更新是利用2进制文件对比工具把新旧资源的2进制压缩文件进行对比,产生差异文件,更新时只更新差异文件的方式。这种方式下载的文件体积比下载整个文件降低最高98.7%,由于代码细节过多,我只列出流程:.delta文件是差异文件,组合文件需要2进制文件对比工具

2017-08-31 21:47:16 917 1

原创 ToLua学习笔记,运行bundle中的lua脚本

ToLua框架支持直接读取运行lua脚本文件,也支持读取打包到.unity3d中的lua脚本。另外ToLua还支持字节码方式读取脚本。打包工具类Packager.cs中对脚本的打包,选择如下打包方式:注意此部分经过我的修改。然后它会调用下边部分:上边选择了lua字节码方式,其实区别只是EncodeLuaFile函数会把lua脚本编译成可被luajit执行的格式文

2017-08-31 17:50:03 2921

原创 ToLua学习笔记,通信(三)

protobuf是谷歌创造的最给力的一种协议格式,它的传输效率高,使用方便。在lua中使用protobuf的基本步骤如下:1:编写.proto协议文件2:通过批处理命令导出不同语言对应的消息包(类文件)protobuf可以导出c++ java c# 等等很多种语言的消息包,但是不包括Lua语言,为此我们需要一个辅助工具protoc-gen-lua,此工具的目的是从.proto文件导出.

2017-07-30 14:29:47 1579 1

原创 ToLua学习笔记,通信(二)

json是一种常用的协议格式,ToLua内置了cjson库,以下是测试:结果如下:之后就可以通过ByteBuffer读取字符串收发消息需要注意的是Tank表中不允许出现函数,否则会报解析错误

2017-07-30 12:12:22 468

原创 ToLua学习笔记,通信(一)

ToLua框架里提供了常用的通信工具,包括Socket通信类,cjson库,protobuf库,sproto库。其中所有协议都需要依赖于Socket通信。但框架原本的SocketClient类有以下几个缺点:1:接收消息拆包粘包写的效率不高2:Socket类和NetworkManager类互相引用,封装的不够好3:经过测试,收消息函数无响应对此需要对SocketCl

2017-07-29 22:41:03 1835

原创 ToLua学习笔记,创建自定义矩阵类

我突然想到,框架里并没有提供Matrix4x4这个重要的类,所以我参考Quaternion.lua写了一个Matrix4X4.luaMatrix4X4类内有16个公有的字段,而unity中的Matrix4X4类既可以通过.mXX的方式访问属性,也可以通过索引器Matrix4X4[m][n]的方式来访问,但lua中并没有索引器,但是,我们可以通过表嵌套实现二维数组,但是一旦设计成嵌套表,那1

2017-06-30 17:25:17 1334 1

原创 ToLua学习笔记,使用委托,监听UGUI组件事件

首先在Hierarchy面板创建一个Button:我需要把这个Button对象传递到lua脚本中,以便访问,所以创建UIManager脚本如上图。内容如下:UIManager在运行时会自动获取Button的引用,然后在LuaHelper中添加如下代码:只是为了再lua脚本中通过LuaHelper访问到UI管理器。然后参考宏哥的博客文章一,文章二,添加EventTrigg

2017-06-29 17:30:52 3367

原创 ToLua学习笔记,使用Update方法(四)

每次我添加一个lua脚本,我都需要编写重复的New函数么?可以这样,修改LuaComponent.cs代码如下:添加LuaObject.lua脚本,内容如下:此时在这样调用:这是通过LuaComponent的New函数查找全局的LuaObject里的New函数,来创建不同的lua表当然也可以直接使用下边注释掉的那一行代码,完全不需要通过LuaComponent脚本

2017-06-29 12:09:00 789

原创 ToLua学习笔记,获取全局lua表,局部lua表

编写以下脚本,我声明了一个全局变量(表)LObject:注意一定要return在c#中,通过luaState来获取表:获取局部lua表:然后注意在require时,参数必须是文件的路径,是指你编写的lua脚本相对于搜索目录的相对路径,比如搜索目录是Lua,你的lua文件在Lua目录下,那么就需要写成如下格式:

2017-06-29 11:52:15 1940

原创 ToLua学习笔记,使用Update方法(三)

参考上一篇文章,给脚本LuaComponent.cs增加如下内容:并且注册:修改Tank.lua脚本,内容如下:在main.lua脚本中修改内容如下:运行Unity结果如下:

2017-06-28 15:38:48 1035

原创 ToLua学习笔记,使用Update方法(二)

参考罗培雨的博客,添加脚本LuaComponent.cs,内容如下:并且注册:添加Tank.lua脚本,内容如下:在main.lua脚本中修改内容如下:运行Unity结果如下:

2017-06-28 15:30:40 2253

原创 ToLua学习笔记,使用Update方法(一)

tolua框架提供了UpdateBeat,FixedUpdateBeat,LaterUpdateBeat用来做刷新:编写如下脚本:在这里,创建了一个游戏对象,然后在Update中处理键盘输入,对游戏对象做不同操作

2017-06-27 14:30:33 6644 2

原创 ToLua学习笔记,给游戏对象添加脚本

编写脚本如下:如果想知道GameObject内可以使用的方法,则需要查看它对应的包装文件UnityEngine_GameObjectWrap.cs进入到这个方法:查看参数,说明需要一个GameObject类型的对象和一个Type类型的参数运行结果如下:

2017-06-27 14:16:23 1473

原创 ToLua学习笔记,创建一个游戏对象

添加代码到main.lua脚本中:执行结果:注意AudioSource类型已经在CustomSettings.cs中注册过了,如果想创建其他类型,请注册对应类型到customTypeList列表中

2017-06-26 17:43:20 706

原创 ToLua学习笔记,使用枚举Enum

在CustomSettings.cs中,添加 _GT(typeof(PrimitiveType)), 到customTypeList中:编写以下脚本再main.lua中:运行Unity,结果如下:

2017-06-26 17:28:31 3254

原创 Unity调用c++动态链接库注意事项

整理一下Unity中使用c++动态链接库需要注意的地方Unity通过ndk调用java,java通过jni调用c++ .so1:Jni的.so是独立的,还是依赖其他.so库或静态库?答:都可以,但具体的.so拷贝到unity中后,是否还能正常调用,有待测试。 2:C++中jni与java回调函数,这里只举例静态函数调用先保存回调函数的引用,具

2017-03-21 15:17:53 4130 2

原创 AndroidStudio打包.so库

AndroidStudio版本:2.3打包方式:CMake需要的插件:NDK,LLDB 首先下载好以上环境如果上图列表中没有CMake,LLDB等选项,很可能的原因是Android SDK Tools有问题,需要重新下载Android SDK Tools。需要打包的.so库关系比较复杂,出现了动态库依赖动态库的情况,

2017-03-17 11:23:49 5635

原创 Unity地图分割组合时出现接缝的处理办法

最近公司需要,需要做一个能动态加载格子的地图,如下图所示:为此我用c#做了个工具来切割图片生成的图片如下:分割后的图块导入到unity中,放入quad上的材质中,然后再把这些quad按照图片原来的相对位置进行拼接,此时会出现缝隙,如下所示:如果此时放大镜头,会发现,原来每个quad的边缘都出现了特殊颜色的边。然而观察切割出来的图片

2017-01-23 09:26:29 11364

原创 Unity自定义Inspector时设置指定的值后运行无效果

今天为了项目需要,自定义Inspector菜单,如图下边2个菜单选择每当我上边的车选择M40202031时,下边设置的值到了运行中就起作用,但是选择其他车辆的时候,下边设置的值到了运行中怎么也不起效果。实在是让我抓狂按说Inspector的编辑器重写怎么可能跟我车辆的选择有关系呢,完全不搭嘎。需要保存的脚本属性前已经加了    [HideInInspector] [Seri

2016-08-24 19:22:19 3694

原创 Unity中WheelCollider的Slip曲线

最近接手了一个汽车相关的项目,要求实现汽车的基本运动控制,我使用了WheelCollider组件来实现4个轮子的驱动,但是当我在制作过程中遇到了一些麻烦。麻烦1:Unity4.x中的WheelCollider和5.x中的WheelCollider属性是不同的,两者的ExtremumValue属性代表的意义也是不一样的,这样会很难升级。麻烦2:Unity官方文档并没有对ExtremumSli

2016-05-23 11:58:27 4238

原创 UnityShader学习实践(hsv转rbg)

Shader "Custom/RGBtoHSV" {Properties {_H("hue",Range(0,360))=0.1_S("saturation",Range(0,1.0))=0_V("value",Range(0, 1.0)) = 0_A("Alpha", Range(0,1.0))=1.0}SubShader{Tags { "Queue"

2016-04-21 09:22:43 592

原创 小米游戏中心sdk接入unity

最近因为项目的需要,需要接入金山云的渠道:小米游戏中心,不过接入过程可谓是历经坎坷,下面我来分享一下个人经验。 我们的开发工具为:Unity4.3.4 Pro在提交初审版本后,讨论组里的人会发给我们一个链接http://dev.xiaomi.com/docs/gameentry/手机&pad游戏接入文档/应用内支付SDK/下载商用版sdk Vxxxx 进入以下链接:ht

2015-12-18 17:51:10 8843 2

翻译 【原创】Unity T4M 中文讲解

现在在u3d圈里流行了一种地形转换器(或者叫编辑器吧),但是经查阅之后,似乎还没有中文教程,又看到网上不少人在求中文教程,正巧公司内部也需要研究这块,所以我想顺便做一个尝试,顺便写个中文教程吧,英文不足之处请指出,好废话不多说,直接上菜。T4M是什么?为什么要用它?它是一个地形(Terrain)工具。它是一个Unity地形的替代工具,用于所有被3D开发工具(Maya,Ear

2015-06-13 15:35:01 38049 15

自定义flash拖拽管理器包

个人制作的专门用于flash cs开发工具下的拖拽管理器套件。相信不少朋友在使用flash的时候一定苦恼于无法象flex下那样很好的处理各种多样化的拖拽事件吧?现在好了,经过个人的努力,现在把源码贡献给大家。其中包含,拖拽管理类,拖拽代理类,拖拽事件类,暂不提供拖拽数据类,请使用拖拽管理类中的默认数据属性。请注意区分,这个只适合flash下使用。另外使用时请尽量保留原作者名,谢谢

2011-08-25

空空如也

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

TA关注的人

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