
love2d
雨艺工作室
专业编程二十年
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二、行为树的原理和实现
使用BTEditor可以生成行为树的Lua代码,这里对生成的代码进行解析。(BTEditor的项目主页:https://github.com/bartoleo/BTEditor)要注意:1、行为树每个节点都需要向其父节点返回一个值,以允许父节点根据子节点运行情况继续运行。2、每棵树都有一个根节点,这个节点没有特殊意义。需要解析的行为树节点的解释:一、Composite No原创 2014-10-03 18:18:59 · 8565 阅读 · 3 评论 -
神奇的Lua:从pairs和ipairs解析for循环
如果不用pairs/ipairs/for如何来实现遍历数组的操作呢?下面实现了一下,没有实用意义,仅仅为了理解lua的for循环。-- 实现 pairs ipairs for 三个函数local function ipairs_next_func(tab, key) key = key + 1 value = tab[key] if value then return key, v原创 2014-12-10 14:21:44 · 6765 阅读 · 0 评论 -
神奇的Lua:setfenv,模拟VB的with关键字
如果您使用过VB,就一定知道原创 2014-05-26 15:43:22 · 1222 阅读 · 0 评论 -
神奇的Lua:闭包和upvalue
闭包 = 函数 + upvalue下面原创 2014-05-26 16:39:50 · 1703 阅读 · 0 评论 -
神奇的lua:lex和yacc实现计算器
在别人的基础上改了一个支持变量的命令行计算器,作为lua编辑原创 2014-09-24 00:31:39 · 3036 阅读 · 0 评论 -
神奇的Lua:可变参数
变参被依次放在arg表中。可以通过...继续传递变参。原创 2014-10-01 16:19:14 · 3833 阅读 · 0 评论 -
神奇的Lua:weak table
Lua的weak table机制可以实现一些神奇的功能。将一个table设置为weak的方法:原创 2014-10-07 22:09:30 · 1623 阅读 · 0 评论 -
基于Lua的新语言NL
新语言使用nl来作为临时名称(new language的缩写),语法和特性基于Lua。nl语法和特性完全基于Lua的语法,修改如下:function使用def代替。字符串连接符去除,将任意类型的两个变量写在一起表示将其作为字符串连接,即a b// 等同于tostring(a) .. tostring(b)所以:"a" "b" => "ab""a"原创 2014-12-17 00:07:03 · 1223 阅读 · 0 评论 -
FLEX&BISON:去除C代码注释和其中的多余空行
使用两个flex程序来完成。去除注释flex代码文件flex1:%option noyywrap%x COMMENT%{%}%%"//".* {}"/*" {BEGIN COMMENT;}"*/" {BEGIN INITIAL;}. {}. {printf("%s", yytext);}%%int main(int argc, char *argv[]){原创 2014-12-27 00:23:37 · 3669 阅读 · 0 评论 -
lua编程注意事项
参数遗漏问题function a() return "a1", "a2"endprint(1, a())print(1, a(), 2)打印的结果是1 a1 a21 a1 2可以看到,第二次打印的时候a的第二个返回值丢失了。这是因为编译器不知道这个函数的返回值个数,函数调用如果不是在形参的最后,编译结果中只能占据一个形参位。原创 2015-01-08 20:47:24 · 1208 阅读 · 0 评论 -
将GIF多张图片转成一张PNG图片,以便在游戏中可以方便使用
使用一个python库PIL完成。可指定的参数为png图片最大宽度maxwidth,默认为4096。在这个限制下,如果一行放不下,就自动换行。其他参数均作为要处理的gif文件名,将会进行遍历处理。gif文件名必须用.gif结尾,生成的文件将分别以.png和.lua结尾。例如xx.gif会在同一个目录下生成xx.png和xx.lua文件。如果xx.png活xx.lua以及存在,则导致该文原创 2015-01-11 15:44:42 · 2370 阅读 · 0 评论 -
三、2D骨骼动画
spriter的官网下载在love2d中解析scml文件的工具 密码: llku编辑2D骨骼动画的免费软件似乎只有Spriter了,而且其Pro版本还要收费。游戏引擎依然是love2d,在love2d的官网论坛上我找到了解析Spriter动画文件的程序,在上面的链接下载。原创 2014-12-15 21:16:43 · 1659 阅读 · 0 评论 -
ubuntu下设置love2d开发环境
到love2d官网,打开linux的ppa页面,点击“Technical details about this PPA“,选择ubuntu版本,拷贝方框里面第一行(ubuntu13.10的是:deb http://ppa.launchpad.net/bartbes/love-stable/ubuntu saucy main)。打开设置里面的“软加和更新”,点”其他软件“,点”添加“,粘贴刚原创 2014-12-21 09:56:03 · 1655 阅读 · 0 评论