cocos2d-x 3.6版连连看载入资源
网上找了一个梦幻连连看的资源。大家能够百度一下。然后整理一下加到project里面去。包含声音和图片文件。后面解释怎样整理能够方便管理。
我不推荐在代码里面直接引用资源文件名称,我称之为硬编码。
做iOS开发的同学好像比較习惯这样,要用按个图片,直接用图片来索引。
我们将全部的资源文件用C风格的字符串做一个索引,放在一个头文件Resources.h里面。这样以后须要改动图片或者索引能够非常方便的改动。
好,先加这么多资源。
来看看AppDelegate.cpp,这是入口。看看入口函数
applicationDidFinishLaunching。
auto screenSize = glview->getFrameSize();auto designSize = Size(960, 640);auto fileUtils = FileUtils::getInstance();std::vector<std::string> searchPath;if (screenSize.width > 960) {designSize = Size(1136, 640);searchPath.push_back("Iphone5");}fileUtils->setSearchPaths(searchPath);glview->setDesignResolutionSize(designSize.width, designSize.height, ResolutionPolicy::SHOW_ALL);// create a scene. it's an autorelease objectauto scene = StartGame::createScene();// rundirector->runWithScene(scene);
我这里写的比較简单。由于仅仅做了960X640和1136X640两种资源,所以仅仅做了这两个的适配。这里的适配比較简单粗暴,就是依据屏幕尺寸去载入相应的资源,同一时候设置相应的设计分辨率。
这不是重点。后面我会重点讲分辨率适配。这里仅仅是出来一个界面。重点是我们的连连看游戏。
// create a scene. it's an autorelease objectauto scene = StartGame::createScene();// rundirector->runWithScene(scene);
最后两句创建了一个StartGame的场景,导演运行这个场景。
假设你看你创建的project,会发现源代码里面是用的Helloworld。是的,我们就是要干掉HelloWorld。创建我们自己的游戏场景。
右键点击xcode左側的Classes,选择新建文件。选择C++。取个名字StartScene。同一时候创建头文件。
好了。怎样来写这个StartScene。呢。一步一步来。
我先不讲原理,直接讲怎么搞。
首先要知道。我们这个连连会是神马样子的。
至少应该是这种,首页进来有个大背景。然后有些点缀物,比方蓝天白云神马的,然后有个button,点击開始游戏。
好,先看怎么来出一个背景。
StartScene.h
class StartGame : public cocos2d::Layer
{
public:static cocos2d::Scene* createScene();virtual bool init();void play(void);CREATE_FUNC(StartGame);
};
定义了几个函数。
createScene()是一个静态函数,用来创建一个场景。
init()函数比較怪,是一个虚函数,为什么会这样。后面讲。先这么写好了。
play(void)是我们自己定义的一个函数,看名字就知道干嘛的。
CREATE_FUNC(StartGame),是个神马东西,也是一个create函数,用来创建StartGame实例的。后面大家会知道这就是引擎里面用的最多的二阶段构造器。
再来看实现文件cpp
#include "StartScene.h"
#include "Resources.h"
USING_NS_CC;Scene* StartGame::createScene()
{// 创建一个场景实例auto scene = Scene::create();// 创建StartGame的实例,是一个Layerauto Layer = StartGame::create();// 把StartGame的对象加入到场景里面scene->addChild(Layer);return scene;
}bool StartGame::init()
{// 先调父类的init函数// 这里能够知道,init()函数是一个继承下来的函数,并且是一个虚函数。子类能够重写这个函数if ( !Layer::init() ) {return false;}// 获取屏幕可视区域Size visibleSize = Director::getInstance()->getVisibleSize();// 创建一个背景auto background = Sprite::create(s_backgound);// 设置位置为中心位置background->setPosition(visibleSize.width / 2, visibleSize.height / 2);// 加入到当前层addChild(background);return true;
}void StartGame::play()
{}
代码里面有写凝视。非常easy对不正确。
看跑起来会是个什么东西。
就是个海洋背景图嘛。
转载于:https://www.cnblogs.com/lcchuguo/p/5274706.html
cocos2d-x 3.6版连连看载入资源相关推荐
- cocos2d-x 3.6版连连看加载资源
网上找了一个梦幻连连看的资源,大家可以百度一下.然后整理一下加到工程里面去,包括声音和图片文件,后面解释如何整理可以方便管理. 我不推荐在代码里面直接引用资源文件名,我称之为硬编码.做iOS开发的同学 ...
- Qt版连连看之极速连连看:设计
[源码及安装包下载地址]http://code.google.com/p/speedlink/downloads/list [项目展示及相关截图在最后] 术语约定: 面板:连连看中用于拜访小图案的区域 ...
- Jquery做的网页版连连看(初稿)
这两天一直构思做一个网页版连连看,不过一直没有时间也没有算法.今天早上有空,先完成了一个外壳,就少了算法.我知道网页版的连连看其实也有人做过了,但可能每个人的想法不同,思路也不同.我只是当做一种练习. ...
- live2d sdk java_Unity Live2D SDK的使用方法(一)——载入资源
0.文件类型说明 .cmox文件:Live2D制做工具Cubism的工程文件格式. .moc文件:Unity能够直接用的文件格式,将.cmox文件载入Cubism后导出得到. .bytes文件:二进制 ...
- 手把手带你清理电脑版微信冗余资源
手把手带你清理电脑版微信冗余资源 文章目录 手把手带你清理电脑版微信冗余资源 正文 0. 痛点 1. 检查 MacOS 系统资源占用情况 2. 删除电脑版微信冗余空间 其他资源 参考连接 正文 真的是 ...
- 鸟哥的Linux私房菜-基础篇第四版.pdf免费资源下载链接,《鸟哥的Linux私房菜-基础篇》第四版.pdf
<鸟哥的Linux私房菜-基础篇>第四版.pdf免费资源下载链接(.pdf书籍的优点是便于直接在电脑中保存有电脑就可以阅读,如果觉得这本书给你提供到了很大的帮助,可以去书店补一本纸质版) ...
- DLG\DOM\DEM...免费提供!河北省向全社会公开2020版地理信息数据资源
河北省自然资源厅发布关于公开2020版地理信息数据资源的公告,这是河北省首次系统地向全社会公布地理信息数据资源. "此次公布的地理信息数据全部向全社会免费提供,以推进'放管服'改革,优化营商 ...
- 襄阳教育云平台实名认证_襄阳教育云平台手机版(襄阳教学资源平台)V3.7.6 中文版...
襄阳教育云平台手机版(襄阳教学资源平台)是一款拥有丰富教学资源的客户端应用.旨在确保更好体验平台资源及应用,利用襄阳教育云平台可以更好的辅助教师授课,同步课程高效教学,并且襄阳教育云平台让学生可以随时 ...
- Cocos2D来制作横版过关游戏1
本文实践自 Allen Tan 的文章< How To Make A Side-Scrolling Beat 'Em Up Game Like Scott Pilgrim with Cocos2 ...
最新文章
- C++中无符号数与有符号数的转换
- RocketMQ-初体验RocketMQ(10)-过滤消息_SQL92表达式筛选消息
- [Android] 开发第二天
- 【6.2】hibernate_component
- eclipse(或者myeclipse)常用配置方法
- 计量经济学自相关matlab,计量经济学 自相关性.ppt
- 从MySQL导入导出大量数据的程序实现方法
- 0010服务器无对应信息,服务器版本对应的内存
- 利用malloc定义数组
- 打开电脑的组策略编辑器-计算机配置→管理模板下怎么没有网络,我应该怎么做才能通过FireWire卡屏幕播放?...
- 快讯:Oracle自治事务处理数据库发布和19c路线图
- ajax获取inputname值,jQuery - 获取ajax POST的表单值
- linux【文件操作】命令详解
- 英文java简历模板下载_java英文简历模板
- 电子工程师常用的单位转换
- FPGA学习.7——DDS信号发生器
- 蓝桥杯--输出既是回文又是质数的数
- 【研究生工作周报】(第十周)
- Ubuntu下安装截图软件Shutter
- 零基础想学速写?要想学好速写先了解这几步