- 博客(9)
- 收藏
- 关注
原创 实现一个Unity3d的WaitForSeconds
这篇文章写在最新一段时间对协程的思考。我们知道在Unity3d里面调用StartCoroutine之后,会开启一个协程,参数是一个IEnumerator。协程可以在程序运行之后的某一个时间点执行我们的代码,那跟IEnumerator又有什么关系呢,IEnumerator有两个方法,一个是MoveNext,一个是Current。当你定义一个IEnumerator 函数的时候,你必须在函数里面
2016-08-15 10:21:16 2747
原创 protobuf中的variable-integer编码方式
上篇我们说到了sqlite的variable编码方式,用第一个byte来标识这个int的长度,protobuf也差不多,用每个byte的第一位标识长度,解码的时候先检查第一个byte,如果这个byte的第一位是1,说明后面的byte还是跟着这个byte的,如果这个byte是0,说明就不需要继续读取后面的byte来解析这个int了举个例子:300用Varints序列化的结果是10
2016-03-24 13:16:12 470
原创 sqlite variable-length integers 实现方式
网站地址:http://sqlite.org/src4/doc/trunk/www/varint.wiki这种存储方式的好处在于,1 可以用比较少的位数来存储比较小的数字(在实际应用中,存储的比较多),而用比较多的位数来存储比较大的数字(在实际应用中,存储的比较少)。2 长度可以在第一个字节就可以知道3 编码之后的字节串的排序没改变。一个已经排序好的数组,编码之后,还是排好
2016-03-24 13:06:55 399
原创 daikon forge scroll view排序的问题。
使用的是zorder排序,而且排序使用的是不稳定的排序算法,于是如果你 新建一个df
2014-05-16 19:49:23 712
原创 vs2013编译google protobuf生成的消息文件错误。
用google protobuf 生成的.h 和.cpp放到工程目录下,并添加好头文件目录和lib目录,在main.cpp里面添加#pragma comment(lib,"libprotobuf.lib")//链接库文件#pragma comment(lib,"libprotoc.lib")//链接库文件之后,会发现编译不过,具体就是d:\program files (x86)\m
2014-03-03 15:31:03 3394
原创 charactercontroller .Move被阻挡
前几天美术找我问一个问题,角色在一个物体上行走时候会被阻挡,而且不是每个地方都是阻挡,二十在 wire-tex模式下的网格线处被阻挡。当时把Move换成了SimpleMove还会往下掉。今天无意中在查看文档的时候看到了 CharacterController这个组件的文档的时候才发现,要这个组件在collider之上才能行走,如果在它之下的话,就无法通过网格线。
2012-09-13 13:43:39 1092
原创 Move 和 SimpleMove
Move 不受重力影响, 不过受到collider的阻挡。 Move (new Vector(0, 0, 1)) --- 向z轴移动动一单位SimpleMove 受到重力影响, 也受到collider阻挡, SimpleMove(new Vector(0, 0 ,1)); ----向z轴移动 Time.deltaTime * 1单位的距离。
2012-09-13 12:01:06 1402
原创 unity的3种update
Update:update is called every frame, if the MonoBehaviour is enabled; -------每帧调用一次LateUpdate: LateUpdaet is called every frame, if the Behaviour is enabled;-------每帧调用一次,在Update之后FiexdUpdate: Th
2012-09-12 11:06:19 623
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人