自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fanzhang1990的专栏

努力学习算法和搜索

  • 博客(167)
  • 资源 (7)
  • 收藏
  • 关注

原创 centos上安装qemu学习xv6

参考 MIT-6.828-JOS-环境搭建我的系统是centos,网上大部分人都是ubunt安装qemu。两种方式安装qemu,命令安装和源码安装。A: 命令安装就一条命令,qemu官网 写的就是yum install qemu-kvm,执行之后,执行./configure报错:ERROR: zlib check failedMake sure to have the zlib lib...

2019-12-05 20:20:11 1447

转载 C语言中的 (void*)0 与 (void)0

C语言中的 (void*)0 与 (void)0  前几天看到一个宏, 它大概是这样的:    #define assert_param(expr) ((expr) ? (void)0 : assert_failed((u8 *)FILE, LINE))代码的含意简单, 关键是那个 (void)0 的用法, 我还是第一次见到(别笑).我用 void 的时候, 有两种情况:    1.放到...

2019-11-16 19:04:58 399

转载 centos7源码编译安装lua:lua5.1升级lua5.3

文章转自这篇文章链接

2019-11-12 20:47:38 356

转载 c语言中realloc()函数解析

转发自https://blog.csdn.net/hackerain/article/details/7954006

2019-11-02 16:06:34 221

转载 cocos2d-x3.7 cclabel文字破碎,异常,变乱

转自(https://blog.csdn.net/songcf_faith/article/details/50461197)

2018-07-11 19:03:51 330

转载 架构的分析模型

一、 讨论的背景 现代电子游戏,基本上都会使用一定的网络功能。从验证正版,到多人交互等等,都需要架设一些专用的服务器,以及编写在服务器上的程序。因此,游戏服务器端软件的架构,本质上也是游戏服务器这个特定领域的软件架构。软件架构的分析,可以通过不同的层面入手。比较经典的软件架构描述,包含了以下几种架构:运行时架构——这种架构关心如何解决运行效率问题,通常以程序进程图、数据流图为表达方式。在...

2018-06-17 09:12:15 603

转载 游戏服务器架构

一、游戏服务器特征 游戏服务器,是一个会长期运行程序,并且它还要服务于多个不定时,不定点的网络请求。所以这类服务的特点是要特别关注稳定性和性能。这类程序如果需要多个协作来提高承载能力,则还要关注部署和扩容的便利性;同时,还需要考虑如何实现某种程度容灾需求。由于多进程协同工作,也带来了开发的复杂度,这也是需要关注的问题。功能约束,是架构设计决定性因素。基于游戏业务的功能特征,对服务器端系统来说...

2018-06-17 09:02:50 1078

转载 C语言学习之指针的右左法则

C语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标 准里面的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相反的。右左法则的英文原文是这样说的: The right-left rule: Start reading...

2018-05-28 23:09:35 1128

原创 内存对齐之学会计算结果

内存对齐的原理, 很多地方都有说,总结一句话: 为了寻址更快,以空间换时间。计算的时候遵循下面四个原则就行了。四个原则1.结构体变量的首地址能够被其最宽基本类型成员的大小所整除 2. 结构体每个成员相对于结构体首地址的偏移量都是当前成员大小的整数倍,如有需要编译器会在成员之间加上填充字节; 3. 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在...

2018-05-10 19:35:21 486

转载 C++11多线程std::thread的简单使用

转自:http://blog.csdn.net/star530/article/details/24186783在cocos2dx 2.0时代,我们使用的是pthread库,是一套用户级线程库,被广泛地使用在跨平台应用上。但在cocos2dx 3.0中并未发现有pthread的支持文件,原来c++11中已经拥有了一个更好用的用于线程操作的类std::thread。cocos2dx 3.0的

2017-10-28 18:20:29 268

翻译 opengl-es2.0之相机MVP矩阵

本文翻译来自 http://blog.db-in.com/cameras-on-opengl-es-2-x/在这篇文章中我们将讨论3D世界中一个非常重要的部分。你应该知道,在我们的设备屏幕后面的这个世界只是试图重现人类眼睛的美丽和复杂性。

2017-10-17 22:08:39 850

转载 OpenGL学习脚印:缓冲对象相关函数的使用(buffer object function usage)

本文转自点击打开链接

2017-10-16 22:38:06 275

转载 如何学好3D游戏引擎编程

http://www.gamengines.com/article-549.html  此篇文章献给那些为了游戏编程不怕困难的热血青年,它的神秘要我永远不间断的去挑战自我,超越自我,这样才能攀登到游戏技术的最高峰           ——阿哲VS自己 QQ79134054多希望大家一起交流与沟通这篇文章是我一年半前,找工作时候写的,那时是发到学校的BBS上。现在我工

2017-09-15 20:45:31 455

转载 Lua的upvalue和闭包

转自 http://blog.csdn.net/chenjiayi_yun/article/details/25219937Lua函数可以被当成参数传递,也可以被当成结果返回,在函数体中仍然可以定义内嵌函数。lua闭包是Lua函数生成的数据对象。每个闭包可以有一个upvalue值,或者多个闭包共享一个upvalue数值。1、upvalue如果函数f2定义在函数f1中

2017-09-09 18:36:28 367

原创 一些好的技术网站

游戏设计和技术  :http://ctrl500.com/穷佐罗的Linux https://zorro.gitbooks.io/poor-zorro-s-linux-book/content/linuxde_nei_cun_hui_shou_he_jiao_huan.html

2017-06-01 20:56:33 363

原创 lua写的敏感词过滤

今天在一个群 看到一个 别人写的lua版本敏感词过滤,觉得挺不错,收藏了,传送门https://github.com/ccppluagopy/SensitiveWord-Lua

2017-03-15 16:09:54 3475

原创 cocos2dx 通过plist文件 创建精灵

cocos2dx 版本3.13很多时候我们都是通过将一些小图片合成一张大图片,导出plist文件和png文件。Sprite可以通过纹理创建,记录一下:local dict = cc.FileUtils:getInstance():getValueMapFromFile("people/animal.plist")     local framesMap = dict["frames

2016-11-29 20:18:48 1565

原创 SpriteFrameCache遇到的函数问题

SpriteFrameCache中的函数addSpriteFramesWithFile 和 getSpriteFrameByName在导出给lua用的时候  居然说是nil值,很奇怪。搜了半天在cocos2dx.ini中有这么一句话:rename_functions = SpriteFrameCache::[addSpriteFramesWithFile=addSpriteFrames g

2016-11-29 16:24:45 663

转载 cocos2d-x性能优化的那些事

年前在对我做的项目做性能优化,虽然在开发中,性能问题是一直关注着的,但是这个东西依然需要在后期做一段时间的优化的,也遇到不少坑,在这里分享下,也记作笔记,另外也欢迎大家有这方面的问题经验在这里讨论。性能的优化主要是亮点,内存的优化和运行效率的优化1.内存的优化       说内存的优化,首先要知道有什么东西会占据程序的内存,可优化的主要是两部分:数据和资源,先说数据,做短连

2016-11-10 19:05:54 605

转载 cocos2dx--TextureAtlas

在Cocos2d-x中,精灵CCSprite对象可以直接通过加载图片的形式创建,这是最简单的形式,这样做有两个弊端,一个是浪费内存,另一个是降低效率。所谓浪费内存,其原因是在为图片分配内存空间时,需要分配超过图片尺寸的,且是最小的2的幂次的尺寸。如果图片长和宽分别是129px和65px,则分配的内存空间需要256*128*每个像素占用的内存字节数。可以发现实际的图片信息大约只占用了内存空间

2016-09-26 20:52:54 1641

转载 shader内置变量和函数

1、uint CreateShader(enum type) : 创建空的shader object;   type: VERTEX_SHADER,2、void ShaderSource(uint shader, sizeicount, const **string, const int *length):加载shader源码进shader object;可能多个字符串3、

2016-09-22 21:10:35 5079

转载 GLSL 内建函数

OpenGL ES着色语言为标量和向量操作定义了一套内建便利函数。有些内建函数可以用在多个类型的着色器中,有些是针对固定硬件的,所以这部分只能用在某个特定的着色器上。       内建函数基本上可以分为一下三类:(1)它们使用一些简便的方式提供必要的硬件功能,如材质贴图。这些函数单独通过着色器是无法模拟出来的。(2)它们展示了一些可以常简单的写入的繁琐操作(clamp, m

2016-09-22 10:02:03 431

转载 分享一个Shader学习案例比较多的网址

分享一个Shader学习案例比较多的网站,里面有很多比较实用的例子,有些还是很很不错的,可以方便大家进行学习,并应用在自己的工程中。网址:https://www.shadertoy.com/browse需要基友们的电脑配置稍微给力一点,不然确实是有点卡。浏览器当然是要支持WebGL的了,这个自然不用说了先上几张截图,有兴趣的 可以自己去search里面的案例(鼠标可以放在场

2016-09-21 14:14:47 1396

转载 OpenGL超级宝典笔记——GLSL语言基础

变量GLSL的变量命名方式与C语言类似。变量的名称可以使用字母,数字以及下划线,但变量名不能以数字开头,还有变量名不能以gl_作为前缀,这个是GLSL保留的前缀,用于GLSL的内部变量。当然还有一些GLSL保留的名称是不能够作为变量的名称的。基本类型除了布尔型,整型,浮点型基本类型外,GLSL还引入了一些在着色器中经常用到的类型作为基本类型。这些基本类型都可以作为结构体内部的类型。

2016-09-21 13:44:41 379

转载 OpenGL ES 三种类型修饰 uniform attribute varying

1.uniform变量uniform变量是外部application程序传递给(vertex和fragment)shader的变量。因此它是application通过函数glUniform**()函数赋值的。在(vertex和fragment)shader程序内部,uniform变量就像是C语言里面的常量(const ),它不能被shader程序修改。(shader只能用,不能

2016-09-21 00:25:21 471

转载 关于在vs2013中配置opengl红宝书第八版环境

转自 http://blog.csdn.net/qq821869798/article/details/45247241本人刚开始学习opengl,买了一本opengl红宝书第八版,第一个例子研究了一段时间终于可以运行了,不知道有没有童鞋跟我遇到一样的问题。下面说说我怎么配置的:首先去 http://www.opengl-redbook.com/ 下载红

2016-09-14 12:32:10 1554

原创 cocos2dx 3.x内存管理源代码追踪

cocos2dx的内存源代码追踪

2016-09-05 11:54:02 1375

转载 如何优化cocos2d程序的内存使用和程序大小:第一部分

转自http://www.cnblogs.com/zilongshanren/archive/2012/12/09/2810017.html在我完成第一个游戏项目的时候,我深切地意识到“使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰”。而我刚开始接触cocos2d的时候,社区里面的人们讨论了一个非常有意义的话题:“请简单地讲述你认为新手cocos2d

2016-01-28 16:11:17 865

转载 LUA的堆栈问题

学习LUA也有一些时日了,个人认为对于LUA中的栈的理解很重要,嗯,写个小文章(真的很小) 如果你看了LUA的文档,那么就应该很清楚LUA与C交互数据时都是用到LUA中所谓的stack。那么当我调用lua_open函数之后栈是什么样的呢?空的(luaopen_base等会往栈上加进一些东西)。那么至于如何操作栈上的数据,我想官方文档上已经说得很清楚了,不过最初我对于栈的顺序有一些迷糊,所以就说

2015-09-02 18:07:30 517

原创 工作中遇到的排序问题

最近在用cocos2dx lua写客户端的模块,在写到背包中中遇到要排序的问题。背包中放有大量的道具,都是用listview来加载这些道具的视图,问题来了。这些道具需要按照顺序来一次排列,每个道具含有等级,颜色,位置。排列的优先级是等级>颜色>位置。服务器端发来的道具数据,都是无序的。开始的时候,我在想用神马插入排序,但是想想发现,它有三个要排列的属性。等级相同,看颜色大小,颜色大小再相同

2015-08-27 00:00:12 543

转载 Top 3000+ Python Modules

http://www.programcreek.com/python/index/module/list

2015-08-08 17:27:12 378

转载 游戏开发中常用的设计模式

使用设计模式来提高程序库的重复利用性是大型程序项目开发必须的。但是在“四人帮”的设计模式概述中提到了23种标准设计模式,伍但难以记住,而且有些设计模式更多的适用于应用程序开发,对游戏项目引擎设计并没有很多的利用价值。根据经验,精挑细选后,笃志在这里记录一些自认为有利用价值的设计模式,以便之后自己设计时使用。一:观察者Observer观察者的设计意图和作用是: 它将对象与

2015-08-01 11:43:45 3715

转载 C++位运算详解

位是数据存储的最小单位。在 计算机中的二进制数系统中,位,简记为b,也称为比特,每个0或1就是一个位(bit)。位操作详解我们先来看看位运算操作符:& (按位与)、| (按位或)、^ (按位异或)、~ (按位取反)、>> (按位右移)、1、&(按位与) 从概念上来讲,就是将参与运算的两个分量对应的每一位来做逻辑与运算,若两者都为真(等于1),则结果才为真(等于1)。否则都为

2015-07-26 22:02:04 352

转载 lua 中ipairs 和 pairs 区别

ipairs 和pairs在lua中都是遍历tbale的函数但是两者有区别1.pairs遍历table中的所有的key-vale 而ipairs会根据key的数值从1开始加1递增遍历对应的table[i]值a = {[1] = "a1", [2] = "a2", [3] = "a3", [5] = "a4", [6] = "a5",}for key, value in ipair

2015-07-25 13:24:27 492

转载 编程面试的10大算法概念汇总

本文由 伯乐在线 - 敏敏 翻译。未经许可,禁止转载!英文出处:programcreek.com。欢迎加入翻译小组。以下是在编程面试中排名前10的算法相关的概念,我会通过一些简单的例子来阐述这些概念。由于完全掌握这些概念需要更多的努力,因此这份列表只是作为一个介绍。本文将从Java的角度看问题,包含下面的这些概念:1. 字符串2. 链表3. 树4. 图5. 排序

2015-01-28 16:39:44 833

原创 关于php中运行shell脚本的权限问题

apache2和php安装好后,发现在php代码中无法运行shell脚本,原来是权限问题。Linux上很多东西,尼玛很多问题都涉及到权限问题。折腾了半天,原来还有www-data这个用户,所以在/etc/sudoers中加入www-data ALL=NOPASSWD:ALL,就可以在php中调用shell脚本了。

2015-01-22 16:59:38 2340

原创 cocos2dx 3.3 curl配置

今天看了curl,于是找test-cpp中的例子,例子上只要加入curl/curl.h头文件,就可以运行了。但是我在新建工程后,当执行到curl_easy_init()时就报错,头文件也加了。肯定是什么lib文件没有加载。找了一番,在工程:属性->连接器->输入:附加依赖性:加入libcurl_imp.lib。顺便也加入了websockets.lib,opengl32.lib,glew32.l

2015-01-21 16:13:08 3291

原创 cocos2dx 3.1.1 box2d.h : No such file or directory

由于要用到box2d做物理引擎,于是就在cocos2dx里面加入libBox2Dx,详细设置参考 http://blog.csdn.net/tonny_guan/article/details/39859577。    在vs2012下面编译都没有错误,但是安卓编译的时候就报错了,box2d.h : No such file or directory。搜索了半天,问题出在\proj.a

2015-01-03 22:20:59 1578

转载 do {…} while (0) 的用途汇总(欢迎补充)

在一些Linux内核和其它的开源代码中,我们经常看到像下面这样的代码:do{…}while(0)该代码片段并非循环,这样想想似乎使用do…while没有任何意义,那么为什么还要使用它呢?实际上,do{…}while(0)的用途并不仅仅是优化你的代码。经过一系列的调研和探索,我们总结出它的一些用途如下。1. 帮助定义复杂的宏以避

2014-12-26 02:44:27 518

原创 cocos2dx 3.1.1 box2d 添加debugDraw

cocos2dx 3.x之后把物理引擎都集成了,cocos2dx默认的封装是chipmunk。你可以改换成box2d,具体的操作http://guandongsheng.iteye.com/blog/2125016。我用了3.x新封装的物理引擎一段时间,感觉上手蛮容易的,简单的物理运动和碰撞还是可以应付的,但是重新封装的物理引擎感觉功能还是没有单独的box2d强大。所以原来想偷懒不学box2d

2014-12-17 22:51:27 1554 2

3D理论初步了解

3D理论的初步知识,对于想进入3D游戏开发的同学,是个不错的选择

2018-11-17

cocos2dx模仿人要慌绳子的物理小demo

cocos2dx模仿人要慌绳子的物理小demo,按住屏幕,左右来回移动,绳子也来回移动,松手之后绳子上的人物就抛出去,游戏结束。一个小demo,练习cc 3.x physics物理引擎

2014-12-09

cocos2dx 3.1.1版本白踩白块

这是coccos2dx 3.1.1简单写的白踩白块,作为自己练手的东西

2014-11-14

jquery实现简单的人物跑动

jquery实现简单的人物跑动,公初学者看看

2014-03-14

QLabel点击效果

可以让QLabel实现点击效果,实现点击后出现线条和颜色变化

2013-08-23

QStackedWidget做的一个小例子

这是我自己用到QStackedWidget做的一个小例子,对于初学者的一点帮助

2013-08-12

cc2430的开发环境

这是一套cc2430的完整开发环境,对用cc2430的用户是必需的

2012-03-21

空空如也

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

TA关注的人

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