上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 47 下一页

2015年1月27日

Lua 中写 C 扩展库时用到的一些技巧

摘要: Lua 中写 C 扩展库时用到的一些技巧(转)通常,C 扩展库中 C 代码会有一些数据要放在 lua 状态机中。Lua 提供的方案是放在它的注册表中。如文档所言,因为 Lua 的注册表是全局共享的,选择 key 的时候就要千万小心了。整数 key 已经被 reference 系统用掉了,一般我们会采... 阅读全文

posted @ 2015-01-27 13:32 &大飞 阅读(397) 评论(0) 推荐(0)

C语言union关键字

摘要: union 关键字的用法与struct 的用法非常类似。union 维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在union 中所有的数据成员共用一个空间,同一时间只能储存其中一个数据成员,所有的数据成员具有相同的起始地址。例子如下:union StateMachi... 阅读全文

posted @ 2015-01-27 13:05 &大飞 阅读(157) 评论(0) 推荐(0)

Lua的C++封装

摘要: 前段时间由于公司项目需要,做了LUA的C++封装,为此看了LuaPlus(感觉过于庞大,挺混乱的..)跟LuaTinker(一个韩国人写的,只有两个代码文件,实现了大多数需要的功能)的代码,在实现LUA与C++的交互中最重要的功能莫过于实现在LUA中注册任意类型的C++函数和类,现将自己所得到的一些... 阅读全文

posted @ 2015-01-27 12:46 &大飞 阅读(683) 评论(0) 推荐(0)

2015年1月24日

Lua中的模块与包

摘要: 前言从Lua5.1版本开始,就对模块和包添加了新的支持,可是使用require和module来定义和使用模块和包。require用于使用模块,module用于创建模块。简单的说,一个模块就是一个程序库,可以通过require来加载。然后便得到了一个全局变量,表示一个table。这个table就像是一... 阅读全文

posted @ 2015-01-24 16:24 &大飞 阅读(329) 评论(0) 推荐(0)

2015年1月23日

Protocol Buffer技术详解(语言规范)

摘要: 该系列Blog的内容主体主要源自于Protocol Buffer的官方文档,而代码示例则抽取于当前正在开发的一个公司内部项目的Demo。这样做的目的主要在于不仅可以保持Google文档的良好风格和系统性,同时再结合一些比较实用和通用的用例,这样就更加便于公司内部的培训,以及和广大网友的技术交流。需... 阅读全文

posted @ 2015-01-23 03:57 &大飞 阅读(177) 评论(0) 推荐(0)

2015年1月22日

protobuf-2.5.0 报package directory 'google/protobuf/compiler' does not exist 解决办法

摘要: 执行python setup.py install 时报错:error: package directory 'google/protobuf/compiler' does not exist解决办法:在google/protobuf/下创建compiler文件夹再次在protobuf文件夹下运行:... 阅读全文

posted @ 2015-01-22 12:25 &大飞 阅读(2249) 评论(0) 推荐(0)

用protoc-gen-lua生成PB的lua代码

摘要: 所需文件安装包:python-2.7.2.msipython安装程序 http://www.python.org/getit/LuaForWindows_v5.1.4-45.exelfw安装程序 http://code.google.com/p/luaforwindows/downloads/lis... 阅读全文

posted @ 2015-01-22 10:40 &大飞 阅读(706) 评论(0) 推荐(0)

2015年1月21日

Unity中的世界坐标和NGUI中的坐标的相互转换

摘要: 1、将Unity中的世界坐标转换成NGUI中的坐标,代码如下所示: publicGameObject TargetObject; //目标物体 publicCamera worldcamera; //世界相机。publicCamera guiCamera; //UI相机// Use this f... 阅读全文

posted @ 2015-01-21 21:43 &大飞 阅读(890) 评论(0) 推荐(0)

2015年1月20日

共享 lua state 中的数据

摘要: 今天和倩女幽魂的同事讨论一个问题:他们的游戏 client 中,有大量策划填写的表格直接导入 lua state 中的大量数据。大约有 100M 以上。这样,如果玩家在一台机器上启动多个 client ,就会占用大量的内存。而这些数据,一旦加载进 lua ,就不会再修改,且每个 client 中数据... 阅读全文

posted @ 2015-01-20 14:13 &大飞 阅读(521) 评论(0) 推荐(0)

Lua数据结构 — lua_State(六)

摘要: 作者:罗日健前面各种Lua的数据类型基本都说得差不多了,剩下最后一个数据类型:lua_State,我们可以认为是”脚本上下文”,主要是包括当前脚本环境的运行状态信息,还会有gc相关的信息。Lua这门语言考虑了多线程的情况,在脚本空间中能够开多个线程相关脚本上下文,而大家会共用一个全局脚本状态数据,如... 阅读全文

posted @ 2015-01-20 01:34 &大飞 阅读(7920) 评论(0) 推荐(0)

Lua数据结构 — Udata(五)

摘要: 作者:罗日健Udata负责存储userdata的数据,这部分其实很简单,但是为了保证系列文章的完整性,还是写一篇出来补全。下面是Udata的数据结构:意义:CommonHeader:和与TValue中的GCHeader能对应起来的部分metatable:userdata的元表,和table的元表一样... 阅读全文

posted @ 2015-01-20 01:33 &大飞 阅读(799) 评论(0) 推荐(0)

Lua数据结构 — 闭包(四)

摘要: 作者:罗日健前面几篇文章已经说明了Lua里面很常用的几个数据结构,这次要分享的也是常用的数据结构之一 –函数的结构。函数在Lua里也是一种变量,但是它却很特殊,能存储执行语句和被执行,本章主要描述Lua是怎么实现这种函数的。在脚本世界里,相信闭包这个词大家也不陌生,闭包是由函数与其相关引用环境组成的... 阅读全文

posted @ 2015-01-20 01:31 &大飞 阅读(517) 评论(0) 推荐(0)

Lua数据结构 — Table(三)

摘要: 作者: 罗日健前面(一)、(二)里面其实已经把一些常用的数据类型(数值、布尔、字符串)说明了,这次要描述的是Table,Table在Lua里是一种常用的数据类型,是Lua里的精髓之一,其效率必须得到保证,而实现这种支持任意类型key和value的Table也是较为复杂的。一, Table的设计思想:... 阅读全文

posted @ 2015-01-20 01:30 &大飞 阅读(2617) 评论(0) 推荐(0)

Lua数据结构 — TString(二)

摘要: 作者:罗日健存储lua里面的字符串的TString数据结构:(lobject.h 196-207)其它结构中也会有L_Umaxalign dummy这个东西,来看看L_Umaxaliagn:从字面意思上就是保证内存能与最大长度的类型进行对齐,事实上也是做这件事,这里感觉lua想给各种不同设备做一种嵌... 阅读全文

posted @ 2015-01-20 01:29 &大飞 阅读(687) 评论(0) 推荐(0)

Lua数据结构 — TValue(一)

摘要: 作者:罗日健数据结构的设计,在一定程度上奠定了整个系统的设计,所以决定写一个对Lua主要数据结构的分析文章,本来打算写一篇就好了,但是每个数据类型其实都有点复杂,一篇的话篇幅太长,所以就拆开几篇来写了。为什么是从TValue说起,TValue是实现Lua弱数据类型的主要数据结构,不但在脚本中的值使用... 阅读全文

posted @ 2015-01-20 01:28 &大飞 阅读(820) 评论(0) 推荐(0)

Step By Step(Lua数据结构)

摘要: Lua中的table不是一种简单的数据结构,它可以作为其它数据结构的基础。如数组、记录、线性表、队列和集合等,在Lua中都可以通过table来表示。 1. 数组: 使用整数来索引table即可在Lua中实现数组。因此,Lua中的数组没有固定的大小,如: a = {} for i = 1, 100... 阅读全文

posted @ 2015-01-20 01:08 &大飞 阅读(254) 评论(0) 推荐(0)

2015年1月19日

NGUI动态添加

摘要: 1 动态添加sprite因为暂时未解决在脚本中动态指定atlas,所以,目前动态添加的sprite需要手动指定 public UIAtlas at; // Use this for initialization void Start () { test(); }... 阅读全文

posted @ 2015-01-19 11:21 &大飞 阅读(190) 评论(0) 推荐(0)

2015年1月18日

lua接入pb相关问题备忘

摘要: 最近接pb.c这段代码static int struct_unpack(lua_State *L){ uint8_t format = luaL_checkinteger(L, 1); size_t len; const uint8_t* buffer = (uint8_t*)lu... 阅读全文

posted @ 2015-01-18 21:52 &大飞 阅读(598) 评论(0) 推荐(0)

ReSharper 配置及用法(转)

摘要: 快捷键大全。6: Alt+F7将你光标所在位置的变量的所有使用以列表的方式显示出来,显示结果的窗体可以像其他窗体那样停靠。它的优点包括:可以从所有使用中挑选只显示read usage或者write usage,有时我们只是想知道某个变量在哪里被改变了。找到的位置前的图标也告诉你这点。可以在下方预览,... 阅读全文

posted @ 2015-01-18 21:36 &大飞 阅读(141) 评论(0) 推荐(0)

Unity3D教程宝典之插件篇:Unity3D插件详细评测及教学下载

摘要: 转载自风宇冲Unity3D教程学院引言:想用Unity3D制作优秀的游戏,插件是必不可少的。工欲善其事必先利其器。本文主旨是告诉使用Unity3D引擎的同学们如何根据需求选择适当的工具。为此我写了插件的经验及理论讲解,涉及插件的学习/辨别/选择/配合。也写了插件的评测/教程/下载。关于评测,带有一定... 阅读全文

posted @ 2015-01-18 08:13 &大飞 阅读(1223) 评论(0) 推荐(0)

上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 47 下一页

导航