
quick-cocos2d-x 学习系列之九filter
一看这例子,就感觉适合做电影镜头之类的特效,那种模模糊糊的感觉。
主要定义了一个变量:
MainScene._FILTERS = {
-- custom
{"CUSTOM"},
-- {"CUSTOM",Json.encode({frag ="Shaders/example_Flower.fsh",
-- center= {display.cx,display.cy},
-- resolution= {480,320}})},
{{"CUSTOM", "CUSTOM"},
{Json.encode({frag = "Shaders/example_Blur.fsh",
shadername = "blurShader",
resolution = {480,320},
blurRadius = 10,
sampleNum = 5}),
Json.encode({frag = "Shaders/example_sepia.fsh",
shadername = "sepiaShader",})}},
-- colors
{"GRAY",{0.2,0.3,0.5, 0.1}},
{"RGB",{1,0.3}},
{"HUE",{90}},
{"BRIGHTnesS",{0.3}},
{"SATURATION",{0}},
{"CONTRAST",{2}},
{"EXPOSURE",
{"GAMMA",
{"HAZE",{0.1,0.2}},
--{"SEPIA",{}},
-- blurs
{"GAUSSIAN_VBLUR",{7}},
{"GAUSSIAN_HBLUR",
{"ZOOM_BLUR",{4,0.7,0.7}},
{"MOTION_BLUR",{5,135}},
-- others
{"SHARPEN",1}},
{{"GRAY", "GAUSSIAN_VBLUR","GAUSSIAN_HBLUR"},{nil,{10},{10}}},
{{"BRIGHTnesS", "CONTRAST"},{{0.1},{4}}},
{{"HUE", "SATURATION","BRIGHTnesS"},{{240},{1.5},{-0.4}}},
}
包含了里面多个过滤实例。
1.ctor构造函数调用如下函数
self:_addUI()
self:_createFilters()
self:_showFilter()
2._addUI创建close按钮,创建向前、向后、重播按钮。
创建clear filter按钮,用于调用函数 _onClearFilter。
创建场景的Title.
3._createFilters设置变量如下:
self._curFilter = 1
self._filterCount = #self._FILTERS
curFilter变量时设置索引,filterCount变量时设置总数。
4._showFilter该函数是本例子的核心。
先判断_filterSprite变量是否存在,存在则设置为nil.
然后通过_curFilter创建当前过滤镜。
通过newFilteredSprite创建带过滤的精灵。
最后创建一个Title。
5._onClearFilter将精灵的滤镜删除。
self._filterSprite:clearFilter()
6.newFilteredSprite函数 display.newFilteredSprite()@H_630_301@display.newFilteredSprite(filename,filters,params)
Create a Filtered Sprite
Parameters·mixedfilenameAssame a the first parameter for display.newSprite
·mixedfiltersOne ofthe following:
·A Filter name;
·More Filter names(in atable);
·An instance of Filter;
·Some instances of Filter(in atable);
·A Array inclueds someinstances of Filter.
·tableparamsA orsome parameters for Filter.
Returns·An instance of FilteredSprite
总结以上是内存溢出为你收集整理的quick-cocos2d-x 学习系列之九filter全部内容,希望文章能够帮你解决quick-cocos2d-x 学习系列之九filter所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)