初识ngCore之简单的多帧动画实现

本文通过分析SamplesSprites示例,探讨如何在ngCore游戏引擎中创建一个基本的多帧动画。通过加载和操作动画帧,实现动态效果。
摘要由CSDN通过智能技术生成

学习一个新的游戏引擎最好的办法莫过于多看示例代码了,本文主要是学习 \Samples\Sprites 示例后自己写的一个简单的多帧动画。

代码片段如下:

加载动画:

var PIAnimation = Core.Class.singleton({
	 initialize: function(){
	 
		var coinEffect = new GL2.Animation() ;
		coinEffect.pushFrame(new GL2.Animation.Frame('Content/ui/effect/coin01.png', 
				300, [40, 26], [0.5, 0.5], [0,0,1,1])) ;
		coinEffect.pushFrame(new GL2.Animation.Frame('Content/ui/effect/coin02.png',
		300,[40,26],[0.5,0.5],[0,0,1,1])) ;		
		this._coinAnim = coinEffect ;
		
	 },
	 
	 getCoinAnim: function(){
	 
	     return this._coinAnim ;
	 
	 }

}) ;


动画实现:


/**金币动画*/
var Coin = Core.MessageListener.subclass({

      initialize: function(){
	     // anim
             var coinAnim = PIAnimation.getCoinAnim() ;
	     // node
             this._node = new GL2.Node() ;
             this._node.setPosition(110,27) ;			 
	     // sprite
	     this._sprite = new GL2.Sprite();
	     this._sprite.setAnimation(coinAnim) ;
             this._node.addChild(this._sprite) ;			
			Core.UpdateEmitter.addListener(this, this.onUpdate);
	  },
	  onUpdate: function(delta){
	     
	  },
	  getCoinNode: function(){
	  
	     return this._node ;
	  
	  },
         destroy: function(){
            this._sprite.destroy() ;
            this._node.destroy() ;
         }

}) ;


添加到父节点:


/**金钱动画*/
var coinNode = new Coin() ;
this.sBackground.addChild(coinNode.getCoinNode()) ;


按上述三个步骤就可以实现简单的多帧动画了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值