游戏开发者社区

[AS3] 请问用代码怎么编写这种效果?有谁给点思路或者给个demo?

查看: 8183|回复: 12

Rank: 8Rank: 8

威望
0 点
义气
0 点
发表于 2015-2-2 11:57:46 |显示全部楼层
20银子
   这种光圈发散效果用代码怎么写, 想了好久不知道怎么实现

举报

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

威望
2 点
义气
210 点

AQ小生

发表于 2015-2-2 12:07:11
简单,上面是投影+摄像头,通过摄像头捕捉移动物体和舞台元件的坐标碰撞即可。

点评

Moeb  摄像头捕捉怎么写,有demo吗  发表于 2015-2-4 10:17:24
Moeb  是投影机,上面一个投影机,一个红外摄像头  发表于 2015-2-4 10:15:20
rainssong  这很明显是触屏  发表于 2015-2-2 16:45:04
381536145  我是要这种光圈散开的效果。用代码怎么写  发表于 2015-2-2 13:04:34

举报

Rank: 9Rank: 9Rank: 9

威望
6 点
义气
0 点
发表于 2015-2-2 12:30:37
你是要光圈散开的效果吗?

点评

381536145  对的,就是问这种光圈散开效果怎么写。  发表于 2015-2-2 13:04:57

举报

Rank: 13Rank: 13Rank: 13Rank: 13

威望
13 点
义气
90 点

AQ小生 赤子之心勋章

发表于 2015-2-2 13:27:29
得用粒子效果了吧,粒子效果转为序列帧应该可以

举报

Rank: 14Rank: 14Rank: 14Rank: 14Rank: 14

威望
15 点
义气
100 点

AQ大神 AQ小仙 AQ大侠 AQ小生

发表于 2015-2-2 13:35:25
用径向渐变画个渐变圆,逐渐放大就是了。

举报

Rank: 18Rank: 18Rank: 18

威望
83 点
义气
552 点

AQ小生 AQ小仙 AQ大神 AQ大侠 大光棍节纪念勋章

发表于 2015-2-2 14:15:07
底色渐变+两个光圈的放大动画

点评

ZЁЯ¤  同意+1;用补间最方便了。  发表于 2015-2-2 16:31:37

举报

Rank: 14Rank: 14Rank: 14Rank: 14Rank: 14

威望
45 点
义气
288 点

AQ小生 妙文社

发表于 2015-2-2 15:53:40
在论坛里搜索AS3图形图像编程艺术,Geom和filter类可以解决任何效果

举报

Rank: 13Rank: 13Rank: 13Rank: 13

威望
89 点
义气
570 点

AQ大侠 AQ小生

发表于 2015-2-2 21:43:53
用 flash动画做 不是很简单吗。。。。用的时候改变颜色用 colorTransforms

举报

Rank: 9Rank: 9Rank: 9

威望
6 点
义气
0 点
发表于 2015-2-3 16:40:09
就是在ps里画出光圈。然后再as里,让他逐渐放大就行了

举报

Rank: 5Rank: 5

威望
0 点
义气
5 点
发表于 2015-6-2 19:36:31
这东西 谁会代码写啊 直接做成动画吧

举报

Rank: 3Rank: 3Rank: 3

威望
0 点
义气
0 点
发表于 2015-6-2 21:22:33
这个啊,很简单的东西,用shape类直接用graphics.draw方法就好了,然后动画效果可以使用Tweener.addTween就OK

举报

Rank: 9Rank: 9Rank: 9

威望
14 点
义气
31 点

AQ小生

发表于 2015-6-4 12:12:49
[Actionscript3] 纯文本查看 复制代码
package com.componet {
	
	import flash.display.GradientType;
	import flash.display.Shape;
	
	/**
	 * 圆形渐变
	 * @author cl 2015/6/1 10:09
	 */
	public class GradientCircle extends Shape {
		
		private var _radius:Number = 5;
		public var fromColor:uint = 0;
		public var toColor:uint = 0xffffff;
		
		public function GradientCircle( radius:Number = 5 , fromColor:uint = 0 , toColor:uint = 0xffffff ) {
			
			super();
			
			this.draw( radius , fromColor , toColor );
		}
		
		public function set radius( value:Number ):void {
			
			_radius = value;
			
			this.draw( _radius , fromColor , toColor );
		}
		
		public function get radius():Number {
			
			return _radius;
		}
		
		public function draw( radius:Number = 5 , fromColor:uint = 0 , toColor:uint = 0xffffff ):void {
			
			this._radius = radius;
			this.fromColor = fromColor;
			this.toColor = toColor;
			
			var alphas:Array = [1, 1];
			var colors:Array = [fromColor, toColor];
			var ratios:Array = [80, 255];
			
			this.graphics.clear();
			this.graphics.beginGradientFill(GradientType.RADIAL, colors, alphas, ratios);
			this.graphics.drawCircle( 0 , 0 , radius );
			this.graphics.endFill();
		}
	}

}


[Actionscript3] 纯文本查看 复制代码
//波效果
			var tm:TimelineMax = new TimelineMax( { repeat:99999 , yoyo: false, repeatDelay:0.3 } );
			var circle:GradientCircle;
			for ( var i:int = 0; i < 2;i++ ) {
				circle = new GradientCircle( 5 , 0 , uint( 0xffffff * Math.random() ) );
				circle.x = 300;
				circle.y = 300;
				this.addChild( circle );
				if ( int(i % 2) == 1 ) {
					tm.insert( TweenLite.to( circle , 0.8 , { radius:300, ease:Strong.easeOut , alpha:0 , delay:0.3} ) );
				}
				else {
					tm.insert( TweenLite.to( circle , 2 , { radius:300, ease:Strong.easeOut , alpha:0 } )  );
				}
			}

点评

肤浅pcy  不错哎  发表于 2016-11-10 15:04:28

举报

Rank: 9Rank: 9Rank: 9

威望
0 点
义气
30 点
发表于 2015-7-30 21:28:47
TimelineMax是啥东西?

举报

您需要登录后才可以回帖 登录 | 注册

关闭

江湖传闻

手机版|9RIA.com ( 京ICP备11007422号-2 

GMT+8, 2017-1-21 14:25 , Processed in 0.098561 second(s), 21 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部