- 博客(80)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 cocos2dx 面试题
1、Cocos2d-x是怎样实现跨平台? AppDelegate 作为跨平台程序入口,在这之上做了另一层的封装,封装了不同平台的不同实现。比如我们通常认为一个程序是由 main 函数开始运行,那我们就去找寻,我们看到了在 proj.linux 目录下存在 main.cpp 文件。在main.cpp 中 CCApplication::sharedApplication()–>run(); 这一句看起,这一句标志着, cocos2d-x 程序正式开始运行,现在定位到&nb
2021-11-02 13:53:53
2396
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 creator 面试
#1: 如何优化Cocos Creator 包体体积。1: 代码体积(引擎 + 业务逻辑代码setting.js)大头在引擎;引擎优化,非常简单,你只要把不要的模块去掉就可以了,你要知道哪些模块是占体积多的,比如物理引擎,能不用的模块,就不用, cocos creator 足够优秀的2D编辑器,可以替代tilemap, 去掉tilemap逻辑如图:业务逻辑代码: 一般我们也没法修改,你的业务逻辑差不多,但是,要注意一个 95%以上的同学,都会忽略的一个事实: setting.js, setting.
2021-11-02 13:51:27
6840
原创 使用chrome测试cocos creator内存泄漏问题
优化cocos creator的步骤: 1.首先使用webgl inspector插件查看游戏中是否存在不用的没有释放的资源 2.使用chrome的performance录制游戏过程,分析cpu的消耗及js的堆中内存情况,是不是js堆一直在变大,是否有内存泄漏 3.根据第二步,找到内存变大的部位,使用chrome的Memory进行内存快照,对比两次快照中对象的差异. js具有自动垃圾回收功...
2021-11-03 10:23:20
925
原创 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
1633
原创 creator pvr etc
概述 之前写过一个关于2DMMO优化的分享,有些人问到其中的压缩纹理要怎么做。其实实施起来很简单,很多看过cocos2dx的人都知道怎么做,这篇分享主要针对对这块不是太了解的新同学。 我假定对这篇分享有兴趣的同学都知道压缩纹理是什么,有什么好处和坏处。如果不大了解,可以先看一下pvr, etc相关的知识。 在手游中使用压缩纹理是很常见的需求,通常: IOS会使用PVR来压缩,IOS要求图片高宽必须是2的幂,且必须是正方形。Android会使用ETC1,由于E...
2021-11-02 12:05:34
351
原创 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
595
原创 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
418
原创 如何优化cocos2d-x手游内存
内存优化在游戏中,占用内存最多的无非就是图片资源,所以如果可以从图片资源上面进行优化,那么得到的收益将会是最大的。资源占用首先,先来看一下一张144X144的图片在物理磁盘上面的占用的存储空间大概是30KB,但是使用Cocos2d-x游戏引擎加载到内存里面,它需要占用至少256KB的大小。主要的原因有以下两个:Cocos2d-x在向手机申请纹理图片内存的时候,只能将图片的宽高尺寸以2的n...
2020-03-17 12:04:07
475
原创 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
294
转载 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
4619
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
5585
转载 lua教程九---使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包
本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1322.html ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您! 首先很多童鞋可能对于 cocos2dx-LuaProxy 不太熟悉,那
2017-08-01 17:50:11
346
转载 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
1073
转载 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
611
转载 lua教程六
本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2dx/1289.html ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您! Him 的Cocos2dx-Lua群中有童鞋出现
2017-08-01 17:43:46
395
转载 lua教程五
本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1282.html ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您! 上一篇中,向童鞋们介绍了如何自定义类binding到Lua中供给使用的
2017-08-01 17:40:29
393
转载 lua教程四
本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1259.html ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您! 此篇基本【COCOS2DX(2.X)_LUA开发之三】在LUA中使用自
2017-08-01 17:38:40
409
转载 lua教程三
本站文章均为 李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua-2/985.html ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!本篇做起来比较累,大家请参考最新篇【COCOS2DX-LUA 脚本开发之四】使用tolua++编译pkg,从而创建自定义类让Lua脚本使用此篇可能
2017-08-01 17:26:16
483
转载 lua教程二
本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/lua1/1235.html ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您! 从今天开始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有
2017-08-01 17:23:19
327
转载 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
2158
转载 Cocos2d-x:整体框架源码分析以及启动过程原理(win32)
原文地址:http://blog.csdn.net/jinble03/article/details/20006407引言:如果你想深入了解cocos2d-x的整个框架和运行流程,如果你想知道整个启动过程的细节,如果你想知道自己写的代码是在什么时候和在哪里被调用的,下面可以为你解答其中奥秘。对象:适合刚刚入门了cocos2d-x的初学者,编写并运行过简单的demo,并且想仔细探究其中的原理机制。1
2017-07-12 17:52:41
2735
转载 Cocos2dx3.10引擎的底层及内存管理机制
思考一个问题:cocos2dx游戏引擎的内存管理机制,为什么不使用C++的Shared_ptr这个看似完美的内存管理方案,而是引擎自身去实现一套机制?一、引擎启动 每个Cocos2d工程创建完,都会有AppDelegate/HelloWorldScene文件,AppDelegate是cocos2d引擎的入口类,引擎启动时首先会去加载AppDelegate类AppDelegate.
2017-07-12 17:22:14
1228
转载 Cocos2d-x与OpenGL底层的感想
1.为什么会卡顿这篇文章想写一些工作经常碰到的一些问题,为什么我做一个2D游戏,渲染100多个精灵就会卡。他们同样是做2D游戏,为什么渲染那么多东西帧数非常高,一点卡顿的样子都没有?这里我们排除一些逻辑因素,在相同游戏逻辑复杂度下。我每帧也没什么逻辑运算也还是卡,这里我们首先排除掉CPU对于游戏帧数瓶颈的限制。我们来谈下,为什么都是2D游戏,我渲染那么少的东西就会卡。其他游戏2D大作渲染那么多
2017-07-12 17:18:39
527
转载 资源管理器Assets Manager ---热更新
这篇文档将介绍Cocos2d-js 3.0的一个重量级新特性:资源管理器(仅支持JSB)。资源管理器是为游戏运行时的资源热更新而设计的,这里的资源可以是图片,音频甚至游戏脚本本身。使用资源管理器,你将可以上传新的资源到你的服务器,你的游戏会跟踪远程服务器上的修改,将新的资源下载到用户的设备上并在游戏中使用新的资源。就这样,全新的设计,新的游玩体验甚至全新的游戏内容都将立刻被推送到你的用户手上。重要的
2017-07-12 10:41:31
3764
转载 Cocos2d js 事件分发机制
简介游戏开发中一个很重要的功能就是交互,如果没有与用户的交互,那么游戏将变成动画,而处理用户交互就需要使用事件监听器了。总概:事件监听器(cc.EventListener) 封装用户的事件处理逻辑事件管理器(cc.eventManager) 管理用户注册的事件监听器,根据触发的事件类型分发给相应的事件监听器事件对象(cc.Event) 包含事件相关信息的对象如何使用呢? 首先需要创建一个事件监听器,
2017-07-11 15:13:02
324
转载 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
979
转载 【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
1091
转载 文章标题
在cocos2d-js 3.0beta中加入了一个新特性,在Android平台上我们可以通过反射直接在js中调用Java的静态方法。它的使用方法很简单:var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...)在callStaticMethod方法中,我们通过传入Ja
2017-07-11 14:46:56
167
原创 Android sdk content loader 0%的解决方案
百度师傅为你的电脑系统,选一个靠谱师傅!Eclipse在启动时,经常会碰到半天启动不起来的情况,罪魁祸首就是“Android sdk content loader 0%”,题主经常是受这玩意的百般折磨,大早上一来就被这扫了工作的激情,浪费了大把时间。Eclipse初始化不成功就干不了活,所以这事必须得解决。经过自己多次亲身测试,发现没有一种办法的百试百灵的,只有通过以下几种
2017-03-08 15:23:01
223
原创 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
348
原创 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
244
原创 苹果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
330
原创 跳转到AppStore评分
跳转到AppStore评分,有两种方法:一种是跳出应用,跳转到AppStore,进行评分;另一种是在应用内,内置AppStore进行评分。PS:appID在https://itunesconnect.apple.com中创建应用即可在应用界面获得1.跳出应用,跳转到AppStore,进行评分[[UIApplicationsharedApplication]openURL:[NS
2017-03-03 14:52:36
355
原创 英雄状态机
游戏在进行过程中,会涉及各种状态的切换,比如一个人有攻击,移动,站立三种状态,攻击可以和移动互相转换状态,移动和站立也可以互相转动状态,攻击和站立也可以互相转换动态,这就符合有限状态机的时候,当情况简单的时候,可以在一个类中进行这三种状态的转换,但是当情况复杂,那么可以每种状态一个类,再把拥有各种状态的类,也就是人这个对象,传到状态里,再进行操作。请看以下代码。[javascript]
2017-03-02 15:55:06
215
原创 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
489
原创 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
784
原创 字符串的拼接,转化,截取等处理
iOS:在obj-c中,字符串使用NSString定义成一个用于保存字符串的对象变量,而数字则使用原始类型float、int定义成一个变量,这是一个原生态的变量。这两种变量之间在开发时会需要相互转化。下面是常用的转化方法:NSString *tempA = @"123";NSString *tempB = @"456"; (miki西游 @mikixiyou 原
2017-02-17 14:29:01
2159
原创 ios支付,带本地服务器验证
直接上代码......h文件:[objc] view plain copy #import @interface SDKApplePay : NSObject { SKProductsRequest* _curProductRequest; NSMutableDictionary* _curActualProducts; //实际
2017-02-14 17:40:44
1499
1
原创 真机调试NSLog不打印日志信息
ios9以前的 如果不加图片的那句 在xcode8 会打印一些没用的日志 但是你的系统要是ios10 如果真机调试 加了这句就不会打印 要是删除了就能 图片:屏幕快照 2016-10-08 下午1.39.50.png
2017-02-10 13:56:31
1933
原创 没有证书真机运行
iOS 9更新以后,最期待的大概就是无需证书就能真机调试啦 忙着工作也没空去总结这些,今天在此分享一下下 首先准备: 1.xcode 更新到7以上 2. 自己有一个app id 也就是能登陆app store 的账号 操作阶段 打开xcode ,在菜单栏选择Xcode-Preferences->Account 左下角有添加按钮,此
2017-02-10 10:14:21
338
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人