《运动的小球》第一篇
来源:互联网 发布:卖家如何退出农村淘宝 编辑:程序博客网 时间:2024/06/10 03:00
此项目用cocos2d-x 3.2 编写,极其简单
(我也想做有难度点的,可是能力还不足0.0)~~
首先创建一个名为Ball的项目。。。
修改HelloWorldScene.h文件为PhysicsWorld.h:
#ifndef __PHYSICSWORLD_H__#define __PHYSICSWORLD_H__#include "cocos2d.h"USING_NS_CC;class Physicsworld : public Layer{public: static Scene* createScene(); virtual bool init(); CREATE_FUNC(Physicsworld); private: Size winSize;};#endif
HelloWorldScene.cpp改为PhysicsWorld.cpp,首先创建一个物理世界(其实就是把窗口设置成盒子,
盒子里有重力,里面空心,就像小黑屋-@_@-)
#include "PhysicsWorld.h"Scene* Physicsworld::createScene(){ //物理场景 auto scene = Scene::createWithPhysics(); //重力设置为水平向下 Vect gravity(0, -10.0f); scene->getPhysicsWorld()->setGravity(gravity); //开启测试模式 scene->getPhysicsWorld()->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL); Size winSize = Director::getInstance()->getWinSize(); //创建边界,为空心盒子刚体,参数分别为刚体大小,材质,边线厚度 auto body = PhysicsBody::createEdgeBox(Size(winSize.width, winSize.height), PHYSICSBODY_MATERIAL_DEFAULT, 2); //创建一个节点, 用于承载刚体 auto node = Node::create(); node->setPosition(Point(winSize.width/2, winSize.height/2)); node->setPhysicsBody(body); scene->addChild(node); auto layer = Physicsworld::create(); scene->addChild(layer, 1); return scene;}bool Physicsworld::init(){ if ( !Layer::init() ) { return false; } return true;}
其实很简单啦,我懂的都写上注释了,没注释的都是很简单的
(其实是我不知道怎么注释,不要揭穿我(>_<)~~)
最后别忘了在AppDelegate.h中修改
#include "PhysicsWorld.h"
和
auto scene = Physicsworld::createScene(); // run director->runWithScene(scene);
好了,物理世界创建好了,看看效果图:
嗯~~ 白色的背景是因为我在AppDelegate.h中添加了
glClearColor(1.0, 1.0, 1.0, 1.0);
对了,这个物理世界是借鉴了笨木头前辈的
http://www.benmutou.com/blog/archives/804
0 0
- 《运动的小球》第一篇
- 《运动的小球》开启
- 自由运动的小球
- 《运动的小球》第二篇
- 《运动的小球》完结篇
- surfaceView 的使用 运动小球
- Promise实现小球的运动
- 小球运动
- Cocos2d-x加速度计实例:运动的小球
- 控制面板上小球的运动
- 【UI】【View】随手指运动的小球
- 用好beginPath来绘图-运动的小球
- 改变小球运动方向
- 物理模拟小球运动
- 小球运动Android xml
- 小球运动Android MainActivity
- 小球运动Android MyCircleView
- 小球运动Android AppContext
- 【C++】【基础】const限定符的使用
- 高性能I/O设计模式概述
- Java-数据库(SQL Server):第二天-12/03/2014
- Oracle清缓存
- Android仿微信摇一摇,加速度传感器基本使用
- 《运动的小球》第一篇
- 在Fedora中如何授予权限给用户使用Docker
- Xcode6下添加.pch文件
- 频繁分配释放内存导致的性能问题的分析
- webView的适配
- window dos基本操作命令介绍
- hdu 5108
- ucos II 内核学习之三:任务调度
- DRBD