cocos2d-x 3.0游戏实例学习笔记 《跑酷》第一步--- 开始界面
2023-09-27 14:27:03 时间
说明:这里是平局:晓风残月 前辈的博客。他是将泰然网的跑酷教程。用cocos2d-x
2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记
開始界面和前辈的基本上差点儿相同:cocos2d-x游戏开发 跑酷(一)開始界面 可是也有不同
首先你得自己先新建一个项目,我们从头開始
以下先给出游戏过程中用到的全部资源
到今天8-1号,整个游戏已经完毕重写。
。后面也给出全部代码和资源,以及整个项目都打包好的地址,或者你愿意跟着我的笔记一步一步来的话,在这里以下给出全部资源的百度云下载地址
開始界面定义为:MainScene 有例如以下功能:
1.背景
2.进入游戏界面button
3.预先载入背景音乐文件
.h文件
#ifndef __MainScene__H__ #define __MainScene__H__ #include "cocos2d.h" class MainScene : cocos2d::Layer{ public: virtual bool init(); static cocos2d::Scene* scene(); CREATE_FUNC(MainScene); private: // void createBG(); // void createButton(cocos2d::Point centerPoint); // void preLoadMusic(); //menu start the game void start(); };/**/ #endif.cpp
#include "MainScene.h" #include "SimpleAudioEngine.h" //#include "PlayScene.h" USING_NS_CC; using namespace CocosDenshion; Scene* MainScene::scene(){ Scene* scene = Scene::create(); Layer* layer = MainScene::create(); scene->addChild(layer); return scene; } bool MainScene::init(){ if(!Layer::init()){ return false; } //preloadMusic preLoadMusic(); //create background createBG(); return true; } void MainScene::createBG(){ auto winSize = Director::getInstance()->getWinSize(); auto centerPoint = ccp(winSize.width / 2, winSize.height / 2); //BG Sprite* spriteBg = Sprite::create("MainBG.png"); spriteBg->setPosition(centerPoint); this->addChild(spriteBg); //create button createButton(centerPoint); } void MainScene::createButton(cocos2d::Point centerPoint){ //Start mutton MenuItemImage* menuItem = MenuItemImage::create( "start_n.png", "start_s.png", CC_CALLBACK_0(MainScene::start,this)); Menu* menu = Menu::create(menuItem,NULL); menu->setPosition(centerPoint); this->addChild(menu); } void MainScene::preLoadMusic(){ SimpleAudioEngine* audioEngin = SimpleAudioEngine::getInstance(); audioEngin->preloadBackgroundMusic("background.mp3"); audioEngin->preloadEffect("jump.mp3"); audioEngin->preloadEffect("crouch.mp3"); } void MainScene::start(){ CCLOG("game is start !"); //Scene* playScene = TransitionFade::create(1,PlayScene::createScene()); //Director::getInstance()->replaceScene(playScene); }这里因为我对屏幕自适应的知识还不够了解,尽管看过几篇文章。可是还是比較迷茫。不怎么知道运用到实例其中。所以对于这次重写中,背景图片一般都是 640*320大小的 ,所以须要在AppDelegate.cpp 其中设置显示窗体大小:
bool AppDelegate::applicationDidFinishLaunching() { // initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) { glview = GLView::create("My Game"); glview->setFrameSize(640,320);//------改动显示窗体大小 director->setOpenGLView(glview); } // turn on display FPS director->setDisplayStats(true); // set FPS. the default value is 1.0/60 if you don't call this director->setAnimationInterval(1.0 / 60); // create a scene. it's an autorelease object auto scene = MainScene::scene(); // run director->runWithScene(scene); return true; }自己仅仅能后面了解相关知识啦,假设有好的相关教程,麻烦推荐一下,谢谢!!
我们能够删掉HelloWorld,在AppDelegate里面替换成MainScene::scene();
执行之后如图:
游戏资源:跑酷游戏资源 ,这里已经改动成网盘地址啦,或者在以下留言留下邮箱&私信我。我就给你发种子。
。
哦不,发资源,游戏资源!!!每天都在
这一部分的单独项目:http://pan.baidu.com/s/1hqHwEPI
个人愚昧观点,欢迎指正与讨论
版权声明:本文博客原创文章,博客,未经同意,不得转载。
相关文章
- JavaScript动画实例:旋转的圆球
- 码栈开发手册(六)---实例演练(流程和字符处理)
- Qt中信号槽形参值传递,引用传递,指针传递的实例及总结
- 《Unity 3.x游戏开发实例》一导读
- 《Unity 3.x游戏开发实例》——1.1节Unity 3D简介
- 《Unity 3.x游戏开发实例》——1.6节先走后跑(或双脚跳)
- 《Unity 3.x游戏开发实例》——1.10节Scene窗口
- 《Unity 3.x游戏开发实例》——1.11节别停下来——享受一下
- 《Unity 3.x游戏开发实例》——2.11节《Artillery Live!》
- 《Unity 3.x游戏开发实例》——2.13节适合上千款游戏的机制
- 《Unity 3.x游戏开发实例》——2.15节重新定义天空
- MFC学习之新年烟花效果代码实例
- Vue3+elementplus搭建通用管理系统实例十五:界面美化及样式调整
- java注解反射简单实例
- VUE入门实例,模版组件用法
- Silverlight+WCF 新手实例 象棋 主界面-事件区-游戏开始(二十七)
- Silverlight+WCF 新手实例 象棋 主界面-事件区-游戏开始(二十七)
- Python实例---游戏人生[类的学习]
- Java实例---简单的数据库操作
- linux块设备驱动之实例
- Unity 游戏实例开发集合 之 FlappyBird (像素鸟) 休闲小游戏快速实现
- Linux下Oracle的启动登陆命令、单实例启动、多实例启动
- Vue经典实例之table表格奇偶行不同颜色、鼠标移入变色、点击变色,一看就明白
- CAD制图教程:多跑楼梯对话框控件说明及工程实例