用cocos2d实现飞机大战-x实现轮船平衡游戏,如何实现轮船绕着它的两边旋转着倾斜?默认锚点的话就绕着船身旋转

我的开发环境 操作系统:mac Cocos2d-x:v3.2 Cocos2d-lua(quick-cocos2d-x):v3.2-RC1 Cocos Studio:v2.0.2 Cocos Code IDE :v1.0.1(64bit) 安装步骤 安装Cocos2d-x 把下载好的cocos2d-x-3.2移动到工作目录 运行目录下的setup.py 更新环境变量source ~/.bash_profile 安装Cocos2d-lua 运行安装包quick-3.2rc1-mac.dmg 将安装好
我用的是cocos2d-2.0-x-2.0.3 之前弄了一天也没成功 今天来了下载了最新的ndk8 更新了sdk 又重新是了一遍 居然成功了,不知道是工具的版本问题还是哪一步出错误了,在这里详细的整理一下,感兴趣的朋友可以了解下 我用的是cocos2d-2.0-x-2.0.3 之前弄了一天也没成功 今天来了下载了最新的ndk8 更新了sdk 又重新是了一遍 居然成功了,不知道是工具的版本问题还是哪一步出错误了,在这里整理一下: 首先各个工具都下下来配置好,然后将cygwin中的.bash_pro
据统计,去年游戏行业总销售额为837以元,其中手游行业达112亿元:今年整个游戏行业将突破千亿元,手游预计达250亿元.手游行业的快速发展,让越来越多的开发者加入. 游戏开发首要需要选择游戏引擎.国内市场由Unity.Cocos2d-x两家游戏引擎独占鳌头,受众人群以C#.C++等技术为主,火爆手游层出不穷.对于庞大的Java开发者而言,他们只能望眼欲穿吗?当然不是,基于Java支持跨平台的手游开发引擎OGEngine,让Java开发者也能轻松开发出支持iOS和Android的手游. 14年4月
官网: 4.5:/unity/UnitySetup-4.5.0.exe 一.基于HTTP的WWW组件 1.Get传输 1)脚本 WebManager.cs using UnityE using System.C public class WebManager : MonoBehaviour { string info = & &; void OnGUI() {
4.5: /unity/UnitySetup-4.5.0.exe 本文资源: /s/1dDf7Owp 一.光照 1.方向光-Directional Light GameObject,Create Other,Directional Light, 类似手电筒,光线呈筒状,具有方向性.可模拟为太阳,产生投影. Intensity-亮度 Shadow Type
4.5: /unity/UnitySetup-4.5.0.exe 本文资源: /s/1dDxi1s1 书接前文, 一.新建地图 1.创建地形 GameObject,Create Other,Terrain, 2.设置地形尺寸 本例中设为Terrain Windth=10,Terrrain Length=10即可. 3.绘制路径 1)添加地形纹理 2)选择
官网: 4.3.4:/unity/UnitySetup-4.3.4.exe 本文资源:/s/1i3rAhBR 书接前文, 一.新建关卡 File,Save Scene, File,New Scene, File,Save Scene as... ,Level02.unity 1.建立场景 从Assets中拖放场景模型到Hierarchy中, 2.为游戏体添加多边形
Unity3D官网:
4.3.4 : /unity/UnitySetup-4.3.4.exe 破解文件 : /s/1qWk9ZHi 本篇博文资源: /s/1rOb1s 一.打开及创建 1.打开工程 1)打开工程 如果是初次打开,选择Open Other... 如果不是初次打开,File,OpenProject...,Ope
前言:这篇文章是我翻译的第一篇关于cocos2d的文章,我在翻译的时候尽量按原文意思来,但难免会加入自己一些理解进去.还有这篇文章所采用的xcode版本是3.2.5,用xcode4.0的朋友可能实现起来有点出入,我会在文章的最后给出解决办法. 文章原来出处:/2361/how-to-create-and-optimize-sprite-sheets-in-cocos2d-with-texture-packer-and-pixel-forma
打磨我们的游戏(Polish Gameplay) 目前玩家只能发射一次,摄像头会跟着企鹅飞,但不会回滚到弹射器,接下来我们尝试完成这些功能.该规则将执行以下操作:如果一个企鹅从Level的左侧或右侧离开,或者如果它以非常慢的速度移动,我们将触发下一个(企鹅)尝试启动. 实现更新方法 在我们实际执行的更新方法之前我们在Gameplay.m中添加一个常数定义,我们将用它来 检查是否有企鹅以很慢的最低速度来结束(移动): static const float MIN_SPEED = 5.f; 该值为'
使用SpriteBuilder创建精灵动画(Create sprite animations with SpriteBuilder) 在前面的章节中你已经学习了如何使用SpriteBuilder的时间轴功能创建动画了.接下来,你将学习如何为一个精灵(Sprite)文件添加动画.我们将给正在等待成为子弹的企鹅创建动画效果. 添加资源 在右边传送门下载我们准备的资源包:资源包传送门. 将其解压缩并拖动动画文件夹到您SpriteBuilder项目中.通过右键- Make Smart Sprite Sh
使用SpriteBuilder添加粒子特效(Add Particle Effects using SpriteBuilder) SpriteBuilder集成了一个很强大的粒子特效设计器,我们将用他来定义我们的第一个粒子效果的风格.现在,当我们的Seal被干掉的时候需要添加一个愤怒的小鸟风格的例子特效. 在SpriteBuilder创建一个新的粒子效果 在SpriteBuilder创建一个新的文件: 现在Spritebuilder将创建并打开一个默认的粒子效果: 当您在右窗格中打开最右边的标签,
使用Chipmunk添加物理效果,第1部分(Add Physics using Chipmunk, Part 1) 现在我们需要构建一个真实的发射机制,这之前我们需要了解一些基础知识. 为什么锚点对发射臂来说很重要? 你还记得前面创建的北极熊动画吗?我们改变了熊的手臂的锚点并将其放置在它的肩膀上.每当我们想用一个节点的旋转属性来旋转对象,我们需要选择一个锚点.我们的弹射器臂将被旋转了.不过,弹射器臂将是一个物理对象,在这里工作的原理有点不同.对于一个物理对象,我们使用一个共同连接点来连接两个部件
使用SpriteBuilder创建Levels(Create Levels with SpriteBuilder) 发射企鹅很有趣,然而企鹅和雪豹发生碰撞更有乐趣,下面我们来学习如何创建和加载Level. 设置地面 我们现在打算在游戏场景中载入一个平稳的地面.首先我们要做的就是增加一个地面(ground)到CCPhysicsNode并设置为物理物件.拖动ground节点到CCPhysicsNode时间轴: 选中ground,在属性窗格(右窗格中第三个选项卡)打开物理选项卡.启用物理并将其设置为&
Spritebuilder的用户界面 在我们创建我们的游戏之前,让我们来看看SpriteBuilder的用户界面.乍一看,SpriteBuilder的UI感觉很熟悉 - 它使用了Xcode中的故事板中的许多概念. 该界面分为4个主要部分: 1. 资源/组件浏览器:在这里,您可以看到您所创建或添加到您的项目中的不同的资源和场景.您还可以选择不同类型的节点(Nodes)并将其拖动到场景中. 2. 第一阶段:该阶段将预览您的当前场景.在这里,你可以安排属于一个场景的所有节点. 3. 时间轴:时间轴用于
在cmd中执行 python setup.py install 时发生错误,提示缺少ez_setup 在此寻找,根据提示: The recommended way to install setuptools on Windows is to download ez_setup.py and run it. 据此,下载好 ez.setup.py 放到cocos2d的文件夹中,然后编辑文件夹里的setup.py,添加如下两行: from ez_setup import use_setuptools
随着苹果公司不断地创新与发展,新的iPhone 5.iPad 4以及iPad mini产品相继问世,包括iOS与Xcode在内的开发环境和开发工具也都有了更新和进步.相信有不少开发团队正紧锣密鼓地在iPhone 5和iPad mini上部署自己的应用,一切都是那么令人激动!而随着iOS 6的推出,cocos2d游戏引擎又有了新的发展.在IT行业,可谓唯一不变的便是变化.日新月异的技术需要同为开发者的你我保持强盛的好奇心和完美的学习状态,只有这样,才能不断进步,开发出更酷的游戏或应用.相信这本书的
聊聊Cocos2d纹理 @[Cocos2d|纹理] 写在前面 在cocos2d中,纹理与图形渲染有着密不可分的关系.纹理会存储在GPU内存中,纹理的像素格式决定了图片所占用的GPU内存,跟加载的所用的时间没有关系,但可以通过减小PNG/GIF/TIFF/TMP等图片的大小来缩短加载的时间,也可以将图像格式导出成PVR格式,IOS设备通常使用PowerVR显示芯片,而PVR格式的图片可以直接被该显示芯片直接读取,不需要解析直接显示,渲染速度更快,更节省内存,pvr.ccz图像格式是pvr的压缩格式
今天开始学习cocos2d 首先是拿一个网上的demo来学习,修改自己的.没想到遇到的困难还真不少,api,方法名都不知道,很多都要到网上去查,下面纪录一下今天遇到的问题 做的是一个消除的小游戏 看到demo里面是画点的,而我想用图片,然后就不知道怎么替换图片了,靠. 网上找到方法,就是创建一个CCTexture2D然后替换: 代码: CCTexture2D * texture =[[CCTextureCache sharedTextureCache] addImage: @&pa_icon.p
最近要使用cocos2dx 来开发.关于开发环境的设置,网上的文章总是不全. 参照网上的的文章加上自己的实际操作,终于把环境搭起来了.最重要的是安装NDK+ADK的开发环境. 本文总结了整个过程,以作记录. 一.前期准备 开发包:ADK.NDK.JDK 工具:Cygwin.Eclipse.Python2.7.6 下载:NDK,JDK,cygwin-x86 或者 cygwin-x64,ADT Bundle,Python2.7.6 其中ADT Bundle 是Android官方提供的Eclipse
最近开始跳入做游戏的坑了,而且想做一款独立游戏,虽然随时有烂尾的危险,但无妨一试~敬请期待~ 目前正在准备游戏的原型,由于需要设计像COC的缩放场景,作为cocos2d的菜鸟兼ios开发新手,实在search遍了也没有像样的cocos2d代码,即使有效果也未如人意.stackoverflow上有老外关于pinch缩放手势的例子,但放到cocos2d环境,需要控制一个sprite或者tilemap的边界,就变得有点复杂了.这个问题实在卡了我好久好久,但通过参考了一些pinch示例以及不断调试anc
注:本文译自Sprite Kit Tutorial for Beginners 目录 Sprite Kit的优点和缺点 Sprite Kit vs Cocos2D-iPhone vs Cocos2D-X vs Unity Hello, Sprite Kit! 横屏显示 移动怪兽 发射炮弹 碰撞检测和物理特性: 概述 碰撞检测和物理特性: 实现 收尾 何去何从? 碰撞检测和物理特性: 概述 至此我们已经可以让炮弹任意的发射了--现在我们要让忍者利用炮弹来消灭这些怪物.下面就添加一些代码来给炮弹与怪
注:本文译自Sprite Kit Tutorial for Beginners 目录 Sprite Kit的优点和缺点 Sprite Kit vs Cocos2D-iPhone vs Cocos2D-X vs Unity Hello, Sprite Kit! 横屏显示 移动怪兽 发射炮弹 碰撞检测: 概述 碰撞检测: 实现 收尾 何去何从? 横屏显示 首先,在Project Navigator中单击SpriteKitSimpleGame工程以打开target设置,选中SpriteKitSimpl
注:本文译自Sprite Kit Tutorial for Beginners 目录 Sprite Kit的优点和缺点 Sprite Kit vs Cocos2D-iPhone vs Cocos2D-X vs Unity Hello, Sprite Kit! 横屏显示 移动怪兽 发射炮弹 碰撞检测: 概述 碰撞检测: 实现 收尾 何去何从? 在iOS 7中内置了一个新的Sprite Kit框架,该框架主要用来开发2D游戏.目前已经支持的内容包括:精灵.很酷的特效(例如视频.滤镜和遮罩),并且还集
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 原文链接地址:/782/harder-monsters-and-more-levels 目前为止,我正在翻译的游戏&如何如何使用cocos2d来制作一个简单的iphone&游戏非常cool.我们有一个可以旋转的炮塔,有怪物可以射杀,还有很
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 原文链接地址:/692/rotating-turrets &怎样使用cocos2d来开发一个简单的iphone游戏&这个帖子太火了,你们当中的许多人都想要一些后续的教程!特别是,有些人问到我如何旋转炮塔来改变射击的方向.许多游戏都有这个功
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 原文链接地址:/352/how-to-make-a-simple-iphone-game-with-cocos2d-tutorial 游戏截图: cocos2d是一个非常强大的开源库,它可以为你开发iphone上面的游戏节省大量的时间.目前
在cocos2d中如何重新加载当前场景? CCScene *currentScene = [[CCDirector sharedDirector]runningScene]; [[CCDirector sharedDirector]replaceScene:currentScene]; 上面的方法肯定不对啦 更改如下: [[CCDirector sharedDirector] replaceScene:[YourSceneClass scene]]; 或者: CCScene *currentSc
使用Cocos2d播放帧动画的方法有两种: 先来介绍一下流程: 1.得到动画的每一帧的数组FrameArray 2.将帧动画数组包装成Animation对象 3.将Animation对象转化为可以播放的Action对象 4.使用Sprite来播放Action 第一种:使用TexturePicture来压缩图,用CCSpriteFrameCache来加载 --建立一个Cache来加载解压出的图片 local frameCache = CCSpriteFrameCache:create() fram
深入Cocos2d-x-探索Cocos2d-x中的内存管理-引用计数和自动释放池 引用计数(Reference Count) 引用计数是一种在C++中相当古老的内存管理方法,ios中将这种机制包括在NSAutoreleasePool中.所有我们在Cocos2d-x中也有个相似的东西,叫CCAutoreleasePool,用处基本上一样,详细请看:NSAutoreleasePool Class Reference CCAutoRealeasePool CCAutoRealeasePool与NSAu
Cocos2d-x-API-详解-CCArray CCArray-API的简单介绍 CCArray继承与CCObject类,只是提供了一个面向对象的封装类 创建 &!-- lang: cpp --& static CCArray* create(); /** Create an array with some objects */ static CCArray* create(CCObject* pObject, ...); /** Create an array with one objec
Cocos2d-x-API-详解-CCFileUtils-fullPathFromName 注: 文中的 psz 表示 &(p)ointer to (s)tring, (z)ero-terminated&. 在这篇博客里我将介绍cocos2d-x中的CCFileUtils几个函数的具体用法 在CCSpriteFrameCache和很多其他需要载入资源的函数中,都调用了fullPathName这个函数,可以说这个函数是解决file not found问题的最重要入口,下面让我细细道来 C
Cocos2d-x-基本概念-Animations 帧动画 你可以通过一系列的图片来创建一个童话,如下 CCAnimation *animation = CCAnimation:create(); //load image file from local system to CCSpriteFrame, then add into CCAnimation for (int i = 0; i & 15; ++i) { char szImageFileName[128] = {0}; sprintf
Cocos2d-x-基本概念-Scheduler and Timer Callback Scheduler的目的是按时出发被安排好的callback 两种不同类型的callback(selector) update selector:每一帧都会被调用 custom selector:可以指定每两次调用间隔的时间 custom selector应当尽少使用,使用update selector更加快速高效 CCScheduler vs. NSTimer CCScheduler是cocos2d内置的计
Cocos2d-x-基础概念-坐标系统 不同坐标系的介绍 笛卡尔坐标系 UI坐标系 在ios.安卓.wp一般的UI坐标布局中 原点是在左上角 x从左到右递增 y从顶到底递增 像这样 Direct3d DirectX中采取了笛卡尔左手坐标系 OpenGl和Cocos2d 采用了笛卡尔右手坐标系 在2d中,我们只是用2d的场景 如下: Parent和Childrens 每个继承自CCNode的子类都有一个anchorpoint的属性 当决定放置位置和旋转中心时,均是以anchorpoint作为参照的
Director Scene Layer and Sprite Scenes scene(由CCScene类实现)多多少少是一个相对独立的app工作流.有些人把它称为&screens&或者&stages&.你的app可以由多个scene,但一次只能有一个在前台工作 例如,你可以有一个拥有以下场景的游戏:介绍,菜单,第一关,过场动画,第二关,获胜的过场动画,失败的过场动画,排行榜,你可以把其中的,每一个场景可以想成一个独立的应用,它们之间可以用一些胶水代码连接在一块.
我们先了解下类结构吧 -- CCParticleSystem(所有粒子系统的父类) -- CCParticleSystemPoint.CCParticleSystemQuad (点粒子和方形粒子系统,都继承了CCParticleSystem的所有属性) -- CCParticleExplosion (爆炸粒子效果) -- CCParticleFireworks (烟花粒子效果) -- CCParticleFire (火焰粒子效果) -- CCParticleFlower (花束粒子效果) --
物理编辑工具Physics Editing Tools Mekanimo 网址:http://www.mekanimo.net/ PhysicsBench 网址:http://www.cocos2d-iphone.org/forum/topic/9064 PhysicsEditor 网址:http://www.physicseditor.de/ VertexHelper 网址:http://www.cocos2d-iphone.org/archives/779 场景编辑工具Scene Editi
/share/link?shareid=335724&uk=
在本文中,你将编写专属于你的第一个完整的游戏.它不会为你赢得什么奖项,但从中可以学到cocos2d基本要素的使用方法.我会逐步进行介绍,你还能学到一些Xcode的使用方法. 这个游戏是著名的&Doodle Jump&游戏的&倒版&,它被贴切地命名为&DoodleDrop&.玩家通过旋转屏幕尽可能躲避落下的障碍物.游戏的最终版本如图4-1所示,你可以在此提前了解一下将在本章创造的作品. 图 4-1 &DoodleDrop&游戏的
第一步:安装cocos2d 从http://www.cocos2d-iphone.org/download下载cocos2d模 板,建议下在稳定的版本.打开终端,切换到cocos2d的解压目录,执行命令: ./install-templates.sh,安装完成,打开xcode4.4,如下图: cocos2d-iphone 安装成功. 第二步:创建cocos2d应用程序 选择cocos2d ios模板,应用名称输入HelloWord,完成创建.打开应用,如下图: 文件目录如下(注:xcode版本:
(1):下载cocos2d-iphone最新版本:/p/cocos2d-iphone/downloads/list 这个根据你们能看到的版本而定 ,越新越好啦哈哈哈!!!! (2):把下载下来的压缩包解压后放到&文稿&中: (3):然后按快捷键 control+空格,在搜索框里面打入&终端&: (4):你可以开始敲命令了(按顺序敲就行,或者直接复制进去) 1.&cd documents& ; 2.&qu
Copyright (C) , All Rights Reserved.
版权所有 闽ICP备号
processed in 0.072 (s). 10 q(s)cocos2d-x 关于旋转和移动的一点小技巧
你犯困吗,恩,给你讲个笑话提提神~
一對情侶去從林遊玩,被食人族捉住。食人族首領心情很好,說你們如果想活命,就吃掉對方的大便。在他們回來的路上,女人終於忍不住停下,坐到石頭上哭起來。男人摟住她的肩膀。女人別過臉去,幽幽的說:你不愛我,要不然剛才你不會拉這麼多。
(能呵呵吗?)
================================================================================
一般在游戏中我们避免不了处理旋转或者子弹发射什么的,就比如塔防游戏来说吧,我们需要判断敌人往哪里走,炮塔就往哪里转,转完然后朝着一个方向发射子弹(是一个方向而不是朝一个点,就比如保卫萝卜,子弹穿过怪物继续朝那个方向飞行,直到飞往屏幕外才移除),下面来简单分析一下实现的过程,需要涉及到一点点平面向量的数学知识。
(注意匀速)
1. 旋转 : 朝着某个点的方向匀速旋转
2.发射:让子弹朝着某个点的方向匀速移动
我们来分步骤实现,先实现旋转功能:
嗯,现在假设平面中有点A和点B,A是炮塔,B是敌人,现在我们需要让炮塔A的方向朝着敌人B旋转,因为炮塔放置的时候方向向上,所以我们要旋转的角度为α,如图
现在首先,我们创建敌人和塔
auto enemy = Sprite::create("enemy.png");
enemy->setPostion(Point(100,200));
this->addChild(enemy);
auto tower = Sprite::create("tower.png");
tower->setPostion(Point(200,100));
this->addChild(tower);
然后我们让塔旋转瞄准敌人,只是为了能射它一脸(呵呵?)
//让塔的方向旋转对准敌人
//射击方向向量
Point shootVector = enemy->getPosition() - tower->getPosition();
//向量标准化(即向量长度为1)
Point normalizedVector = ccpNormalize(shootVector) ;
//算出旋转的弧度
float radians = atan2(normalizedVector.y, - normalizedVector.x);
//将弧度转换成角度
float degree = CC_RADIANS_TO_DEGREES(radians);
//匀速旋转需要我们设置一下速度,这里假设旋转速度为 2π (rad/s)
float rotateSpeed = 2 * M_PI;
//那么旋转1弧度所用时间为
float rotate_1rad_time = 1 / rotateS
//所以旋转的时长为
float rotateDuration = fabs(radians * rotate_1rad_time);
//最后执行旋转
_sprite->runAction(RotateTo::create(rotateDuration,degree- 90));
需要注意一下
(1)假设点A为塔,B为敌。则 向量
shootVector = OB -OA = AB
(2)atan2(y,x)是就是反正切函数, 算出的是
点(x,y)与x轴正方向的夹角,返回的是角的弧度值
(3)所以degree算出的角度其实是与x轴正方向的夹角
(4)由于炮塔方向向上,所以
【旋转的角度
α 】= degree - 90
如果你想不起来什么是反正切,那没关系,看下面假设和图(再想不起来我只能呵呵了)
假设 tan(α) = y / x , 则有 α = arctan(y / x)
vcD4KPHA+PHN0cm9uZz7Q/deqzeq6873Tz8LAtM7Sw8fU2cq1z9bJ5Lv3uabE3KO6PC9zdHJvbmc+PC9wPgo8cD48c3Ryb25nPjxicj4KPC9zdHJvbmc+PC9wPgo8cD682cno09DL/qOs19O1r7rNtdDIy6OszrvWw8jnzbyjrM7Sw8fQ6NKqPHN0cm9uZz6w0dfTta/Tyc671sNB0djXxUFCt73P8iDUyMvZyeS1vUOjqEO149TaxsHEu83io6k8L3N0cm9uZz48L3A+CjxwPjxicj4KPC9wPgo8cD48aW1nIHNyYz0="/Collfiles/3.jpg" alt="\">
我们先创建敌人,塔和子弹
auto enemy = Sprite::create("enemy.png");
enemy->setPostion(Point(100,200));
this->addChild(enemy);
auto tower = Sprite::create("tower.png");
tower->setPostion(Point(200,100));
this->addChild(tower);
//子弹,和塔在一个位置
auto tower = Sprite::create("bullet.png");
tower->setPostion(Point(200,100));
this->addChild(tower);
然后这次我们真的射它一脸(再次呵呵)
//射击方向向量
Point shootVector = enemy->getPosition() - bullet->getPosition();
//向量标准化(即向量长度为1)
Point normalizedVector = ccpNormalize(shootVector);
//移动长度向量
Point overShootVector = normalizedVector * 900;
//超出屏幕的点
Point offScreenPoint = bullet->getPosition() + overShootV
//假设速度为500(pix/s)
float moveSpeed = 500;
//移动时间
float moveDuration = overShootVector / moveS
//执行设计
auto move = MoveTo::create(moveDuration,offScreenPoint);
CallFunc* moveDone = CallFunc::create(CC_CALLBACK_0(shootFinish,this,bullet));
bullet->runAction(Sequence::create(move,moveDone,NULL)); 射击结束后移除子弹
//射击结束后移除
void HelloWorld::shootFinish(Node* pNode){
Sprite* bullet = (Sprite*)pN
if(bullet != NULL)
bullet->stopAllActions();
this->removeChild(bullet);
稍稍解释一下 :
(1)shootVector就是向量AB。
(2)overShootVector = (AB向量标准化)× 900 即得到
AC。比如说你设置的分辨率为 800 x 400 ,那么你可以用标准化向量 × 你最大分辨率再大一点,这样子向量就会超出屏幕之外而且长度又固定。
(3)然后根据向量OC = OA + AC ,算出要移动到的点offScreenPoint(即点C)。
(4)设置一下速度,长度一定了,所以时间 = 长度 / 速度 。
=====================================================
其实也没啥东西,纯属小白教程。。
转载请注明出处:https://blog.csdn.net/shun_fzll/article/details/Pages: 1/2
主题 : 问一下cocos2dx如何实现精灵绕中心轴旋转?
级别: 新手上路
UID: 310050
可可豆: 20 CB
威望: 20 点
在线时间: 40(时)
发自: Web Page
来源于&&分类
问一下cocos2dx如何实现精灵绕中心轴旋转?&&&
问一下cocos2dx如何实现精灵绕中心轴旋转?
级别: 圣骑士
UID: 298324
可可豆: 800 CB
威望: 798 点
在线时间: 282(时)
发自: Web Page
回 楼主(冰霜法术) 的帖子
绕中心轴?哪个是中心轴,是精灵中间的节点吗,精灵默认是以锚点为旋转中心的。
欢迎访问cocos2d-x博客皂荚花。
级别: 侠客
可可豆: 89 CB
威望: 149 点
在线时间: 172(时)
发自: Web Page
X,Y,Z三个轴,都可以转吧。
级别: 新手上路
可可豆: 50 CB
威望: 51 点
在线时间: 130(时)
发自: Web Page
有结果了么,我也碰到这个问题
级别: 侠客
UID: 356153
可可豆: 513 CB
威望: 352 点
在线时间: 120(时)
发自: Web Page
【求助!!!】有没有哪位知道,如何让一个精灵 绕 任意点 旋转 ???
级别: 侠客
UID: 356153
可可豆: 513 CB
威望: 352 点
在线时间: 120(时)
发自: Web Page
回 1楼(小塔) 的帖子
【求助!!!】请问大神:如何让一个精灵 绕 任意点 旋转 ??? 跪谢!!!
级别: 新手上路
UID: 443804
可可豆: 232 CB
威望: 230 点
在线时间: 68(时)
发自: Web Page
回 楼主(冰霜法术) 的帖子
解决了这个问题了吗?同求
级别: 骑士
可可豆: 499 CB
威望: 467 点
在线时间: 155(时)
发自: Web Page
难道你们不知道每个Node都有锚点anchor这个属性吗?这个属性就好比一个钉子,把你的Node钉在这个点上,之后你的Node的缩放跟旋转都是绕着这个点的。默认好像是(0.5,0.5)即Node的中心
EasyBox2D For Creator : http://jeason1997.github.io/EasyBox2D
级别: 侠客
可可豆: 388 CB
威望: 388 点
在线时间: 949(时)
发自: Web Page
设置锚点,倘若有需求改变精灵位置就麻烦了。可以按圆的方程封装一个Animation,半径就是要绕着旋转的点O与精灵之间的距离。 runAction时启动schedule每隔时常更新一次位置,当精灵移动到目标点时unschedule
C2D/U3D/AR游戏开发 qq Group:
级别: 骑士
可可豆: 395 CB
威望: 386 点
在线时间: 907(时)
发自: Web Page
自己列方程算轨迹啊 , 卫星旋转都能算出来
/ColaZhang/
Pages: 1/2
关注本帖(如果有新回复会站内信通知您)
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 关注CVP公众号
扫一扫 浏览移动版

我要回帖

更多关于 cocos2d实现一个弹幕 的文章

 

随机推荐