自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 【UE4 + vscode + Xcode】编译c++项目

转载的文章,待实践Table Of ContentsGetting StartedCheck this webpage for the system requirements before you download the engine:(click the dropdown in the upper right to select 'MacOS')Make sure your OS version, processor, RAM and Video card meet the mini

2022-03-23 11:06:34 2199

原创 cocos2d纹理格式

为什么改变纹理颜色深度格式可以减少纹理内存占用?cocos2d默认加载纹理格式为RGBA8888,一个像素占用的内存是4*8bit,4byte;每一位通道精度为[0,256]。通过setDefaultAlphaPixelFormat方法 改变默认加载纹理的格式为RGBA4444,现在一个像素占内存 4*4bit = 2byte,但是相应的每一位通道精度为[0,16]。通道精度查...

2020-03-18 15:43:45 317

原创 spine 局部换装

spine 换装接口 setAttachment首先你在制作骨骼的时候,需要给一个 slot 设置多个 attachment,spine在一个时刻只会显示其中的一个 attachment,动态切换 attachment 调用SkeletonRenderer::setAttachment接口。这个接口自动绑定并未提供,社区版手动绑定提供给开发者使用。接口示例:(注:只有第一个参数时,...

2020-03-06 16:26:09 2993

原创 cocos2d-x 内存管理(关于AutoreleasePool的疑惑)

void Director::mainLoop(){ if (_purgeDirectorInNextLoop) { _purgeDirectorInNextLoop = false; purgeDirector(); } else if (_restartDirectorInNextLoop) { _re...

2019-12-04 11:02:15 243

原创 日常总结

创建一个新的sprite 常用方法 有三种:1、直接使用图片生成:create('hello.png');2、使用纹理生成:createWithTexture(texture);3、使用精灵帧缓存生成:createWithSpriteFrame( *spriteFrame);以上三种 生成sprite的方式:本质上最终都是先生成图片的纹理 即texture,再设置图片纹理,in...

2019-11-27 17:55:26 137

原创 cocos2d-x 和 cocoscreator屏幕适配

【屏幕适配 尺寸相关知识】c++核心代码:void GLView::updateDesignResolutionSize(){// _screenSize 就是屏幕分辨率 _designResolutionSize 传入的设计分辨率 if (_screenSize.width > 0 && _screenSize.height > 0 ...

2019-10-17 17:09:18 516

原创 cocos2d截图

jsvar captureNode = function (node) { var texture = new cc.RenderTexture(display.width, display.height, null, 0x88F0); texture.retain(); texture.setAnchorPoint(0, 0); texture.begin(...

2019-08-27 11:47:30 232 1

原创 基础复习

【http 请求中 post 与get的区别:】get提交的时候数据 放到URL后面,post放在HTTP协议 消息体中。【lua函数中:和.的区别】:function a:foo() //这里可以直接用self print(self.x)--输出a.x的值endfunction a.fool() //这里不能直接用self 必须 在参数里显示地传入sel...

2019-06-06 21:43:49 215

转载 cocos面试

https://www.cnblogs.com/xxiaoye/p/3950185.html1、Cocos2d-x是怎样实现跨平台?  AppDelegate 作为跨平台程序入口,在这之上做了另一层的封装,封装了不同平台的不同实现。比如我们通常认为一个程序是由 main 函数开始运行,那我们就去找寻,我们看到了在 proj.linux 目录下存在 main.cpp 文件。在main.cpp...

2019-04-10 17:48:03 3637 1

转载 cocos引擎重要类学习

转载地址:http://www.cnblogs.com/mmidd/p/3761290.htmlcopy一下总结Node类:Node 类在Cocos2d-x里地位显赫,它是显示对象(在手机等设备里显示的东西)的基类。 Node类是一个树状结构的一个结点,它最多只有一个父结点,可以有多个子结点,这些子结点存放在一个vector的数据结构中 创建Node对象不要使用new方法,而使用c...

2019-04-09 17:16:19 273

转载 C++中静态变量的声明与初始化

在C++中,类的静态成员(static member)必须在类内声明,在类外初始化,像下面这样class A{ private: static int count ; // 类内声明 }; int A::count = 0 ; // 类外初始化,不必再加static关键字 为什么?因为静态成员属于整个类,而不属于某个对象,如果在类内初始化,会导致每个对象都包含该静态成员,这是矛盾的。...

2018-10-15 15:15:07 6522 4

原创 cocos中的观察者模式 以及"点击事件"的注册和分发(个人理解)

一、控件的点击事件注册与完成在学习cocos引擎时,感觉触摸事件用的比较频繁。 于是对各种触摸事件做一些小小的总结:cocos中的控件(按钮,精灵,各种容器等)。在实际开发中发现他们都是可以添加点击事件的,可以通过设置setTouchEnabled()来开启点击,并通过addTouchEventListener()来注册点击事件回调方法。 个人理解到点击事件完成的原理是:cocos中的...

2018-09-14 12:05:09 709

转载 cocos2d-lua各种容器的使用

原文地址 :https://blog.csdn.net/u012278016/article/details/80255850一、使用ListView;local MainScene = class("MainScene", cc.load("mvc").ViewBase) function MainScene:onCreate() -- 测试ListView --[...

2018-09-13 18:28:54 2077 1

原创 关于Lua重要的元方法__index 和__newindex

元表和元方法是lua进行面向对象编程的很重要的方法,所以 花时间研究了一下。(元方法,是在设置元表之后在元表中查找的方法,使用之前一定要setmetatable 或者用getmetatable检查是否有元表)__index方法(主要是查找时)当调用一个table的索引值不存在时,lua会查找该table的__index方法,__index方法可以是函数,也可是一个table;举例:...

2018-09-13 17:52:00 894

原创 学习笔记 --lua 元表 metatable

元表的基本概念: metatable 元表是table 预定义的一系列操作。 例如 将两个table相加,Lua会先去检查这两个table是否有metatable。然后再检查metatable中是否有__add方法。如果其中一个有则按__add中的方法来执行,都没有则报错。-- Lua中的每一个值都有或者可以有一个元表。在我的理解中,元表可以是函数,也可以是自定义的属性(修正:在设置元表时一般...

2018-09-11 17:16:33 234

原创 学习笔记

定时器刷新 schedule在C++中,定时器参见:http://shahdza.blog.51cto.com/2410787/1542014 在Lua中,有两种方式:(1)self:scheduleUpdateWithPriorityLua(update, priority)> 参数一:刷新函数> 参数二:刷新...

2018-09-06 12:19:36 171

原创 游戏中常用到的事件分发机制

游戏中常常需要处理不同层之间的事件传递以及自定义用户数据,在不使用函数传递的时候,常常用到时间的监听与分发。第一种:简单事件监听(添加了全局函数,事件名和方法存在table中)local EventListener = {}local events = {}-- 相同的事件名只能注册一次function EventListener.registerEvent(eventName...

2018-09-05 12:27:38 1201

原创 cocos2dx-纹理缓存的理解

纹理在cocos2dx中显示一张图片,需要首先把它从文件读取到内存,再根据文件格式进行解码,转换为GPU可以识别的格式,这块可以被GPU识别的、内存中的图像数据,被称为纹理。纹理图集为了节省内存空间,减少大量琐碎的小文件的读取引发的多次I/O操作,将多个纹理拼成为一个大的纹理图,成为纹理图集。就像是给别人看你所有的照片,不需要一张张给,而是贴在一个大白纸上,一次性给别人。 在O...

2018-08-31 17:56:04 534

转载 关于节点渲染 图片大小对内存的消耗

游戏引擎底层的渲染方式都是基于OpenGL的,OpenGL载入纹理图片时,所用内存会自动扩张到2的N次方。比如,一张图片的大小为10*10像素,OpenGL会按照16*16的规格将图片载入到内存中;如果图片大小为64*65,那么就会按照64*128载入了,这就造成了内存的无必要开销。具体浪费了多少内存空间呢?我们这里需要了解一个概念:图片格式(Image format)。图片格式有RGBA...

2018-08-31 11:45:47 1411

原创 tableview的偏移量笔记

关于tableview偏移量的问题(讨论垂直滑动情况)self.tableView:getContentOffset().y 得到的是最后一个item距离原点(0,0)的垂直距离。这个值可正可负,取决于item的个数,如果个数为零,则:self.tableView:getContentOffset().y = self.tableSize.height  (为tableview的高...

2018-08-22 16:49:39 1641

转载 学习笔记

添加一个事件监听器到事件派发器 //Add listener _eventDispatcher->addEventListenerWithSceneGraphPriority(listener1, sprite1); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener1->clo...

2018-06-06 11:14:48 194

空空如也

空空如也

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

TA关注的人

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