zoukankan      html  css  js  c++  java
  • Cocos2d入门--3-- 向量的应用

     

     Cocos2d入门--3-- 向量的应用

    小球向一个方向持续运动的Demo

    HelloWorldScene.h

    ......
    //设置一个protected的属性
    protected:
        cocos2d::Vec2 _vec;
    ......

    HelloWorldScene.cpp

    //这个是通过随机数设置向量的方向
    _vec.set(random(-0.1f, 1.0f), random(-1.0f, 1.0f));
    //通过normalize这个标准化函数,能够使得向量的大小为1
    _vec.normalize();
    
    auto dot = DrawNode::create();
    
    dot -> drawDot(Vec2(0, 0), 5, Color4F(1.0f,1.0f,1.0f,1.0f));
    addChild(dot);
    
    dot -> setPosition(origin.x + 
    visibleSize.width/2,origin.y + visibleSize.height/2);
    
    schedule([dot,this,origin,visibleSize](float f){
        Vec2 nowVec = dot -> getPosition();
        //判断小球碰壁反弹运动
        if (nowVec.x<origin.x || nowVec.x>origin.x+visibleSize.width) {
            _vec.x *= -1;
        }
        if (nowVec.y<origin.y || nowVec.y>origin.y+visibleSize.height) {
            _vec.y *= -1;
        }
        dot->setPosition(nowVec+_vec*10);
    }, "Test");

     

  • 相关阅读:
    centos vsftpd
    centos nginx
    linux 修改配色
    面试题讲解
    文件操作
    Python
    Python-linux作业
    python(12.17)笔记
    python周末作业(12.14--16)
    python作业(12.12)
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/5877397.html
Copyright © 2011-2022 走看看