本人新手,学习过程中的问题逐渐记录下来
【cocos 2.x 和 cocos 3.x 的区别】
从3.x开始 官方重写了很多方法 原有2.x中 CC开头的类全都去OC化(Object-C)
如果使用 CC 的方法 编译时候就会提示 这些方法已经被废弃了
【关于声音的问题】
AppDelegate.cpp 文件中注释的声音控制去掉双引号后报错
SimpleAudioEngine::getInstance()->resumeBackgroundMusic();
需要在顶部加入以下命名空间
using namespace CocosDenshion;
或者直接写
CocosDenshion::SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
【关于Lable】
因为LabelTTF这个类本身就被Deprecated了,所以它的成员函数当然也被Deprecated了。
可以用Label::createWithTTF或Label::createWithSystemFont()来创建Label
【NodeReader和GUIReader报错】
首先引入
#include "editor-support/cocostudio/CCSGUIReader.h"
我们先来看下Cocos2d-x加载CocosStudio导出的UI的两种加载方式。
第一种:使用NodeReader加载
auto node = cocostudio::timeline::NodeReader::getInstance()->createNode("test.ExportJson");
第二种:使用GUIReader加载
GUIReader::getInstance()->widgetFromJsonFile("test.ExportJson");
总结:
windows 下的CocosStudio 生成的文件,需要使用GUIReader加载
Mac 平台下的CocosStudio 生成的文件,则需要使用NodeReader加载
原因是Mac版和CocosStudio版本同时存在,但是由于Mac版本为1.0.0,导出的文件是有根节点Node的。而windows版本导出的实际上是个Panel。所以需要两种不同的读取方法。
来源:
http://www.tuicool.com/articles/aqM7Nzq
对比例子 仅作参考
auto myLayout = cocostudio::GUIReader::shareReader()->widgetFromJsonFile("aa.ExportJson");
Node *UI = cocostudio::timeline::NodeReader::getInstance()->loadNodeWithFile("aa.ExportJson");
这个貌似被废弃了。。。
.ExportJson格式的文件都是cocos 1.x的文件,2.x用的是csb
这种文件实际就是为了创建UI界面用的,随着函数被废弃,貌似这个也就不再用了。
这里说的1.x 和 2.x 不是 cocos2d-x,说的是 cocos-studio编辑器的版本
cocos2d-x 3.9时候 对应的 cocos是2.3.3.0版本
分享到:
相关推荐
### cocos2d-iphone至...总之,《cocos2d-iphone至cocos2d-html5移植之旅》不仅是一本技术手册,更是一次实践的记录,它鼓励着每一位开发者勇敢地探索未知领域,利用现有的工具和知识,在新的平台上实现创意和梦想。
3. **CHANGELOG.txt**:记录了项目各个版本的更新日志,开发者可以从中了解新功能、改进和已知问题。 4. **AUTHORS.txt**:列出项目的贡献者,对于开源项目而言,这是对开发者社区的承认和感谢。 5. **external**...
5. **CHANGELOG**:记录了cocos2D-x版本的更新历史,对于了解框架的发展历程和新特性很有帮助。 6. **.gitignore**:定义了git版本控制系统应忽略的文件和目录,有助于保持版本库的整洁。 7. **README.mdown**:通常...
在这个项目中,我们将会使用Cocos2d-x 3.x版本来实现这款游戏。Cocos2d-x是一个广泛使用的开源游戏引擎,尤其适合2D游戏开发,它支持多种编程语言,包括C++、Lua和JavaScript。 首先,我们需要了解Cocos2d-x的基本...
在Cocos2d-x游戏开发中,实现"双指缩放,单指拖动,双击自动放大地图"的功能是一项常见的交互设计,它为玩家提供了更直观、更友好的操作体验。下面将详细讲解如何利用Cocos2d-x库来实现这些功能。 一、双指缩放 ...
Cocos2d-x是一款流行的开源游戏开发框架,主要用于创建2D游戏、演示程序和其他图形交互应用。这个"跑酷(StarterKit)游戏源码"是基于Cocos2d-x框架构建的一个Android游戏项目,旨在为开发者提供一个基础的跑酷类...
《cocos2d-x2.0射击游戏实现详解——沈大海cocos2d-x教程实例》 在游戏开发领域,cocos2d-x是一个广泛使用的2D游戏开发框架,尤其适用于跨平台的游戏开发。本教程将深入探讨如何利用cocos2d-x2.0版本实现一款简单的...
### cocos2d记录文档 #### 1.1 前言与概述 ##### 1.1.1 Cocos2d-x 引擎简介 Cocos2d-x 是一款功能强大的跨平台游戏开发引擎,主要使用 C++ 开发,能够轻松地在 Android、iOS、Windows、Mac、Linux 等多种操作系统...
《cocos2d-x中国象棋》是一款基于Cocos2d-x游戏引擎开发的桌面棋类游戏,专注于呈现中国传统象棋的玩法。虽然它没有内置AI功能,但该项目的源代码提供了一个很好的学习平台,让开发者能够理解如何利用Cocos2d-x构建...
2.1.4版本作为历史的一个节点,它记录了cocos2d-x发展过程中的一个重要阶段,对于开发者来说,这是一个学习和研究历史技术演进的宝贵资源。 首先,我们来了解一下cocos2d-x的核心特性。这个框架使用C++作为主要编程...
通过分析《欢乐麻将》的源码,开发者不仅可以深入理解Cocos2D-X引擎的工作原理,还能学习到游戏开发的实战经验,包括游戏逻辑设计、性能优化、网络同步等问题的解决方案。同时,这也是一次了解移动平台游戏开发流程...
《cocos2d-x学习笔记》 在学习cocos2d-x时,了解其核心组件和工作流程至关重要。AppDelegate是cocos2d-x框架中...通过记录和分享学习笔记,你可以更好地理解和掌握这些概念,同时也能帮助他人在学习过程中遇到的问题。
《cocos2d 画线小程序详解》 在游戏开发或者图形界面设计中,画线是一个常见的需求。Cocos2d作为一个强大的2D游戏引擎,提供了丰富的功能来帮助开发者实现这样的功能。本篇文章将深入探讨如何在cocos2d中创建一个...
在本文中,我们将深入探讨如何使用Cocos2d-x游戏引擎来实现这款游戏。 Cocos2d-x是一款开源的游戏开发框架,基于C++,支持跨平台开发,广泛应用于iOS、Android、Windows等系统。其强大的图形渲染能力和丰富的游戏...
8. **问题解决**:列出常见问题及其解决方案,帮助开发者解决在使用Cocos2d-x过程中遇到的问题。 通过阅读这份文档,开发者不仅能深入理解Cocos2d-x 2.1.3的内部工作原理,还能学习到如何有效地利用框架创建游戏和...
6. **分数系统(Scoring System)**:记录玩家的坚持时间并转化为分数,通常会用到`cocos2d::Label`来显示实时的分数,并在游戏结束后显示最终得分。 7. **游戏状态管理(State Management)**:游戏可能有多个状态...
在cocos2d-x中,可以通过编程实现这些逻辑,例如,利用蛇的位置数组(CCArray集合)记录蛇的身体部分,每次移动时更新数组并检查碰撞。CCArray是cocos2d-x中的一个动态数组,可以方便地进行添加、删除和遍历操作,...
在cocos2d-x这个强大的2D游戏开发框架中,手势识别是实现用户交互的关键技术。本主题将深入探讨如何在cocos2d-x中实现单击、双击以及自定义形状的手势识别,帮助开发者为游戏或应用增添丰富的用户交互体验。 一、...
在Cocos2D-X游戏开发中,数据存储是不可或缺的一部分,它涉及到游戏进度、用户设置、得分记录等信息的持久化。本项目实例主要探讨如何在Cocos2D-X框架下实现游戏数据的有效存储,以确保游戏在不同会话之间能够保持...
5. **cocos2d.zip**和**CocosDenshion.zip**:分别是Cocos2d的核心库和音频库,它们提供了游戏开发所需的图形渲染、动画、物理引擎等功能。 6. **box2d**:这是一个物理模拟库,基于Box2D,用于实现游戏中的碰撞...