自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 cocos2dx 面试题

1、Cocos2d-x是怎样实现跨平台?  AppDelegate 作为跨平台程序入口,在这之上做了另一层的封装,封装了不同平台的不同实现。比如我们通常认为一个程序是由 main 函数开始运行,那我们就去找寻,我们看到了在 proj.linux 目录下存在 main.cpp 文件。在main.cpp 中 CCApplication::sharedApplication()–>run(); 这一句看起,这一句标志着, cocos2d-x 程序正式开始运行,现在定位到&nb

2021-11-02 13:53:53 2369

原创 creator 面试

#1: 如何优化Cocos Creator 包体体积。1: 代码体积(引擎 + 业务逻辑代码setting.js)大头在引擎;引擎优化,非常简单,你只要把不要的模块去掉就可以了,你要知道哪些模块是占体积多的,比如物理引擎,能不用的模块,就不用, cocos creator 足够优秀的2D编辑器,可以替代tilemap, 去掉tilemap逻辑如图:业务逻辑代码: 一般我们也没法修改,你的业务逻辑差不多,但是,要注意一个 95%以上的同学,都会忽略的一个事实: setting.js, setting.

2021-11-02 13:51:27 6680

原创 使用chrome测试cocos creator内存泄漏问题

优化cocos creator的步骤: 1.首先使用webgl inspector插件查看游戏中是否存在不用的没有释放的资源 2.使用chrome的performance录制游戏过程,分析cpu的消耗及js的堆中内存情况,是不是js堆一直在变大,是否有内存泄漏 3.根据第二步,找到内存变大的部位,使用chrome的Memory进行内存快照,对比两次快照中对象的差异. js具有自动垃圾回收功...

2021-11-03 10:23:20 836

原创 c++面试题

1.new、delete、malloc、free关系相同点:它们都可用于申请动态内存和释放内存。区别:1)malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。2)New和delete会调用构造函数和析构函数,所以在创建对象时不能使用malloc和free。2.delete与 delete []区别delete只会调用一次析构函数,而delete[]会调用每一个成员的析构函数。在More Effective C++中有更为

2021-11-02 13:54:59 1607

原创 creator pvr etc

概述 之前写过一个关于2DMMO优化的分享,有些人问到其中的压缩纹理要怎么做。其实实施起来很简单,很多看过cocos2dx的人都知道怎么做,这篇分享主要针对对这块不是太了解的新同学。 我假定对这篇分享有兴趣的同学都知道压缩纹理是什么,有什么好处和坏处。如果不大了解,可以先看一下pvr, etc相关的知识。 在手游中使用压缩纹理是很常见的需求,通常: IOS会使用PVR来压缩,IOS要求图片高宽必须是2的幂,且必须是正方形。Android会使用ETC1,由于E...

2021-11-02 12:05:34 320

原创 js es6新特性

因为用到了,所以涉及一点,扫一下知识盲区。JS-ES6ECMAScript = ES = 是一套标准,类似于HTML5, JS是实现。兼容性#ES6,IE10+,Chrome,FireFox,移动端,NodeJS 这些都是兼容的。编译、转换:1、在线转换 browser.js = babel2、提前编译ES6都有啥变动?#变量函数数组字符串面向对象Promise, 用来做串行话的异步请求generator,把同步操作拆成异步操作模块化变量#var#1.可以.

2021-11-02 12:02:07 391

原创 js面试题

介绍JS的基本数据类型Undefined、Null、Boolean、Number、String 可以用typeof操作符来检测null和undefined的区别:null表示没有对象,即此处不应该有值 undefined表示缺少值,此处应该有一个值,但是还没有定义。介绍JS有哪些内置对象? Object是JavaScript中所有对象的父对象。数据封装类对象:Object、Array、Boolean、Number和String其他对象:Function、Arguments、Math、Dat..

2021-11-02 11:48:14 411

原创 如何优化cocos2d-x手游内存

内存优化在游戏中,占用内存最多的无非就是图片资源,所以如果可以从图片资源上面进行优化,那么得到的收益将会是最大的。资源占用首先,先来看一下一张144X144的图片在物理磁盘上面的占用的存储空间大概是30KB,但是使用Cocos2d-x游戏引擎加载到内存里面,它需要占用至少256KB的大小。主要的原因有以下两个:Cocos2d-x在向手机申请纹理图片内存的时候,只能将图片的宽高尺寸以2的n...

2020-03-17 12:04:07 439

原创 c++面试题2

1. 指出以下变量数据存储位置 全局变量int(*g_pFun)(int);g_pFun=myFunction;g_pFun存储的位置(A ) 为全局的函数指针 指向空间的位置( B) 所有函数代码位于TEXT段 函数内部变量 static int nCount; ( A) 静态变量总是在DATA段或BSS段中 函数内部变量 char p[]=”AAA”; p...

2020-03-17 11:45:44 274

转载 lua教程十一----C/C++与Lua之间进行数据函数交互以及解决“PANIC: unprotected error in call to Lua API (attempt t

版权声明:本文为博主原创文章,未经博主允许不得转载。本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1343.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!在使用Cocos2d-x 时候,难免需要C/C+

2017-08-01 17:56:47 4566 1

转载 lua教程十---使用Lua CJSON库进行encode与decode操作完成对Json数据转化

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1337.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 本篇介绍如何在lua中对数据进行json的encode与decode,

2017-08-01 17:52:03 5363

转载 lua教程九---使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1322.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 首先很多童鞋可能对于 cocos2dx-LuaProxy 不太熟悉,那

2017-08-01 17:50:11 325

转载 lua教程八----不用CCHttpClient而转用quick-cocos2d-x或cocos2dx-LuaProxy的Lua框架实现Lua-Http网络交互!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1314.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                      利用 cocos2dx-LuaProxy 也可以来实现lua

2017-08-01 17:47:56 1060

转载 lua教程七----解决( error in function ‘addChild’. argument #2 is ‘xx’; ‘CCNode’ expected. )异常报错

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2dx/1289.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 Him 的Cocos2dx-Lua群中有童鞋出现

2017-08-01 17:45:54 583

转载 lua教程六

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2dx/1289.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 Him 的Cocos2dx-Lua群中有童鞋出现

2017-08-01 17:43:46 365

转载 lua教程五

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1282.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 上一篇中,向童鞋们介绍了如何自定义类binding到Lua中供给使用的

2017-08-01 17:40:29 382

转载 lua教程四

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1259.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 此篇基本【COCOS2DX(2.X)_LUA开发之三】在LUA中使用自

2017-08-01 17:38:40 400

转载 lua教程三

本站文章均为 李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua-2/985.html          ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!本篇做起来比较累,大家请参考最新篇【COCOS2DX-LUA 脚本开发之四】使用tolua++编译pkg,从而创建自定义类让Lua脚本使用此篇可能

2017-08-01 17:26:16 474

转载 lua教程二

本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1235.html           ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!                 从今天开始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有

2017-08-01 17:23:19 298

转载 C++面试题

这些东西有点烦,有点无聊。如果要去C++面试就看看吧。几年前网上搜索的。刚才看到,就整理一下,里面有些被我改了,感觉之前说的不对或不完善。 1.求下面函数的返回值( 微软)int func(x) { int countx =0; while(x) { countx ++; x = x&(x-1); } return countx; }假定x = 9999。 答案:8思路:将x

2017-07-13 10:58:36 2083

转载 Cocos2d-x:整体框架源码分析以及启动过程原理(win32)

原文地址:http://blog.csdn.net/jinble03/article/details/20006407引言:如果你想深入了解cocos2d-x的整个框架和运行流程,如果你想知道整个启动过程的细节,如果你想知道自己写的代码是在什么时候和在哪里被调用的,下面可以为你解答其中奥秘。对象:适合刚刚入门了cocos2d-x的初学者,编写并运行过简单的demo,并且想仔细探究其中的原理机制。1

2017-07-12 17:52:41 2717

转载 Cocos2dx3.10引擎的底层及内存管理机制

思考一个问题:cocos2dx游戏引擎的内存管理机制,为什么不使用C++的Shared_ptr这个看似完美的内存管理方案,而是引擎自身去实现一套机制?一、引擎启动         每个Cocos2d工程创建完,都会有AppDelegate/HelloWorldScene文件,AppDelegate是cocos2d引擎的入口类,引擎启动时首先会去加载AppDelegate类AppDelegate.

2017-07-12 17:22:14 1157

转载 Cocos2d-x与OpenGL底层的感想

1.为什么会卡顿这篇文章想写一些工作经常碰到的一些问题,为什么我做一个2D游戏,渲染100多个精灵就会卡。他们同样是做2D游戏,为什么渲染那么多东西帧数非常高,一点卡顿的样子都没有?这里我们排除一些逻辑因素,在相同游戏逻辑复杂度下。我每帧也没什么逻辑运算也还是卡,这里我们首先排除掉CPU对于游戏帧数瓶颈的限制。我们来谈下,为什么都是2D游戏,我渲染那么少的东西就会卡。其他游戏2D大作渲染那么多

2017-07-12 17:18:39 511

转载 资源管理器Assets Manager ---热更新

这篇文档将介绍Cocos2d-js 3.0的一个重量级新特性:资源管理器(仅支持JSB)。资源管理器是为游戏运行时的资源热更新而设计的,这里的资源可以是图片,音频甚至游戏脚本本身。使用资源管理器,你将可以上传新的资源到你的服务器,你的游戏会跟踪远程服务器上的修改,将新的资源下载到用户的设备上并在游戏中使用新的资源。就这样,全新的设计,新的游玩体验甚至全新的游戏内容都将立刻被推送到你的用户手上。重要的

2017-07-12 10:41:31 3720

转载 Cocos2d js 事件分发机制

简介游戏开发中一个很重要的功能就是交互,如果没有与用户的交互,那么游戏将变成动画,而处理用户交互就需要使用事件监听器了。总概:事件监听器(cc.EventListener) 封装用户的事件处理逻辑事件管理器(cc.eventManager) 管理用户注册的事件监听器,根据触发的事件类型分发给相应的事件监听器事件对象(cc.Event) 包含事件相关信息的对象如何使用呢? 首先需要创建一个事件监听器,

2017-07-11 15:13:02 313

转载 cocos2d js 碰撞检测

本文由qinning199原创,转载请注明:http://www.cocos2dx.net/post/2231、cc.rectIntersectsRect(ra,rb) 判断两个矩形是否相交,若相交,返回true用例:var rectA = cc.rect(0,0,5,10);var rectB = cc.rect(4,9,5,10);var r = cc.rectIntersectsRe

2017-07-11 15:00:58 966

转载 【cocos2d-js教程】cocos2d-js http网络请求

在Cocos2d-js v3.0 RC2中,与Android上js调用Java一样,Cocos2d-JS也提供了在iOS和Mac上js直接调用Objective-C的方法,示例代码如下: var ojb = jsb.reflection.callStaticMethod(className, methodNmae, arg1, arg2, .....);在jsb.reflection.ca

2017-07-11 14:49:30 1077

转载 文章标题

在cocos2d-js 3.0beta中加入了一个新特性,在Android平台上我们可以通过反射直接在js中调用Java的静态方法。它的使用方法很简单:var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...)在callStaticMethod方法中,我们通过传入Ja

2017-07-11 14:46:56 157

原创 Android sdk content loader 0%的解决方案

百度师傅为你的电脑系统,选一个靠谱师傅!Eclipse在启动时,经常会碰到半天启动不起来的情况,罪魁祸首就是“Android sdk content loader 0%”,题主经常是受这玩意的百般折磨,大早上一来就被这扫了工作的激情,浪费了大把时间。Eclipse初始化不成功就干不了活,所以这事必须得解决。经过自己多次亲身测试,发现没有一种办法的百试百灵的,只有通过以下几种

2017-03-08 15:23:01 220

原创 iOS时间比较

方法已封装!日期格式请传入:2013-08-05 12:12:12;如果修改日期格式,比如:2013-08-05,则将[df setDateFormat:@"yyyy-MM-dd HH:mm:ss"];修改为[df setDateFormat:@"yyyy-MM-dd"];-(int)compareDate:(NSString*)date01 withDate:(NSString*)d

2017-03-07 11:11:07 336

原创 js 使用技巧

1,使用!!操作符转换布尔值    对于变量使用!!variable做检测,只要变量为:0,null," ",undefined,NaN都返回false,反之返回true。    function Account(cash){this.cash = cash;this.hasMoney = !!cash;}var account =  new Account(100.5

2017-03-03 18:11:52 242

原创 苹果Mac OS X显示隐藏文件的方法

打开“终端”,根据自己的版本选择命令早期的OS X(10.6~10.8)系统可以使用如下两条命令来开始或者关闭系统隐藏文件的显示:defaults write com.apple.Finder AppleShowAllFiles Yes && killall Finder //显示隐藏文件defaults write com.apple.Finder AppleShowAl

2017-03-03 14:53:33 320

原创 跳转到AppStore评分

跳转到AppStore评分,有两种方法:一种是跳出应用,跳转到AppStore,进行评分;另一种是在应用内,内置AppStore进行评分。PS:appID在https://itunesconnect.apple.com中创建应用即可在应用界面获得1.跳出应用,跳转到AppStore,进行评分[[UIApplicationsharedApplication]openURL:[NS

2017-03-03 14:52:36 331

原创 英雄状态机

游戏在进行过程中,会涉及各种状态的切换,比如一个人有攻击,移动,站立三种状态,攻击可以和移动互相转换状态,移动和站立也可以互相转动状态,攻击和站立也可以互相转换动态,这就符合有限状态机的时候,当情况简单的时候,可以在一个类中进行这三种状态的转换,但是当情况复杂,那么可以每种状态一个类,再把拥有各种状态的类,也就是人这个对象,传到状态里,再进行操作。请看以下代码。[javascript]

2017-03-02 15:55:06 206

原创 cocos2d js接入有米广告-ios版本

1 引入有米的sdk在iOS文件夹下面,右键单击,选择 add files to ...注意弹出界面有一个Add folders: Create groups         create folder references选择Create groups,否则容易出错2 编写静态方法在AppController.h里面@interface和@end之间添加方法声明

2017-03-02 15:50:28 485

原创 cocos2d js scrollView

var scrollView = new ccui.ScrollView(); //设置方向 scrollView.setDirection(ccui.ScrollView.DIR_VERTICAL); //触摸的属性 scrollView.setTouchEnabled(true); //弹回的属性 // scrollView.setBounceE

2017-03-02 15:44:45 754

原创 字符串的拼接,转化,截取等处理

iOS:在obj-c中,字符串使用NSString定义成一个用于保存字符串的对象变量,而数字则使用原始类型float、int定义成一个变量,这是一个原生态的变量。这两种变量之间在开发时会需要相互转化。下面是常用的转化方法:NSString *tempA = @"123";NSString *tempB = @"456"; (miki西游 @mikixiyou 原

2017-02-17 14:29:01 2145

原创 ios支付,带本地服务器验证

直接上代码......h文件:[objc] view plain copy #import     @interface SDKApplePay : NSObject  {      SKProductsRequest* _curProductRequest;      NSMutableDictionary* _curActualProducts;  //实际

2017-02-14 17:40:44 1458 1

原创 真机调试NSLog不打印日志信息

ios9以前的 如果不加图片的那句 在xcode8  会打印一些没用的日志 但是你的系统要是ios10 如果真机调试 加了这句就不会打印 要是删除了就能 图片:屏幕快照 2016-10-08 下午1.39.50.png

2017-02-10 13:56:31 1906

原创 没有证书真机运行

iOS 9更新以后,最期待的大概就是无需证书就能真机调试啦  忙着工作也没空去总结这些,今天在此分享一下下   首先准备:  1.xcode 更新到7以上  2. 自己有一个app id  也就是能登陆app store 的账号  操作阶段 打开xcode ,在菜单栏选择Xcode-Preferences->Account  左下角有添加按钮,此

2017-02-10 10:14:21 326

空空如也

空空如也

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

TA关注的人

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