二**
效果如圖
我們需要上面的效果,可以按照以下的步驟來操作:
第一步:我們需要建立乙個view來支援我們的這種效果(vcview)
第二步:我們需要新增乙個手勢,建立乙個路徑,來記錄這個手勢的移動,並實現我們的繪製功能
第三步:使用複製層來新增粒子
需要支援複製層的功能,那麼我們的這個view(vcview)的layer應該是複製層第四步:新增動畫建立乙個粒子,並且把粒子新增到複製層+(class)layerclass
複製粒子//新增粒子
calayer *dotl = [calayer layer];
dotl.frame = cgrectmake(-20, 0, 20, 20);
dotl.backgroundcolor = [uicolor redcolor].cgcolor
; self.dotlayer = dotl;
[self.layer addsublayer:dotl];
//複製粒子
careplicatorlayer *repl = (careplicatorlayer*)self.layer
; repl.instancecount = 30
; repl.instancedelay = 0.2
;
第五步:實現重繪製功能
注意:我們使用的是自定義的vcview
// 03_uiview77_粒子效果1
//// created by 杞文明 on 17/7/22.
//#import
@inte***ce
vcview : uiview
//開始動畫
- (void)start;
//重繪
- (void)redraw;
@end
//
// vcview.m
// 03_uiview77_粒子效果1
//// created by 杞文明 on 17/7/22.
//#import "vcview.h"
@inte***ce
vcview()
@property(nonatomic,strong)uibezierpath *path;
@property(nonatomic,strong)calayer *dotlayer;
@end
@implementation
vcview
+(class)layerclass
//開始動畫
- (void)start
//重繪
- (void)redraw
-(void)awakefromnib
-(void)pan:(uipangesturerecognizer *)panelse
if (pan.state == uigesturerecognizerstatechanged)
}-(void)drawrect:(cgrect)rect
@end
//
// viewcontroller.m
// 03_uiview77_粒子效果1
//// created by 杞文明 on 17/7/22.
//#import "viewcontroller.h"
#import "vcview.h"
@inte***ce
viewcontroller ()
@property (strong, nonatomic) iboutlet vcview *vcview;
@end
@implementation
viewcontroller
- (void)viewdidload
- (ibaction)start:(id)sender
- (ibaction)redraw:(id)sender
@end
Flash Flex學習筆記 24 粒子效果
粒子 仍然要用到以前的小球類,不過稍加改造 package private function init void 增加了x,y軸的速度,其它沒變 原理 在舞台的某一區域放置大量小球例項,然後在某個時刻讓其向四面八方運動即可 即改變每個小球在x,y軸上的座標 問題 效率!讓cpu在每幀對於大量物件進行...
Cocos2d x教程 6 粒子效果
cocos2d x的粒子系統由ccparticlesystem類實現,粒子效果的生成方式有很多種,在大多數情況下,我們通過plist檔案來儲存粒子系統的引數,如果我們已經有了乙個粒子效果檔案,我們可以直接利用ccparticlesystem的初始化方法從檔案中匯入一種粒子效果。實際上,尤其引擎已經內...
v2 x OGE教程 20 粒子效果
粒子系統表示三維計算機圖形學中模擬一些特定的模糊現象的技術。而這些現象用其他傳統的渲染技術難以實現的真實感的 game physics 常常使用粒子系統模擬的現象有火 煙 水流 火花 落葉 雲 霧 雪 塵 流星尾跡或者象發軌跡這種抽象視覺效果等等。oge引擎的粒子系統中由粒子 粒子發射器 粒子初始化...