zoukankan      html  css  js  c++  java
  • 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");

     
     
     
  • 相关阅读:
    C#在二维码中添加圆角logo
    保存emoji到数据库
    参数名ASCII码从小到大排序(字典序)
    SQL SERVER 2008 获取表字段的类型
    js对Cookie的读写操作
    sql server2008根据经纬度计算两点之间的距离
    sql server2008给数据表,字段,添加修改注释
    关闭浏览器的放大缩小功能
    SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configur
    ASP.NET正则表达式(URL,Email)
  • 原文地址:https://www.cnblogs.com/goodboy-heyang/p/4925118.html
Copyright © 2011-2022 走看看