自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 常用排序算法

--快排算法local arr = {3,11,5,2,6,1,7,4,6,9,3}local function quickSort(tab,left,right) local i = left local j = right local x = tab[i] --每次执行快排的基准数字 if i < j then while(i < j) do for m = j,i,-1 do j = m if tab[m] < x then .

2021-04-22 11:06:46 107

转载 Opengl概述

OpenGL概述对于开发者来说,学习OpenGL或者其他图形API都不是一件容易的事情。即使是一些对OpenGL有一些经验的开发者,往往也未必对OpenGL有完整、全面的理解。市面上的OpenGL文章往往零碎不成体系,而教材又十分庞大、晦涩难懂还穿插着各种API的介绍。因此笔者希望通过多年的图形开发经验,结合对OpenGL的理解,对OpenGL整体的知识做一个梳理,剔除掉特别复杂又较少使用的部分。遗留下来常见和易于理解的部分,同时也尽量在介绍的时候兼顾易懂性和严谨性。希望对即将或正在学习Open

2021-04-15 21:05:31 196

转载 lua沙盒

Lua 学习笔记:沙盒November 5, 2012分类:技术背景知识Lua 给我的感觉是:各种内置函数和标准库的存在感都是比较强的。如果执行这句:for name in pairs(_G) do print(_G) end就会把各种环境中已存在名称的打印出来:全局变量:比如字符串_VERSION。 内置函数:比如print、tonumber、dofile之...

2020-05-08 11:59:23 609

转载 lua总debug.hook的讲解

Lua5.1提供了较为完善的debug库函数,其中的sethook可以让用户自己设置hook函数来监控程序的某些运行行为,这包括:调用 函数,从函数返回和将要运行新的一行代码,每当这些事件(event)发生时hook函数都会被调用。读者可以试试 monitor_v1.lua, 它是debug hook功能的一个简单应用。require导入该文件后便得到一个名为monitor的扩展库,里面只有一个...

2019-07-12 12:08:48 5702

转载 lua utf8转换

-- 分离字符function AppInfo:StringToTable(s) local tb = {} --[[ UTF8的编码规则: 1. 字符的第一个字节范围: 0x00—0x7F(0-127),或者 0xC2—0xF4(194-244); UTF8 是兼容 ascii 的,所以 0~127 就和 ascii ...

2019-06-14 10:43:00 4307

原创 lua实现私有变量

话不多说,上代码function test() local self = {number = 0} local function add() self.number = self.number + 1 end local function sub() self.number = self.n...

2019-03-20 22:32:15 1936

转载 lua实现重载

local function create() local arg_table = {} local function dispatcher (...) local tbl = arg_table local n = select ("#",...) local last_match for i = 1,n do...

2019-03-20 18:30:03 2984

转载 Lua中setfenv()

当我们在全局环境中定义变量时经常会有命名冲突,尤其是在使用一些库的时候,变量声明可能会发生覆盖,这时候就需要一个非全局的环境来解决这问题。setfenv函数可以满足我们的需求。  setfenv(f, table):设置一个函数的环境  (1)当第一个参数为一个函数时,表示设置该函数的环境  (2)当第一个参数为一个数字时,为1代表当前函数,2代表调用自己的函数,3代表调用自己的函数的...

2019-03-20 18:27:54 2019 1

转载 lua的userdata解析

原文http://www.jellythink.com/archives/587话从这里说起在我发表《Lua中的类型与值》这篇文章时,就有读者给我留言了,说:你应该好好总结一下Lua中的function和userdata类型。现在是时候总结了。对于function,我在《Lua中的函数》这篇文章中进行了总结,而这篇文章将会对Lua中的userdata进行仔细的总结。对于文章,大家如果有...

2019-03-12 16:08:27 3420

转载 Cocos2dx源码赏析(1)之启动流程与主循环

  我们知道Cocos2dx是一款开源的跨平台游戏引擎,而学习开源项目一个较实用的办法就是读源码。所谓,“源码之前,了无秘密”。而笔者从事的也是游戏开发工作,因此,通过梳理下源码的脉络,来加深对Cocos2dx游戏引擎的理解。既然,Cocos2dx是跨平台的,那么,就有针对不同平台运行的入口以及维持引擎运转的“死循环”。下面,就分别从Windows、Android、iOS三个平台说明下...

2019-02-26 15:46:03 663

原创 A*算法代码

local _map_data         -- 地图数据local _open_list        -- 开放节点local _open_map         -- 开放节点,为了提高性能而加local _close_map        -- 关闭节点local _deleget          -- 代理local _dest_point       -- 目标点lo...

2019-02-23 12:23:44 2560

转载 skynet设计流程

写在最前面skynet是目前使用比较广泛的服务端框架,虽然目前网上资料众多,但是从自己的学习和使用经历来看,缺乏能够让自己系统了解该框架底层机制的资料,这段时间,趁着自己有时间,阅读了skynet底层的一些代码,现在将自己理解的部分总结并记录下来,以备日后使用。本文旨在捋清skynet框架的结构和主要流程,并不会涉及skynet的方方面面,一些论述,我贴上了一些源码加以论证,并在引用的源码里加入了...

2018-04-23 16:37:36 1004

转载 quick 3.3 webView

quick中已经集成了webView.可以直接跳过1~4,执行5.只能在android或者苹果设备中运行哦。1、编写ini文件。进入frameworks/cocos2d-x/tools/tolua文件夹,可以根据cocos2dx_experimental_video.ini编写生产cocos2dx_experimental_webview.ini,也可以在github(https://github...

2018-03-26 11:26:32 397

转载 skynet的本质与缺陷

skynet是为多人在线游戏打造的轻量级服务端框架,使用c+lua实现。使用这套框架的一个好处就是,基本只需要lua,很少用到c做开发,一定程度上提高了开发效率。但skynet文档也相对较少,所以这里利用一点时间学习和总结skynet相关内容,文章这里就讲解下skynet服务的本质与缺陷,希望能有所帮助。skynet服务的本质或许我们对skynet服务有着太多的疑问:skynet服务究竟是什么,为...

2018-03-15 16:40:23 1348

转载 cocos2d中帧循环和定时器

一,游戏帧循环的理解我们的游戏从main.cpp中的return CCApplication::sharedApplication()->run();进入到applicationDidFinishLaunching() ;其中在一个死循环中调用了mainLoop(),mainLoop是CCDirector的一个纯虚函数,在CCDirector的子类CCDisplayLinkDire

2017-11-30 11:59:31 380

转载 cocos2d中帧

前言高实时性是游戏区别于传统软件、应用的一个重要特征,游戏里通常有一个比较高频率的循环在处理用户输入、物理逻辑更新、业务逻辑更新以及图形渲染等工作, 以保证这种实时性的要求。我们把每一次循环叫做一帧,把每秒钟游戏更新的帧数称作“帧率(Frame Per Second)”, 也就是常说的FPS。电影的帧率通常是24FPS,cocos2d-x默认的帧率是60FPS, VR游戏中对帧率的要求则更

2017-11-30 11:54:10 406

转载 xshell连接ubuntu & xshell点击无反应

使用Xshell连接Ubuntu  Xshell是一个安全终端模拟软件,可以进行远程登录。我使用XShell的主要目的是在Windows环境下登录Linux终端进行编码,非常方便。本文简单介绍下它的使用方法。1.下载后在安装时选择个人/学校免费版即可。2.安装完毕后先在要连接的Ubuntu主机下开启SSH服务,如果没有开启需要安装openssh-server:sudo ap

2017-11-21 23:12:36 3334

原创 备忘录

local sproto = require "src.app.sproto"local proto = require "src.app.scenes.proto"local host = sproto.new(proto.s2c):host "package"local request = host:attach(sproto.new(proto.c2s))functi

2017-11-10 18:30:15 217

转载 socket详解

http://blog.csdn.net/sight_/article/details/8138802“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时

2017-10-31 15:13:57 534

转载 lua中的时间

系统到现在多少秒local time = os.time()print( time )给定时间的时,分,秒local test = os.date( "%X", time )"%X"是转换格式,类似与lua string中的formart。时间格式如下:%aabbreviated weekday name (e.g., Wed)

2017-10-31 10:33:48 483

原创 优先级更改

function UIAdapter:transNode(luaNode,isSwallowTouches)    local function checkVisible(node)        if node:isVisible() == false then            return false        elseif node.getParent and no

2017-10-13 09:38:38 355

原创 lua 5.3中string.pack 与 lpack中string.pack

skynet中用的lua是5.3的版本,quick-cocos2d中lua用的是5.1的版本,5.3中有string.pack(fmt,...),5.1中没有string.pack(fmt,...),在quick中加了一个lpack库,这个库在string中注册了pack函数,但是和5.3中的string.pack用法有点区别,具体差别直接上代码。_VERSION = 5.1funct

2017-10-10 16:32:00 12985 2

转载 cocos触摸

如果看过sample中touch的代码,你会发现示例中有一个cc.NODE_TOUCH_CAPTURE_EVENT事件,它和cc.NODE_TOUCH_EVENT触摸事件一样,是引擎级别的事件,我们来看看它和触摸事件的区别。首先触摸捕获事件默认是开启的,即setTouchCaptureEnabled(true)触摸捕获事件的优先级要比触摸事件要高,换句话说,

2017-09-28 15:47:18 620

转载 cocos2d-x引用机制

【参考】    http://zh.wikipedia.org/wiki/引用计数 (引用计数——维基百科)    http://cn.cocos2d-x.org/tutorial/show?id=2300 (引用计数和自动释放池)    http://cn.cocos2d-x.org/tutorial/show?id=1331 (内存管理——绕不过去的坎)

2017-09-26 18:25:48 365

原创 lua中函数

require() 不会重复加载。--require 函数的实现    function require(name)        if not package.loaded[name] then            local loader = findloader(name) //这一步演示在代码中以抽象函数findloader来表示            i

2017-09-20 20:32:27 190

转载 localZorder globalZorder

转自:http://blog.csdn.net/qq_28290581/article/details/52165343(如有错误,请联系我更正,以免误导他人!)      在学习cocos2dx时经常出现这种情况→→→→→→→→→→→→→→→→ !!!本该出现的妹纸为何变成娘娘!逗逼的表情背后隐藏着令人心动的美丽脸蛋,是什么让娘娘得宠,

2017-09-14 15:40:28 376

转载 spriteFrameCache和textureCache

1.TextureCache引用自:http://blog.csdn.net/zxf13598202302/article/details/49688333首先是最底层也最有效的纹理缓存TextureCache,这里缓存的是加载到内存中的纹理资源,也就是图片资源。其原理是对加入缓存的纹理资源进行一次引用,使其引用计数加一,保持不被清除,其cocos2d-x的渲染机制是可以重复使

2017-09-14 14:57:26 389

原创 cocos studio更新中注意事项

svn中名字大小写,更新奇怪现象,注意事项

2017-09-08 17:57:03 273

转载 虚拟机下utuntu的找不到ip问题

本篇博文解决的问题有:    1. ifconfig之后只显示lo,没有看到eth0        2. ifconfig之后显示eth0,但是没有显示静态IP地址,即无inet、地址、广播、掩码。    3. 重启电脑后需要输入dhclient eth0命令才能正常上网,不然能PING通主机,就是不能上网问题一:ifconfig之后只显示lo,没有看到

2017-08-26 11:08:05 636

原创 linux和windows文件大小写问题

在Linux系统内核中,由于其能区分大小写的特性,故开发时同文件夹下面有很多同名文件,    但是在windows下面不能区分大小写,会认为是同一个文件注意---------->windows下开发环境下没有错误的工程再linux下(android下)可能会报错。我在使用Git查看时经常出现有修改提示,实质上是将两个文件混淆导致的结果,在wi

2017-08-25 16:04:31 3234

原创 网络传输数据格式的选择

博客引用于:http://yaocoder.blog.51cto.com/2668309/995210/对于客户端和服务端的数据传输通常会有以下几点考虑:1.网络数据大小——占用带宽,传输效率:虽然对单个用户来说,数据量传输很小,但是对于服务器端要承受众多的高并发数据传输,必须要考虑到数据占用带宽,尽量不要有冗余数据,这样才能够少占用带宽,少占用资源,少网络IO,提高传输效率;

2017-08-18 17:36:15 3054

原创 lua中__call元方法

lua中的__call函数

2017-08-03 20:55:24 5913 1

原创 eclipse中编译cocos2d项目问题

eclipse quick3.3 头文件 坑

2017-07-28 16:40:27 358

转载 lua_c++

转载:https://segmentfault.com/a/1190000000718145(博主的学习态度很让人敬佩)关于cocos2d-x下Lua调用C++的文档看了不少,但没有一篇真正把这事给讲明白了,我自己也是个初学者,摸索了半天,总结如下:cocos2d-x下Lua调用C++这事之所以看起来这么复杂、网上所有的文档都没讲清楚,是因为存在5个层面的知识点:1、在纯C

2016-03-25 00:27:44 412

转载 github常用功能

使用GitHub进行团队合作原文: Team Collaboration With GitHubGitHub已经成为的一切开放源码软件的基石。开发人员喜欢它,基于它进行协作,并不断通过它开发令人惊叹的项目。除了​​代码托管,GitHub的主要吸引力是使用它作为一个协作开发工具。在本教程中,让我们来看看一些最有用的GitHub的功能,特别是使团队工作更有效率,更高生产力,

2016-03-09 11:33:51 1390

转载 bluestacks启动问题

开发了android程序就知道,原生的模拟器启动比较慢,还会出现莫名的问题,这边介绍另外一种模拟器:BlueStacks:BlueStacks是一个可以让Android 应用程序运行在Windows系统(目前,该公司再次宣布推出Mac版Bluestacks模拟器。)上的软件,由BlueStacks公司推出。BlueStacks新版本App Player采用名为Layercake的技术,可以

2016-01-24 11:56:40 1230

转载 os函数 lua

这个库通过表os实现os.clock ()功能:返回一个程序使用CPU时间的一个近似值例如:复制代码代码如下:local x = os.clock();print(os.clock())local s = 0;for i = 1, 100000000 do      s = s + i;endprint(string.form

2015-12-27 14:49:20 553

转载 cc(self)是什么?

分别找到这2句代码:复制代码cc(self):addComponent("components.behavior.EventProtocol"):exportMethods()cc.GameObject.extend(self):addComponent("components.behavior.EventProtocol"):exportMetho

2015-12-26 10:41:42 1732

转载 lua中的线程详解

文章转自:http://www.cnblogs.com/zrtqsk/p/4374360.html我们首先介绍一下什么是协程、然后详细介绍一下coroutine库,然后介绍一下协程的简单用法,最后介绍一下协程的复杂用法。一、协程是什么?  (1)线程  首先复习一下多线程。我们都知道线程——Thread。每一个线程都代表一个执行序列。  当我们在程序中创建多

2015-12-21 17:23:32 10751 1

转载 skynet的线程

(有时找不到这篇文章,直接复制风雨的博客。原址http://blog.codingnow.com/2015/12/skynet_coroutine.html)skynet 本质上只是一个消息分发器,以服务为单位,给每个服务一个独立的 id ,可以从任意服务向另一个服务发送消息。在此基础上,我们在服务中接入 Lua 虚拟机,并将消息收发的 api 封装成 lua 模块。目前用 lua 编写的

2015-12-20 12:05:21 759

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除