- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
36瘸腿蛤蟆笔记36-cocos2d-x-32Box2d物理引擎Ray-cast使用
瘸腿蛤蟆笔记36-cocos2d-x-3.2 Box2d物理引擎Ray-cast使用瘸腿蛤蟆原创笔记,欢迎转载,转载请标明出处:上篇回顾本篇名言:人类心灵深处,有许多沉睡的力量;唤醒这些人们从未梦想过的力量,巧妙运用,便能彻底改变一生。[澳瑞森·梅伦]上几篇中,蛤蟆学习了Box2d物理引擎中如何将我们创建的物理体给描绘在程序里面。让我们能够看到一个非常直观的物体,便于后续进一步学习和理解。具体步骤我们还是使用helloworld工程。首先将\cocos2d-x-3.2\tests\cpp-tests\Classes\Box2DTestBed目录中的6个文件GLES-Render.c, GLES-Render.h,RayCast.h, Test.cpp,Test.h,TestEntries.cpp复制到我们自己的所在工厂目录中的classes文件夹中。然后将这6个文件添加到我们自己的工程项目中。然后我们自己新建一个类,Box2D类。这个是基于Layer类的用于承载物理世界。然后在HelloWorld.Scene.h头文件中,加入如下#includeGLES-Render.h#includeTest.h#includeRayCast.h#includeBox2D.h包含刚才的头文件3、在boolHelloWorld::init()函数中加入如下代码,即可Box2D* view = Box2D::viewWithEntryID();addChild(view, 0, 2);view-setScale(15);view-setAnchorPoint( Vec2(0,0) );view-setPosition( Vec2(origin.x+visibleSize.width/2, origin.y+visibleSize.height/3) );编辑Test.h头文件中,找到类定义中的protected:增加friendclassBox2D;编辑TestEntries.cpp只留下如下,即可。#includecstringusingnamespace std;#includeTest.h#includeRayCast.hTestEntryg_testEntries[] ={{Ray-Cast, RayCast::Create},};intg_totalEntries = sizeof(g_testEntries) / sizeof(g_testEntries[0]);编辑Box2D.h文件如下:#pragmaonce#includecocos2d.h#includeGLES-Render.h#includeTest.h#includeRayCast.hUSING_NS_CC;classTest;classBox2D :publicLayer{public:staticBox2D* viewWithEntryID();boolBox2D::initWithEntryID();Box2D(void);~Box2D(void);RayCast* raycast;Test* m_test;Settingssettings;TestEntry* m_entry;GLESDebugDraw *m_debugDraw; //这里新建示例b2World* world;virtualvoid draw(Renderer *renderer, constMat4 transform, uint32_t flags) override;protected:CustomCommand _customCmd;voidBox2D::onDraw(constMat4 transform, uint32_t flags);};编辑Box2D.cpp文件如下:#includeBox2D.hBox2D::Box2D(void){}Box2D::~Box2D(void){}Box2D* Box2D::viewWithEntryID(){Box2D* pView = newBox2D();pView-initWithEntryID();pView-autorelease();returnpView;}boolBox2D::initWithEntryID(){m_entry = g_testEntries;m_test = m_entry-createFcn();returntrue;}voidBox2D::draw(Renderer *renderer, constMat4 transform, uint32_tflags){Layer::draw(renderer, transform, flags);_customCmd.init(_globalZOrder);
您可能关注的文档
- 什么是标志.doc
- 从女性主义理论分析《逃离》中女性人格的建构.doc
- 付出才有回报主题班会.docx
- 企业利润操纵成因对策.doc
- 企业应帐账款管理问题的探讨.doc
- 企业IPO的财务审核核心要点.docx
- 2011上半年大学英语第二次作业.doc
- 2011地貌第四纪复习题.doc
- 企业管理中人本企业的应用与研究.docx
- 中职电子商务专业将“微商创业”纳入兴趣小组教学活动的调查研究.docx
- 专题06 经济体制(我国的社会主义市场经济体制)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题11 世界多极化与经济全球化-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 专题03 经济发展与社会进步-5年(2020-2024)高考1年模拟政治真题分类汇编(浙江专用)(解析版).docx
- 专题09 文化传承与文化创新-5年(2020-2024)高考1年模拟政治真题分类汇编(北京专用)(原卷版).docx
- 5年(2020-2024)高考政治真题分类汇编专题08 社会进步(我国的个人收入分配与社会保障)(原卷版).docx
- 专题07 探索世界与把握规律-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 5年(2020-2024)高考政治真题分类汇编专题06 经济体制(我国的社会主义市场经济体制)(原卷版).docx
- 专题11 全面依法治国(治国理政的基本方式、法治中国建设、全面推进依法治国的基本要求)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题17 区域联系与区域协调发展-【好题汇编】十年(2015-2024)高考地理真题分类汇编(解析版).docx
- 专题01 中国特色社会主义-5年(2020-2024)高考1年模拟政治真题分类汇编(原卷版).docx
最近下载
- 13套题,必过,阿坝州拟任科级领导干部任职资格政治理论考试题汇总.pdf
- 2023年关于医药领域腐败问题全面集中整治自查自纠报告与医院开展医疗领域群众身边腐败作风问题专项整治工作总结【两篇】.docx VIP
- 高中语文必修二课件--念奴娇·赤壁怀古.ppt VIP
- 高中化学选修三全套.pptx VIP
- 中国特色社会主义理论体系的形成的历史条件.ppt VIP
- 领导讲话稿写作方法和技巧.ppt
- 高中:原创语文《反对党八股》(定稿).pptx VIP
- 液压升降机油路图液压升降机毕业设计.doc VIP
- 《管理学原理》全套课后习题答案(大学期末复习资料).docx
- 高中课件:原创语文《反对党八股》公开课课件.pptx VIP
文档评论(0)