摘要:
在游戏里少不了文件操作,在love2d里我们可以直接用lua自带的io函数,如果不熟悉可以先读一下我的lua文件读写。相对lua,love2d提供了更多的函数, 方便我们操作文件。不过可能处于安全考虑,love2d只允许我们访问两个目录: 1、".love"文件根目录,或源码根目录 2、游戏存档目录游戏存档目录在不同平台分别为:Windows XP:C:\Documents and Settings\user\Application Data\LOVE\or%appdata%\LOVE\Windows Vista and 7,8:C:\Users\user\AppData\ 阅读全文
摘要:
最近要用到字符串对齐,开始只是一部分字符串,就直接加空格了,后来发现有很多,于是写了个字符串对齐的函数。--功能:分割字符串--参数:带分割字符串,分隔符--返回:字符串表function string.split(str, delimiter) str = tostring(str) delimiter = tostring(delimiter) if (delimiter=='') then return false end local pos,arr = 0, {} -- for each divider found for st,sp in fu... 阅读全文
摘要:
由于一些glsl的教程都是3d的,而love是2d的,所以之后以示例为主,我会收集一些love的shader,分类讲解。此文简译自love2d社区博客,这里略去作者的自我介绍。像素着色器入门示例1:--屏幕大小是512x512function love.load() screen = love.graphics.newShader([[ vec4 effect(vec4 colour, Image image, vec2 local, vec2 screen) { //红绿颜色分量按纹理坐标比例缩放 vec4 sc... 阅读全文
摘要:
Shader分为顶点着色器和片段着色器,GPU先处理顶点再处理片段,大概可以这么理解,顶点着色器处理模型里的点,输出处理后的数据,这些数据经过GPU其它模块处理后传入片段着色器,经片段着色器综合后渲染。片段处理器的名字也很恰当,表明了它处理的数据是一些顶点集合的数据片段。(以上理解仅供参考,如有错误,欢迎指正)在love2d里片段着色器被称作像素着色器pixelcode,下文也使用像素着色器。以上过程如下图,来自此文。另外在泡泡网上找到了这两幅图,仅供参考。使用shader时需要先检测显卡是否支持,可以用love.graphics.isSupported("shader") 阅读全文
摘要:
love2d一个好玩的地方是支持glsl1.2,并修改简化,glsl1.2的文档地址为:http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdf。glsl是opengl的着色器语言,还有其它类似的语言,如微软的HLSL,NviDIA的Cg等,关于着色器的介绍可以参见此文。我会按照该系列文章的思路写几篇love2d下的glsl用法。简单的说glsl可以让显卡按我们自定义的渲染流程来处理像素点和图片的颜色变化、混合、光照等。 记住三个关键词就可以使用glsl了,即创建、加载、更新(此步非必须)。 1、创建love.gr... 阅读全文
摘要:
2013年12月13(有点遗憾,一个星期后才知道),love2d终于发布新版本了,可以直接从我的百度网盘下载。主要的更新有:(简单翻译自官方论坛说明)LuaJIT: 默认使用LuaJIT,性能大幅提升,非常好的更新。ENet: 实时稳定UDP网络连接。TCP和UDP的简单区别是前者稳定不丢失信息,但速度慢;后者快速,但不保证信息完整。ENet则是在UDP信息里加了一些额外的校验数据,来保证信息的完整性。love.joystick: 更好的手柄支持,修正了某些手柄按键不识别bug。love.window : 新增窗口模块,由SDL2带来了更好的处理窗口变化支持以及多显示器支持。love.grap 阅读全文
摘要:
曾经以为做游戏是一件很有趣和挑战性的事,但是工作后天天加班到10点半,已经把我的创造力消磨殆尽了。国内好多公司都在玩“乾坤大挪移”,把国外的好游戏抄到国内,国内的好游戏抄到国外,游戏缺乏原创性,另外很失望。游戏规划也并不是程序员可以决定的,这些由游戏制作人和策划负责,程序员只负责实现他们的想法。所以如果有好游戏想法的,千万别去当程序员,要当那就做个业余的,自己做独立游戏。为什么呢?因为策划们,几乎不会考虑你的想法,我有时候问程序员同事,游戏如果改变一下方式会不会更好玩,他们告诉我不要管这些,这都是策划的事,如果按你的方案修改后,游戏收入减少,谁负责。不知道其它公司的情况如何,大概也是如此吧。项 阅读全文
摘要:
3.输入和音乐音乐不是循环播放的,可以在love.audio.play(music) 之前添加music:setLooping(true) 阅读全文
摘要:
1、把k--v表转化为数组表,只支持2级2、取中值3、字符串按每行最多n像素分割,并返回每行最大宽度,可以用"\n"手动换行 阅读全文
摘要:
如果是武功C紫霞神功要大成需要很长时间,威力还行Cpp九阳神功威力巨大Lisp小无相功你可以把它当做任何武功Shell太极拳四两拨千斤PHP打狗棒法不上台面,但威力惊人Java八荒六合唯我独尊神功无敌C#北冥神功厉害无比Lua凌波微步小巧快速如果是兵器C单锤可以打造自己的兵器Cpp双锤更加轻巧灵活Lisp棍兵器之祖Shell小李飞刀妙PHP短剑拔剑迅速Java枪百兵之王C#戟功能比枪更多Lua匕首好用如果是侠客C达摩稳重Cpp张三丰突破创新Lisp无崖子无拘无束Shell李寻欢精彩PHP陆小凤潇洒倜傥Java洪七公弟子遍天下C#欧阳锋有点邪Lua令狐冲看破江湖欢迎拍砖和补充,对古龙、梁羽生不了 阅读全文