这一篇中,我们播放了一个简单的动画。我们设定的角色位置其实是屏幕中心,但是运行结果发现角色的头部位于屏幕中心,这表示角色的锚点位于头部位置,先回顾一下Flash角色的设定:
注意角色左上角那个白色的十字架,这个位置是Flash中元件的注册点,在cocos2d里叫锚点。默认情况下,Flax会将动画在Flash里的注册点转换到cocos2d中作为锚点使用,所以我们看到示例中角色的左上角在屏幕中心。
但是我们在程序中,通常希望这个角色的锚点在双脚之间,怎么办?通常情况下,我们可以将这个动画的每一帧的内容平移过去,但是对于一个35帧和10几层的一个动画,这样的操作略显麻烦,更不要说更复杂的动画。
Flax提供了一个锚点系统来轻松解决这类问题,具体做法是:
1. 在工具栏中,点击【添加锚点】按钮
2. 在你想添加锚点的位置点击舞台,在命名框里,用默认名字main,点击【ok】。注:main表示主锚点,辅助锚点看这里。
3. 在舞台上,我们发现新增加了一个十字架图形,这就是我们的锚点标记,将其拖动到你想要的位置,在本例中,我们拖到角色的双脚之间
关于Flax自动命名anchor__main的解释:中间是双下划线,anchor告诉flax这是一个锚点,不需要输出图形,只输出它的位置数据,main告诉flax这是一个主锚点,直接转换为cocos2d中的锚点位置。有主锚点就有辅助锚点,关于辅助锚点看这里。
4. 保存fla,输出swf,重新运行游戏,角色的双脚移动到屏幕正中心了,这表示锚点起作用了。
You must be logged in to post a comment.