首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Cocos2d-x游戏开发】浅谈游戏中坐标系

3.世界坐标系   世界坐标系又称绝对坐标系,游戏开发中概念,建立了描述其他坐标系所需要参考标准。我们可以用世界坐标系来描述其他坐标系位置。   ...4.节点坐标系    节点坐标系又称本地坐标系,特定节点相关联坐标系。每个节点都有独立坐标系。当节点移动或者改变方向时候,和该节点关联坐标系(子节点)也将随之移动或者改变方向。...Cocos2d-x一个非常重要概念,每一个Node都有一个锚点(anchor point),锚点指定了纹理图像和所在节点原点(即position所表示点)重合位置。...例如将某个精灵图像位置设为(50,50)时候,该精灵图像几何中心位置默认情况下也应该是(50,50)。...需要注意,这两种转换都是基于当前节点坐标,并且不考虑锚点,而一个节点position所使用坐标基于父节点坐标的,因此,我们要把Node位置转换到世界坐标系中应该调用父节点convertToWorldSpace

1.2K40

Cocos2d-xCocos2d-x精灵性能优化

Cocos2d-x精灵性能优化-使用纹理图集和精灵帧缓存 使用纹理图集 纹理图集(Texture)也称为精灵表(Sprite Sheet) 使用纹理图集优点: 1、减少文件读取次数,读取一张图片比读取一推小文件要快...2、减少OpenGL ES绘制调用并且加速渲染 OpenGL ES 1.1仅仅能够使用2n次幂大小图片(即宽度或者高度2、4、8、64…)。...4、Cocos2d-x全面支持Zwoptex和TexturePacker,所以创建和使用纹理图集很容易 image.png 这样一张大图,可以让美工来完成,但是记得需要记下坐标,图集中小图左上角坐标是多少...将一个图读到精灵帧缓存中,同时也会加载到纹理缓存中 3、动画缓存(AnimationCache) 动画缓存主要用于精灵动画,精灵动画中每一帧从动画缓存中获取 SpriteFrameCache...把这三个精灵放到一个场景中 利用精灵帧缓存完成 image.png 背景没有放到精灵图集中去,这是因为背景需要透明 bool HelloWorld::init() { if

54820
您找到你想要的搜索结果了吗?
是的
没有找到

Cocos2d-x】Sprite精灵类-创建Sprite精灵对象

精灵Cocos2d-x地位就像一场电影中主角,男主角/女主角,一场电影中灵魂所在。...还有些精灵和物理引擎有关,有一些物理特效。 本章讲精灵只是一般意义上精灵。...图片读入到计算机里,需要对图片进行解码。最后,在计算机放东西,就可以叫做纹理! 实际上,纹理就是由图片或者计算机本身用绘图工具绘画出来对象。...这个东西本身最后目的是为了放在图片上面,这个过程叫纹理贴图。 在实际中,我们有时候纹理叫成图片或者图片叫成纹理。...对于第二种图片,我们可以先读到内存里,形成一个纹理对象,然后从这个纹理对象中截图 从里面裁剪出来来创建精灵对象。 裁剪有两种方式,一通过纹理缓存来裁剪。也可以从大图文件直接进行裁剪。

75610

Cocos2d-x初学者教程

如果您不这样做,那么每次您运行该应用程序时,您随机数都会相同。 感觉不会很随意,吗?...从原点到触摸位置x和y偏移会创建一个小三角形; 您只需要制作一个具有相同比率大三角形即可,并且您知道要使其中一个端点不在屏幕上。 利用Cocos2d-x随附矢量数学例程,可以轻松执行这些计算。...因此,您需要一些代码来检测弹丸何时与目标相交。 关于Cocos2d-x一件好事内置了一个物理引擎! 物理引擎不仅对于模拟逼真的运动非常有用,而且对于检测碰撞也非常有用。...注意:您可能想知道这种奇特语法是什么Cocos2d-x类别只是一个32位整数。 此语法将整数中特定位设置为代表不同类别,最多给您32种可能类别。...\文件夹下SimpleGame.sln,然后编译运行,前提需要配置好Cocos2d-x 3.17.2开发环境,关于环境搭建可以参考之前写一篇博客:Win10+Python2.7.14+cocos2d-x

6.3K21

cocos2d-x for android:士兵听我命令移动

上一篇文章讲述了利用cocos2d-x构建精灵动画效果,今天打算以此为引子,创建一个在移动时同时指挥角色到我手指触摸移动地点,那么就开始吧。...通过上面的代码即可以将一个plist序列图加载进缓存了,你要做就是将这些缓存数据拿出来操作。 动画缓存 上面己经将数据加载进缓存了,可以使用其中那些节点来制作动画缓存了。...,但你会发现,你想让精灵移动时候不是一整张图片移动,而是边移动边两只脚在走路移动,就像是我们人类一样,走着过去,而不是幽灵飘过去,那么,我们要做些什么呢?...动作移动 其实,很简单 ,只要记住要精灵移动时候即:MoveTo时,同时再让精灵执行一个动作即walk动作,代码如下: sprite->stopAllActions(); //因为Touch...action,这个目前还不清楚什么

49220

学习 PixiJS — 精灵状态

一个 PNG 图像字符串 一个Pixi 纹理对象 纹理图集帧 id 数组 一个 PNG 图像字符串数组 一个 Pixi 纹理对象数组 如果你为 sprite 方法提供一个数组,它将返回一个动画精灵...第二个参数 xPosition 和 第三个参数 yPosition 表示创建精灵 x 和 y 坐标。 什么精灵状态?...你在可以在任何你需要地方使用它,让精灵对游戏世界变化作出反应。比较常见一个场景在键盘按键时候,这样你就可以通过箭头键方向改变精灵面向方向。...你还可以使用 Shoebox 等工具将 Flash SWF 文件格式转换为纹理图集。 Piskel 一个免费在线工具,用于制作像素风格动画游戏角色。...Shoebox 一款基于Adobe Air 免费应用程序,功能挺多,比如可以用来制作雪碧图,也可以拆分雪碧图,还可以检测透明图像中精灵并将其剪切出来 等。

1.9K10

PixiJS 修炼指南 - 04. 资源加载(下)

上一篇中,我们实现项目资源管理模块 AssetsManager 功能基本还只是雏形,这次我们来对进行一些改进和加强,完善诸如对精灵支持、总进度回调这样能力。...比如,使用 TexturePacker 制作一个精灵表 Json 文件: https://hk.krimeshu.com/public/sheets/cat.json。...、纹理 key 真正可用。...这样实际开发工作中将无法得到相关智能提示和代码检查,对于每个 JSON 配置提供了什么可用动画和纹理需要打开文件逐个确认,效率低下。而且还容易出现有人手滑写错键名情况。...这个启动加载场景只要注意以下几点就好: 样式从简,尽快展示出来为第一目标; 信息从简,用户不需要知道过于详细信息,大部分时候根据总进度绘制进度条即可; 如果启动场景用到了图片素材,尽量用以下方法减少等待时间

65940

cocos2dx-lua物理引擎碰撞检测

这种情况在Cocos2d-x 3.x中有了改变,全新Physics Integration,把Chipmunk和Box2D封装到引擎内部,开发者不必关心底层具体用哪个物理引擎,也不用直接调用物理引擎接口...当调试结束需要发布游戏时候需要把该debug开关关闭 关闭DEBUG,传入参数cc.PhysicsWorld.DEBUGDRAW_NONE。 创建物理边界 在物理世界中,所以物体均受重力影响。...物理引擎提供StaticShape创建一个不受重力影响形状,在Cocos2d-x 2.x中,我们需要了解物理引擎StaticShape相关各种参数来完成边界设置。...完整代码 下面main.lua文件完整代码,单击屏幕任意一点会创建一个精灵精灵之间相互碰撞后产生回调事件。...(4)打开物理世界调试模式,可以在屏幕上看到物理边界以及刚体框架。 (5)注册触摸事件,每次触摸事件到来都会在触摸点创建一个刚体精灵

1.3K30

游戏编程十年总结

于是写出了人生中一个游戏,一个猜数字小游戏,并尝试着改变游戏规则,制作类似石头剪刀布这样游戏。 ?...大富翁后端逻辑不同于一般后端,一般一个请求一个响应,但大富翁一个请求可能触发事件不一定,事件流程也会随着不同环境发生改变,并且中间有可能导致玩家之间复杂交互。...每次写了一段时间之后,回过头看之前写文章,顿时觉得惨不忍睹,必须推翻重写,或者Cocos2d-x接口又改了,或者自己能力提升推翻了之前一些想法。总之不想将就,就得重构!...写书不易,经常加班IT人写书更是不易,有了这么一个经历之后,对一些写得不是很好书籍,也不会去吐槽了。大概在项目上线时候,第二本Cocos2d-x书也该交稿了。...第一本书介绍了Cocos2d-x基础,虽然基础,但有很多点还是挖得比较深,例如指针、内存、纹理、渲染等。这些往往一些初级程序掌握得不好点,相信对于基础不扎实同学会有很大帮助。

2.8K92

游戏编程十年总结

于是写出了人生中一个游戏,一个猜数字小游戏,并尝试着改变游戏规则,制作类似石头剪刀布这样游戏。 ?...大富翁后端逻辑不同于一般后端,一般一个请求一个响应,但大富翁一个请求可能触发事件不一定,事件流程也会随着不同环境发生改变,并且中间有可能导致玩家之间复杂交互。...每次写了一段时间之后,回过头看之前写文章,顿时觉得惨不忍睹,必须推翻重写,或者Cocos2d-x接口又改了,或者自己能力提升推翻了之前一些想法。总之不想将就,就得重构!...写书不易,经常加班IT人写书更是不易,有了这么一个经历之后,对一些写得不是很好书籍,也不会去吐槽了。大概在项目上线时候,第二本Cocos2d-x书也该交稿了。...第一本书介绍了Cocos2d-x基础,虽然基础,但有很多点还是挖得比较深,例如指针、内存、纹理、渲染等。这些往往一些初级程序掌握得不好点,相信对于基础不扎实同学会有很大帮助。

2.7K40

Cocos2d-x】开发基础-Cocos2d-x核心概念

(不多解释啦,不知道朋友请搜索) auto director = Director::getInstance();//获取唯一导演 单例模式 导演对象职责/作用 访问和改变场景 访问Cocos2d-x...配置信息 暂停、继续和停止游戏 转换坐标 上面只是导演对象职责其中一部分,还有其他很多,但我们不需要让导演做很多事情(其他事被隐藏了),我们用最多应该就是访问和改变场景、暂停、继续和停止游戏和转换坐标...场景就是我们拍这场戏,我们布置景 比如打斗场景等 场景中会有男主角,女主角,那么男女主角就相当于我们这里精灵了,包括道具什么(精灵),这些东西在一起,就构成了层 所以场景里面也会放一些层...(层与层之间有覆盖问题,后面的层会覆盖先绘制层),需要绘制深度越深,越耗CPU 大家可以打开Photoshop,用里面的图层来理解,这样更加直观 image.png 精灵 精灵类Sprite...之前HelloWord中关闭按钮其实就是一个菜单项 我们也可以用精灵来实现,但是菜单项封装了一些触摸事件,你不需要关心事件处理细节问题 本文章由[谙忆]编写, 所有权利保留。

36420

学习 PixiJS — 视觉效果

平铺精灵 平铺精灵一种特殊精灵,可以在一定范围内重复一个纹理。你可以使用它们创建无限滚动背景效果。...着色 精灵一个 tint 属性,给这个属性赋值一个十六进制颜色值可以改变精灵色调。 我们来试试吧!...如果你想改变一个精灵色调而不完全改变纹理,就使用着色。 蒙版 Pixi 允许你使用 Graphics (图形)对象来屏蔽任何精灵或具有嵌套子精灵容器。...视频纹理只是一个普通 HTML5 元素,你可以通过纹理 baseTexture.source 属性访问,如下所示: let videoSource = videoTexture.baseTexture.source...这个方法需要两个参数: 一个 Rope 对象使用纹理 一个包含 Point 对象数组 let snake = new PIXI.mesh.Rope(PIXI.Texture.fromImage

3.1K40

CocosCreator基础教程—color属性妙用

在CocosCreator中巧妙利用节点color属性,改变精灵颜色,可以有效减少美术资源。我们一起来看看CocosCreatorHelloWorld工程,给我们启发: ?...回想一下,在你工程中,有没有切出一大块纯色图片做背景?如果有的话这就是一个可优化点!我们来看看充分发挥color作用需要注意些什么。 1....,整体色调会变暗 纯红、绿、蓝三元色精灵使用color属性,颜色只能在当前图片颜色范围变化,应用范围有限 2. color属性在字体上应用 上图中,不仅在精灵组件上设置了颜色,同时也设置了他们下方...绿色字体叠色后变黑色了 所以在制作字体时,尽量先用纯白色,或者再用点浅灰色做字体外发光,这样可以让字体文件使用范围更大,发挥更大价值。 3....4.小结 节点color可以控制精灵渲染颜色,灵活运用可以减少图片资源。color属性不仅可以作用于精灵,更多应用于Lable标签,使用白色纹理,可以让图片更具灵活性。

5K40

连“捉阔”是什么都不知道就不要混了!如何优化看这里!

其实也不知道在说些什么,还是接着看下面的内容吧 : p 举个栗子 问:尝试在两个硬盘之间传输文件,「传输 1 个 1MB 文件和传输 1024 个 1KB 文件」,同样传输了共 1MB 文件...将所有碎图打成一个图集,文本节点夹在精灵节点之间情况下需要 3 个 DrawCall,在顶部最外层或者底部最外层情况下需要 2 个 DrawCall。...「如果需要精灵使用自定义 Shader,需要禁用其纹理 Packable 选项。」...不要问明明只有 80 张精灵和 80 个文本不应该是 160 个 DrawCall 吗为什么 161 个... 因为左下角 Profile 也要占一个 : ( ?...举个栗子 还是上文提到精灵和文本相互交错」例子,为了更好体现 CHAR 模式优势,更改了场景节点结构,将精灵和文本进行「分离」(关于这点可以看下面的 「UI层级调整」)。 ?

1.9K10

Cocos Creator 性能优化:DrawCall

其实也不知道在说些什么,还是接着看下面的内容吧 : p 举个栗子 问:尝试在两个硬盘之间传输文件,「传输 1 个 1MB 文件和传输 1024 个 1KB 文件」,同样传输了共 1MB 文件...将所有碎图打成一个图集,文本节点夹在精灵节点之间情况下需要 3 个 DrawCall,在顶部最外层或者底部最外层情况下需要 2 个 DrawCall。...「如果需要精灵使用自定义 Shader,需要禁用其纹理 Packable 选项。」...不要问明明只有 80 张精灵和 80 个文本不应该是 160 个 DrawCall 吗为什么 161 个... 因为左下角 Profile 也要占一个 : ( ?...举个栗子 还是上文提到精灵和文本相互交错」例子,为了更好体现 CHAR 模式优势,更改了场景节点结构,将精灵和文本进行「分离」(关于这点可以看下面的 「UI层级调整」)。 ?

4.1K20

纹理打包器 TexturePacker

对于雪碧图,有一个配套纹理贴图集也是比较方便工程师进行开发工作纹理贴图集一个 JSON 数据文件,其中包含子图像在雪碧图上位置和大小。如果你使用纹理贴图集,你只需要知道子图像名字。...TexturePacker官网:www.codeandweb.com/texturepack… 这款软件也主要是为了游戏纹理贴图集制作而产生,下图中支持教程前面大都是比较出名游戏开发引擎或者动作库...TexturePacker简单使用 因为是为了pixi.js来使用,所以直接看PixiJs教程就可以啦。 官网上教程英文,但是其实比较简洁,大家翻译工具翻译一下也不会有什么出错。...下面就直接拿安装下载TexturePacker5.5来举例使用一下了 准备工作 首先准备好需要合成精灵图片,这里从爱给网上找图片,找下来后进行了一下处理,下面我处理好图片:...在右侧输出文件选项中,可以选择你需要配置,使用pixi.js。当然其他像unity这些软件配置也都有。输出文件格式json格式。之后点击发布精灵表即可。

1.7K00

奎特尔星球导航

二、UI编程相关 手机游戏中大量UI界面,占游戏开发工作量50%以上,理解Creator组件化思维Cocos2d-x/lua/js到Creator必经之路。...当在Creator开发中,遇到节点与组件关系没理清楚时候,推荐上面的文章,也建议刚从Cocos2d-x/lua/js转换Creator也可以看看。...(视频) 奎特尔星球上白魔法 (视频) 魔灵战士—魔法精灵 (视频) 奎特尔魔法三杰 (视频) 奎特尔历险记总动员 目前MagicComponent进度比较缓慢,最近刚更新了二维码战士,稍后制作视频介绍...自由飞一位霸气程序员,至力于为‘野生程序员’成长略尽绵薄之力”,他故事震撼了,也是学习榜样!...作者:Colin 2D MMO中角色动画优化 Cocos实现对ETC2支持 Creator使用压缩纹理 作者:自由飞 野生程序员折腾—从包工头到程序员(一) 野生程序员折腾—残酷磨砺让更加锋利

74030

关于游戏制作

但原来,只要在职场摸爬滚打一阵子,媳妇熬成婆总有机会可以升到“制作人”,毕竟这是一个“职位”…… 不过一直以来,想讨论关于成为一名游戏制作人,指能力水平方面的制作人,而不是说如何拿到“制作人”这个职位...之后,找了一些游戏对比他们游戏内元素。 说实话,并不觉得,目前精灵之息资源不足以支持前两章或者第一章。但从一开始就有的“重复随机”无聊感还是无法去除。...之前精灵之息,既想要rougelike随机,又想要构建世界观。但很明显,目前精灵之息做不到。 既然如此,则需要权衡这两个点。 首先。 为什么要选择rougelike?...emmm 首先,虽然有时候会有“不如随机”感觉,但如果要跨越的话,就要能把随机驾驭起来,在第二章中,就做了类似的尝试。 另外,制作游戏从来就不是一件轻松事。...一直强调“制作游戏很好玩”甚至“制作游戏可以很简单”,但是并不轻松。 制作游戏也是在“创作”。

73810

精灵之息——不一样游戏

看着DOLO里那些没能上架素材,再看着『精灵之息』那惨不忍睹画面…… 原本我打算把DOLO作为精灵之息一个支线来精灵之息之中客串。...想做『游戏』,和『瓦里奥制造』一样可以被人承认游戏,而不是200分之一小游戏…… 可能这在微信小游戏平台上会很不讨巧,但这才是制作游戏最初心理由。...貌似,很早以前『游戏设计师』就是指『游戏制作人』,但是,不知道从什么时候开始,『设计师』被等价于『画图』。...即使他套了『魔理沙』皮,或者说,这是『魔理沙』在cos『矢张政志』。 ? 这就是灵魂了。 现在很少有这种角色了,大家不停重复去抽不同R SR SSR…… 其实大家抽只是一个数字吧。...它是一个性格胆小生物,因此,行为模式『躲藏』,而隐蔽时长也相对较长。 不过,精灵之息制作进度严重滞后,没空创作原创角色,直接搬来救场DOLO角色们,目前还没有很好进行性格行为设定。

56610
领券