- 博客(14)
- 资源 (4)
- 收藏
- 关注
原创 lua(9)-模块和自定义loader
在实际的项目中,往往不会只有一个.lua文件,而是有多个.lua文件一起在跑,这就需要宿主程序在开始运行的时候把所有需要用到的.lua文件全部加载,这一步通常是由require代为完成。通常程序里第一个被加载的.lua文件会作为入口文件,由这个入口文件来require其他.lua文件,从而实现对所有.lua文件的加载。 lua官方提供了require、module函数来加载多个lua文
2016-08-18 15:39:38 3149 2
原创 lua(8)-C API 2[C++与lua的交互]
上一篇我们提到许多c的api,这一篇我们就来看看如何实现基本的C++与lua的交互。(1)基础示例首先我们打开VS,新建一个c++控制台程序lua1,在我电脑上,这个新建的c++项目路径是F:\VSProject\lua1。然后在lua的安装目录下找到include和lib文件夹将include和lib文件夹拷贝至新建的c++项目中,拷贝到和.sln解决方案文件同一目录
2016-08-18 14:49:00 883
原创 lua(7)-C API
Lua是一种嵌入式语言,支持被其他语言如C、C++调用,这时候lua被当成是一个c++的库,c++引用了这个库提供的c++接口,就能对lua脚本进行操作。lua提供了一个虚拟栈,与C、C++语言实现通信是在这个栈里面实现的,lua在这个虚拟栈内解决交互时内存释放方式的差异性(lua有垃圾回收机制,c和c++要求显式释放内存)、类型使用的差异性(C和C++使用静态类型,lua使用动态类型)。首先
2016-08-17 21:29:29 792
原创 lua(6)-元表(metatable)和元方法(meatmethod)
通常,Lua中的每个值都有一套预定义的操作集合。例如,可以将数字相加,可以连接字符串。但是我们无法将两个table相加,无法对函数作比较,也无法调用一个字符串。因此可以通过元表来修改一个值的行为,使其在面对一个非预定义的操作时执行一个指定的操作。例如,假设a和b都是table,通过元表可以定义如何计算表达式a+b。当Lua试图将两个table相加时,它会先检查两者之一是否有元表,然后检查该元表中是
2016-08-17 17:55:43 3127 2
原创 lua(5)-table(表)
table(表)是lua中唯一的数据结构,用table可以实现模块(module)、包(package)和对象(object)的表示。比如io.read中的io就是一个模块,read就是io模块中的一个索引(使用字符串"read"作为read方法的索引)。程序中仅持有一个对tabel的引用(就像静态变量那样)。(1)table的构造式。构造式是用于创建和初始化table的表达式。最简单的构
2016-08-12 14:46:57 1530
原创 lua(4)-函数
lua中函数的声明和定义需要使用function关键字,并且用end结束定义区域(1)Lua的函数没有太严格的形参必须与实参一 一对应的规则,一个函数可以带0个或多个形参,实际调用的时候也可以传递0个或多个实参输出(2)Lua里的函数还有一个非常与众不同的规则,就是允许返回多个值输出(3)变长参数使用"..."可以编写出能接受
2016-08-11 21:05:53 782
原创 lua(3)-string字符串&math数学库
(1)string字符串1、字符串连接符".."使用".."符号可以将两个字符串相连接,等价于C#或Java中的string a + string b,如果“..”两边有一个是数字的话,".."操作符会把数字变成字符串输出2、Lua的字符串包含string库,可以借助string库函数来便捷地使用string输出3
2016-08-04 15:07:47 1209
原创 lua(2)-基础方法&语法
续上一篇,lua环境搭建完毕后,我们来了解它的一些基础的方法和语法。在lua的安装目录下,找到docs目录,里面有一个lua的帮助手册,里面有非常详细的api以及语法方面的记载。打开手册后我们点击搜索搜索contents,找到Lua 5.1 Reference Manual - contents可以看到这里给了非常详细的分类列表,包括
2016-08-04 11:41:28 698
原创 lua(1)-环境配置
说到游戏开发,就不得不提到lua,lua作为一种简单、可扩展、可移植及高效的脚本语言,广泛地被用于网络游戏以及手机游戏中。写游戏常常需要跟lua打交道,还是做些笔记记下来吧,以后想看方便找= =。(1)搭建lua环境。由于lua是脚本语言,lua的编译与执行需要解释器程序的支持。PC平台上,我们可以去下载Lua for Windows.exe,网址为http://luaforge.net/
2016-08-04 11:32:57 1261
原创 Unity3D shader 人物被选中光环/技能范围光环
好长一段时间都没写过博客了,身边一有各种杂七杂八的事就懒散下来了,我要振作(╯‵□′)╯""┻━┻。楼主在写这篇博客的时候室友突然要和几个同班同学去云南玩耍个一星期,搞得楼主差点没心情继续往下写了,我也想和他们一起来场说走就走的旅行ಥ_ಥ,不行,我要振作(╯‵□′)╯""┻━┻!! 好吧扯远了,自己学shader也有一段时间了(自学这玩意儿真的很苦逼啊,遇到问题得各种尝试,想不通为何
2016-04-07 18:28:57 12057 6
原创 MFC小程序 简易网络聊天室 VS2012 ODBC连接MySql数据库和网络Socket通信
作为一个大学汪,课多,作业也还真是多啊(( >﹏ 此次小程序的主要功能及知识点:ODBC连接MySql数据库、利用MFC的CSocket类实现网络通信,程序运行界面如下:服务器、客户端之间可以任意发送消息客户端拥有简单的聊天记录于是乎,我滚过来和大家讲解下大概的思路和代码1、网络通信在MFC中要实现网络通信,不需要特地去配置相应的开发
2015-01-28 19:35:59 5184 9
原创 MFC VS2012 会员管理器(序列化和反序列化)
上回老师又布置了一个作业,用MFC实现类的序列化功能,于是乎我就滚去摸索mfc的序列化,经过两三周的时间,终于把这个会员管理器搭得差不多了,主要的功能均已实现,算是半成品吧,因为还有一个小问题没解决(虽说不影响使用)。交给老师答辩当天其实还在赶工写这个,虽然没写完,但是还是得了这次答辩的全班最高分(虽然这个程序算不上啥,不过还是请允许我在这里装一下B 好吧闲话不扯那么多了(
2015-01-28 16:11:49 1920 1
原创 VS2012 MFC 单文档 模拟时钟日历程序
第一次写博客,就把这第一次献给亲爱的MFC吧~作为一个MFC初学者,我懂得各位同是初学者的同学朋友们的不易,网上关于从MFC 0基础开始讲解MFC的书籍并不多,在这里就对我练习的这个小程序尽可能地做详细地讲解,请各同学朋友多多指点,相互学习,高手勿喷~最终小程序的运行结果如下图所示(时钟各个点的位置的数学算法可以自己用正余弦定理计算一下或者去参考一下网上其他人计算好的):
2014-10-31 16:26:39 8461 25
VS2012 MFC小程序 简易网络聊天室
2015-01-28
VS2012 MFC小程序 会员管理器
2015-01-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人