cocos2dx-3.2 笔记 - 物理属性

PhysicsBody

  添加物理属性,不多废话,直接上代码

        Sprite *land = Sprite::createWithSpriteFrame(pngName);

        PhysicsBody *Landbody = PhysicsBody::create();
        Landbody->addShape(PhysicsShapeBox::create(
            Size(land->getContentSize().width,land->getContentSize().height)
            ,PhysicsMaterial(1,0,1)));
        Landbody->setDynamic(false);//我测试的效果是 是否动态(即给他速度或力,他并不会动)
        Landbody->setLinearDamping(0.0f);//阻力
        Landbody->setGravityEnable(false);//是否受重力
        Landbody->setContactTestBitmask(1);//只要物体的这个至进行与操作后不为零则触发碰撞
        // add the sprite as a child to this layer
        land->setPhysicsBody(Landbody);

碰撞检测

        auto contactListener = EventListenerPhysicsContact::create();
        contactListener->onContactBegin = CC_CALLBACK_1(GameLayer::onContactBegin, this);
        this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(contactListener, this);

bool GameLayer::onContactBegin(const PhysicsContact& contact)
{

    return true;//true触发碰撞,false穿过,将碰撞事件传递给下一个检测回调函数
}

cocos2dx-3.2 笔记 - 物理属性

时间: 2024-09-28 06:52:07

cocos2dx-3.2 笔记 - 物理属性的相关文章

css笔记-display属性

css笔记-display属性 display属性可取值 display:none | inline | block | list-item | inline-block | table | inline-table | table-caption | table-cell | table-row | table-row-group | table-column | table-column-group | table-footer-group | table-header-group | co

COCOS2DX学习之box2d物理引擎在VS2012中的配置

因为vs中并没有继承box2dz游戏物理引擎,所以在开发有关box2d的游戏的时候,要自己将这个引擎添加进去.首先在解决方案中添加一个已经存在的项目,这个项目的路径就是你创建的cocos2dx项目的目录里面cocos2d\external\Box2D\proj.win32这个文件夹下面的一个vs工程,把它添加进去编译好,就会看到proj.win32\Debug.win32中有了Box2d的库. 之后,将生成的box2d的库添加到项目属性的连接器中即可 tool是我创建的coocs2dx项目 CO

Cocos2DX新手入门笔记索引

01--从根源种子CCNode说起 02—从Cocos2DX视角看游戏组成 03--理解HelloWorld结构 04--简单菜单使用 05--简单场景切换与精灵创建 06--触摸事件响应 07--动作系统(一) 08--动作系统(二)使用即时动作 09--动作系统(三)使用持续动作 11--瓦片地图(一)简单实用 12--使用背景音乐 13--游戏存档 14--物理引擎Box2D 15--Box2D使用(一.创建物理世界) 16--Box2D使用(二.显示物理世界) 17--Box2D使用(三

cocos2d-x To Xcode 修改物理引擎和资源缓存问题

1.修改物理引擎为BOX2D 把Chipmunk改成BOX2D就OK反之亦然 2.XCode资源文件无法更新BUG _TARGET_BUILD_CONTENTS_PATH=$TARGET_BUILD_DIR/$CONTENTS_FOLDER_PATH echo _TARGET_BUILD_CONTENTS_PATH: $_TARGET_BUILD_CONTENTS_PATH echo PWD: $PWD echo Cleaning $_TARGET_BUILD_CONTENTS_PATH/ #函

COCOS2DX学习之Box2d物理引擎使用之------动态物体的创建

1.创建一个物理世界 首先要引入一个头文件#include "Box2D\Box2D.h" 之后利用b2word创建一个对象,并且指定这个物理世界中的加速度方向. word = new b2World(b2Vec2(0,-10));                        //指定物理世界的加速度 最后还要重写一下update函数,这个函数在之前的计时器学习的时候已经说过,每一帧的变动都将自动执行这个函数.所以我们要通过这个函数来进行创建的物理世界的刷新. 2.创建一个运动的物体

Linux源代码情景分析读书笔记 物理页面的分配

函数 alloc_pages流程图 Linux源代码情景分析读书笔记 物理页面的分配,布布扣,bubuko.com

HTML学习笔记——disabled属性

1.适用范围:HTML中的input元素.option元素 2.作用:禁用元素.被禁用的 input 元素既不可用,也不可点击. 3.示例: ①如下代码的button元素都处于禁用状态 <input type="button" disabled="false" value="测试按钮"> <input type="button" disabled="123" value="测试按

Swift学习笔记(13)--属性 (Properties)

普通属性用var和let即可,本文不做详述 1.延迟存储属性 延迟存储属性是指当第一次被调用的时候才会计算其初始值的属性.在属性声明前使用@lazy来标示一个延迟存储属性. class DataImporter { /* DataImporter 是一个将外部文件中的数据导入的类. 这个类的初始化会消耗不少时间. */ var fileName = "data.txt" // 这是提供数据导入功能 } class DataManager { @lazy var importer = D

construct2中对象的物理属性(Physics Behaviors)

Construct2游戏中经常需要给某些对象添加物理属性(Physics Behavior),下面详细描述了这个物理Physics属性. (物理运动只能发生在都带有物理属性的对象之间,如果有的对象不带有物理属性,那么就不会发生任何物理运动.) 参数: Immovable(禁止移动): 通常用于游戏场景的设置.比如为了防止带有重力属性的游戏地面掉落出游戏画面,或是受到撞击,这些场景就会旋转或是移动.通过设置Immovable参数来防止移动和旋转等运动,但是又可以参与游戏中的物理碰撞. Collis