![](https://img-blog.csdnimg.cn/20201218152345869.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
cocos2dx原理
文章平均质量分 86
分享cocos2dx引擎各个模块的原理
Lampard杰
/*2017年4月6日*/ 我开始了我的coding之路,希望毕业之后回看这里,能达到理想的目标。
/*2020年3月11日*/ 我正式参与工作,在君海成为一个游戏开发者。希望自己保持初心,keep learning,keep coding。
/*2021年3月25日*/ 人生第一次跳槽去到了网易游戏,希望尽快适应这个环境,尽快成为技术更棒的人。
展开
-
【游戏客户端】大话slg玩法架构(全)
今天给大家分享SLG玩法的实现架构, 其实现思路可以划分为四个部分,分别是滚动容器基类的搭建,背景大地图的实现,建筑的生成与刷新,以及玩法优化预加载相关,(●'◡'●)全文6000字有很多硬核内容,欢迎进来踩踩~~原创 2024-07-16 17:22:27 · 792 阅读 · 0 评论 -
【游戏客户端】大话slg玩法架构(四)加载逻辑
今天我们继续给大家分享SLG玩法的实现架构, 其实现思路可以划分为四个部分,分别是滚动容器基类的搭建,背景大地图的实现,建筑的生成与刷新,以及玩法优化预加载相关,(●'◡'●)本文分享的内容是最后的预加载流程~~原创 2024-07-16 16:33:03 · 748 阅读 · 0 评论 -
【游戏客户端】大话slg玩法架构(三)建筑控件
上一篇文章我们分享了SLG背景大地图的实现:【游戏客户端】大话slg玩法架构(二)背景地图,现在我们接着分享玩法的重中之重!!!建筑控件的实现逻辑原创 2024-07-12 16:52:56 · 798 阅读 · 0 评论 -
【游戏客户端】大话slg玩法架构(二)背景地图
上一篇文章我们分享了滚动基类的实现:【游戏客户端】大话slg玩法架构(一)滚动基类,现在我们接着分享背景地图的实现逻辑~~原创 2024-07-11 11:01:25 · 900 阅读 · 0 评论 -
【游戏客户端】大话slg玩法架构(一)滚动基类
今天主要分享大话SLG玩法滚动基类的实现思路~~感谢阅读,下一篇文章将会介绍背景地图相关原创 2024-07-09 00:59:23 · 1088 阅读 · 0 评论 -
【游戏客户端】大话版本slg玩法正式上线~~
介绍大话最新上线的帮派slg玩法~~下一篇文章将介绍这个玩法玩法实现流程噢!!!原创 2024-07-07 15:51:53 · 791 阅读 · 0 评论 -
【游戏客户端】制作你玩我猜Like玩法
大家好,我是Lampard猿奋~~ “你画我猜”相信大家都不陌生,当初这款小游戏可谓茶余饭后必玩之选,风头一时无二。今天要和大家分享如何实现一个你玩我猜Like的玩法。原创 2023-08-06 14:48:00 · 634 阅读 · 0 评论 -
【游戏客户端】如何实现环形进度条
今天主要是分享如何在cocos制作一个环形的进度条原创 2023-01-24 15:25:13 · 2321 阅读 · 0 评论 -
【游戏客户端】制作节奏大师Like音游(全)
大家好,我是Lampard猿奋~~ “节奏大师”相信大家都不陌生,当初这款音游可是风靡全国,风头一时无二。今天要和大家分享如何实现一个节奏大师Like的音游玩法原创 2022-08-06 13:01:05 · 2577 阅读 · 6 评论 -
【游戏客户端】制作节奏大师Like音游(下)
大家好,我是Lampard猿奋~~ “节奏大师”相信大家都不陌生,当初这款音游可是风靡全国,风头一时无二。今天要和大家分享如何实现一个节奏大师Like的音游玩法原创 2022-08-05 10:42:47 · 667 阅读 · 0 评论 -
【游戏客户端】制作节奏大师Like音游(上)
“节奏大师”相信大家都不陌生,当初这款音游可是风靡全国,风头一时无二。今天要和大家分享如何实现一个节奏大师Like的音游玩法原创 2022-08-04 12:13:19 · 2020 阅读 · 0 评论 -
【游戏客户端】剧情系统
一个优秀的剧情设计能够让玩家更好的了解游戏的世界观,致使玩家能够沉浸式体验游戏。今天要和大家分享如何实现游戏中的剧情系统原创 2022-05-06 16:37:45 · 2311 阅读 · 0 评论 -
【游戏客户端】聊天&排行榜&朋友圈系统实现机制
相信大家在游戏过程中肯定对“聊天”,“排行榜”,“朋友圈”这些系统很熟悉。然而这些个看起来复杂的系统,实现起来和制作一个商业化充值活动其实是没有太大差别的。今天我就和大家从一个制作一个简单的商业化活动,演化到实现“聊天”,“排行榜”,“朋友圈”这些复杂UI系统~~原创 2022-01-17 16:27:43 · 3426 阅读 · 0 评论 -
【游戏客户端】富文本实现“部分区域”点击事件
【游戏客户端】富文本实现“部分区域”点击事件 之前的博客中,我和大家分享了如何做:商业化的充值活动 :【商业化充值活动博客】 抽卡系统:【抽奖,抽卡系统博客】 装备系统:【装备系统博客】 红点系统:【红点系统博客】 商店&拍卖系统:【商店&拍卖系统】 UI环绕特效:【UI环绕特效】 实现刮刮乐效果:【实现刮刮乐效果】 实现卡牌翻转效果:【实现卡牌反转效果】 实现剧情对话:【实现剧情对话效果】 实现小地图系统:【小地图系统】 实现裁剪效果:【实现游戏裁...原创 2022-01-14 16:21:36 · 3240 阅读 · 0 评论 -
【游戏客户端】实现游戏裁剪效果
【游戏客户端】实现游戏裁剪效果 之前的博客中,我和大家分享了如何做:商业化的充值活动 :【商业化充值活动博客】 抽卡系统:【抽奖,抽卡系统博客】 装备系统:【装备系统博客】 红点系统:【红点系统博客】 商店&拍卖系统:【商店&拍卖系统】 UI环绕特效:【UI环绕特效】 实现刮刮乐效果:【实现刮刮乐效果】 实现卡牌翻转效果:【实现卡牌反转效果】 实现剧情对话:【实现剧情对话效果】 实现小地图系统:【小地图系统】 还记得以前玩毒奶粉的时候...原创 2021-12-06 20:58:05 · 604 阅读 · 1 评论 -
【游戏客户端】实现剧情对话效果
【游戏客户端】实现剧情对话效果 之前的博客中,我和大家分享了如何做:商业化的充值活动 :【商业化充值活动博客】 抽卡系统:【抽奖,抽卡系统博客】 装备系统:【装备系统博客】 红点系统:【红点系统博客】 商店&拍卖系统:【商店&拍卖系统】 UI环绕特效:【UI环绕特效】 实现刮刮乐效果:【实现刮刮乐效果】 实现卡牌翻转效果:【实现卡牌反转效果】 今天和大家分享一下如何制作剧情对话效果,游戏中常见的对...原创 2021-11-14 19:09:40 · 4434 阅读 · 0 评论 -
【游戏客户端】实现卡牌翻转效果
【游戏客户端】实现卡牌翻转效果 之前的博客中,我和大家分享了如何做:商业化的充值活动 :【商业化充值活动博客】 抽卡系统:【抽奖,抽卡系统博客】 装备系统:【装备系统博客】 红点系统:【红点系统博客】 商店&拍卖系统:【商店&拍卖系统】 UI环绕特效:【UI环绕特效】 实现刮刮乐效果:【实现刮刮乐效果】 最近在玩三国志战略版的时候,抽武将看到了其“卡牌翻转”的效果,感觉很神奇,于是乎研究了一下如何...原创 2021-11-03 19:58:18 · 2633 阅读 · 0 评论 -
【游戏客户端】实现刮刮乐效果
【游戏客户端】实现刮刮乐效果 大家好,我是Lampard猿奋~~久违的来更新这个系列的博客 之前的博客中,我和大家分享了如何做:商业化的充值活动 :【商业化充值活动博客】 抽卡系统:【抽奖,抽卡系统博客】 装备系统:【装备系统博客】 红点系统:【红点系统博客】 商店&拍卖系统:【商店&拍卖系统】 UI环绕特效:【UI环绕特效】今天要给大家分享实现UI控件环绕特效的思路...原创 2021-10-31 23:11:37 · 2267 阅读 · 0 评论 -
【游戏客户端】UI控件环绕特效
【游戏客户端】UI控件环绕特效 大家好,我是Lampard猿奋~~久违的来更新这个系列的博客 之前的博客中,我和大家分享了如何做:商业化的充值活动 :【商业化充值活动博客】 抽卡系统:【抽奖,抽卡系统博客】 装备系统:【装备系统博客】 红点系统:【红点系统博客】 商店&拍卖系统:【商店&拍卖系统】 今天要给大家分享实现UI控件环绕特效的思路(1)懒惰模式 如...原创 2021-10-19 15:36:31 · 1312 阅读 · 0 评论 -
【cocos2dx】之RenderTexture实现截图
cocos2dx之RenderTexture 大家好,我是Lampard 今天与大家探讨一下cocos中实现截图所使用到的类RenderTexture(一)使用RenderTexture实现截图功能 cocos实现截图可以通过两种方式。第一种就是今天将要介绍的使用renderTexture类去实现,第二种是利用cocos2dx在3.2版本之后给我们提供的utils:captureScreen()...原创 2021-04-25 16:21:07 · 1655 阅读 · 0 评论 -
cocos2dx之内存泄漏解决机制
cocos2dx之内存泄漏解决机制 大家好,我是Lampard 今天与大家探讨一下cocos中发生内存泄漏的解决机制 c++层面的内存泄漏解决 写项目难免会有内存泄漏情况,对于c++层面的代码来说我们可以使用vld这个ku来进行内存泄漏的判断。具体操作如下:1.首先下载安装 vld,下载后双击安装2.在项目c++目录加载链接vld库 3.找到程序入口main.cp...原创 2021-03-01 14:10:34 · 883 阅读 · 1 评论 -
cocos2dx的网络链接方式
cocos2dx的网络链接方式cocos使用httpClient发送请求游戏开发的过程中难免需要和服务端进行数据交互,我们可以利用cocos给我们封装好的httpClient类来通过http协议进行数据的交互。httpClient是一个单例的类,我们可以通过HttpClient:getInstrance()来获取这个单例。数据的交互分为请求request和返回response两个部分,作为客户端来说我们首先要把玩家...原创 2020-11-23 17:55:47 · 1016 阅读 · 1 评论 -
cocos2dx调度器schedule
cocos2dx调度器scheduleCocos2d-Lua 引擎中的调度器是用来周期执行某个函数或延时执行某个函数的。功能类似于定时触发器,但它又与游戏紧密结合。schedule调度器利用了timer类来保存了调度任务的 时间线,重复次数,事件间隔,延迟等数据。timer把相关信息以结构体的形式存进了双向链表_hashForTimers中每帧更新后Timer做事件累加,根据时间线去触发或者取消更新回调。每帧更新每帧更新...原创 2020-11-16 17:05:00 · 741 阅读 · 0 评论 -
cocos2dx事件分发机制
cocos2dx事件分发机制事件源:场景中的对象,每个Node节点都可以触发事件 事件监听者:监听器EventListener,负责监控对象是否触发某个事件, 如果触发就执行相应的回调函数。 事件分发者:事件分发器EventDispatcher,负责分配事件监听器给对象。在游戏启动时,就会创建一个默认的EventDispatcher对象 事件类型enum class Type{ TOUCH, /...原创 2020-11-16 17:01:45 · 472 阅读 · 0 评论 -
cocos2dx的屏幕适配方案
cocos2dx的屏幕适配方案常规做法:pEGLView::sharedOpenGLView()->setDesignResolutionSize()通过导演类调用OpenGl函数 设置屏幕的配置方案里面接五个参数KResolutionExactFit:拉伸变长宽比,全屏显示kResolutionFixedHeight:不变长宽比(保持传入的设计分辨率高度不变,根据屏幕分辨率修正设计分辨率的宽度),全屏但是有...原创 2020-11-16 17:00:07 · 875 阅读 · 0 评论 -
cocos2d-x程序的开始与结束流程
cocos2d-x程序的开始与结束流程我们知道,无论是cocoslua,cocos2dx,还是cocosCreator,程序总是从AppDelegate到director中调用mainloop进入主循环开始的。那么cocos引擎中是如何结束整个游戏进程的呢?在正个mainloop过程中,引擎首先会进行一次是否结束游戏进程的判断操作,那我们看看这个参数是什么时候被赋值的我们查询后发现,只有导演类调用end()函数的时候才会...原创 2020-11-16 16:57:48 · 633 阅读 · 0 评论 -
cocos2dx的cache缓存区
cocos2dx的cache缓存区TextureCache:加载大纹理图如背景图片(pkm,png)Director::getInstance()->getTextureCache()->addImage(filename) // 存入Texture2D *texture = Director::getInstance()->getTextureCache()->getTextureForKey(t...原创 2020-11-16 16:55:02 · 508 阅读 · 0 评论 -
cocos2dx的渲染机制
cocos2dx的渲染机制3.x之前是通过调用每一个node的draw方法来使用OpenGL ES代码进行渲染,3.x之后则使用了新的渲染机制,统一把所有需要渲染的node安放在一个队列中再进行自动批处理渲染。主线程每一帧在Application::getInstance()->run()的过程中会调用mainloop()方法,mainloop()方法中会调用一次drawScene()方法方法名是drawScene...原创 2020-11-16 16:52:57 · 760 阅读 · 0 评论 -
cocos2dx的内存管理方式
cocos2dx的内存管理方式cocos是通过引用计数方式管理内存,主要通过两种方式实现1.手动管理内存当我们创建一个实例时,基类Ref里面有一个叫referenceCount的参数就会置1,它代表我们引用的次数,使用retain()函数可以使refernceCount+1,release()函数会使referenceCount-1,当这个参数减至0时会被引擎delete掉释放内存2.自动回收池有...原创 2020-11-16 16:43:21 · 428 阅读 · 1 评论 -
【游戏客户端】界面异步加载
【游戏客户端】界面异步加载 大家好,我是Lampard~~ 上周和大家预告过在完成一个装备与系统的过程中,是应该使用异步加载的方法。不然一打开界面,几百个装备被同时创建那酸爽是不敢相信。【浅谈装备系统】那么今天就和大家分享一下主要的实现方法。(一)先加载界面显示的,后加载剩余的 当我们和美术确认好界面后,我们可以提前知道一个界面是需要显示多少行,多少个具体的i...原创 2020-11-02 15:22:42 · 399 阅读 · 0 评论 -
【游戏客户端】应届入职半年有感
【游戏客户端】入职半年有感 大家好,我是Lampard~~ 时光苒在如白驹过隙,眨眼间半年的青葱已经从指间流去。今天我刚好入职半年,我认为很有必要记录下来,和大家分享一下我半年的收获。温故之余希望给怀着游戏梦的同学一些参考,也希望有一些前辈大佬不吝指点。 (本篇文章不会涉及太多的代码技术,纯个人经历分享望周知~~) 半年前刚入职的情形还清晰的印在脑中,一方面因为自己的技术不足而焦...原创 2020-09-11 12:01:52 · 883 阅读 · 6 评论 -
cocos2dx之利用视差效果制造简单动画
cocos2dx之利用视差效果制造简单动画 之前和大家分享过,如何实现视差效果。不外乎就是利用前中后背景的速度不一致,导致的视觉差异。 我们市面上很多的跑酷类游戏都是利用这个原理让背景图无限循环。 →→视察效果原理 今天就直接上一个例子,告诉大家如何实现这个功能。 ...原创 2020-07-08 23:16:53 · 381 阅读 · 0 评论 -
如何判定是否跨天
游戏活动如何判定是否跨天 大家好,我是Lampard 今天与大家探讨一下游戏活动如何判定跨天 在一款游戏里面难免会出现跨天的活动,比如说每日任务啊,比如说每天的累充啊等等 当过0点的时候我们就要刷新用户界面,那么我们该如何判定是否跨天呢? (一)某个朋友说 有人说:那还不简单,当0点的时候,让服务端下发一个协议,然后利用观察者模式,在协议下发的同时触发事件,那我们...原创 2020-07-07 21:26:09 · 1691 阅读 · 5 评论 -
游戏项目开发中的“观察者模式”
游戏项目开发中的“观察者模式” 大家好,我是Lampard 今天与大家探讨一下游戏开发项目中的观察者模式 在进入主题之前我想先问问大家,我们平时在开发游戏时怎么实现人机交互的呢? 无疑就是响应用户的点击事件,我们可以对某一个结点来声明一个监听事件,如果用户点击它那么就实现响应的事件。 ...原创 2020-05-04 21:15:49 · 419 阅读 · 0 评论 -
【游戏客户端面试题干货】--2020年最新游戏客户端面试干货(c#篇)
【游戏客户端面试题干货】--2020年度最新游戏客户端面试干货( C#篇 ) 大家好,我是Lampard~~ 经过春招一番艰苦奋战之后,我终于是进入了心仪的公司。 今天给大家分享一下我在之前精心准备的一套面试知识。 今天和大家分享的是C#的面试题 本人亲测80%的引擎相关题目都是围绕着我总结出来的知识点提出的 。一.结构和类的区别1.结...原创 2020-03-24 19:25:16 · 1612 阅读 · 0 评论 -
【游戏客户端面试题干货】--2021年最新游戏客户端面试干货(lua篇)
【游戏客户端面试题干货】--2020年度最新游戏客户端面试干货( lua篇 ) 大家好,我是Lampard~~ 经过春招一番艰苦奋战之后,我终于是进入了心仪的公司。 今天给大家分享一下我在之前精心准备的一套面试知识。 今天和大家分享的是lua的面试题 本人亲测80%的引擎相关题目都是围绕着我总结出来的知识点提出的 。 配合我博客里面的lua系列一...原创 2020-03-19 21:06:32 · 8983 阅读 · 5 评论 -
【cocos2dx面试题干货】--2021年最新cocos2dx面试干货(引擎篇)
【cocos2dx面试题干货】--2020年度最新cocos2dx面试干货(引擎篇 ) 大家好,我是Lampard~~ 经过春招一番艰苦奋战之后,我终于是进入了心仪的公司。 今天给大家分享一下我在之前精心准备的一套面试知识。 由于我面试的岗位是cocos2dx的开发岗,今天就先给大家分享一下引擎方面的知识。 本人亲测80%的引擎相关题目都...原创 2020-03-18 13:32:20 · 12963 阅读 · 2 评论 -
cocos2dx之如何实现场景过度效果TransitionScene
cocos2dx之实现场景过度效果TransitionScene 大家好,我是Lampard 今天与大家探讨一下场景之间切换时的特效类TransitionScene类 如何让场景之间切换时更加炫酷?各种场景切换特效很想拥有?现在,它来啦!!!...原创 2020-02-29 00:39:13 · 798 阅读 · 0 评论 -
cocos2dx之如何实现视差效果
cocos2dx之实现视差效果 大家好,我是Lampard 今天与大家探讨一下简单的实现视差效果 首先什么是视差效果? 视差效果是游戏中非常流行的一种效果,在视差效果中,前景的速度移动得比较快,后景的视差移动得比较慢,从而造成立体感和运动错觉。什么?没听懂?简单来说就...原创 2020-02-28 01:05:09 · 493 阅读 · 0 评论 -
cocos2dx多个动作并列执行或按照顺序执行
cocos2dx多个动作并列执行或按照顺序执行大家好,我是Lampard我在【捕鱼达人】游戏开发的时候,遇到了不知道如何让鱼类的多个动作同时执行的问题所以今天为了解决这个问题写下了这篇博客(一)顺序执行Sequence 首先是顺序执行,我们的鱼类是在游戏层的时候利用计时器调用回调函数生成的。在鱼类生成了之后,它就会向着屏幕的另一方向...原创 2019-04-23 22:43:36 · 2899 阅读 · 0 评论