SKEffectNode类
| 继承自 | SKNode:UIResponder:NSObject |
| 符合 | NSCoding(SKNode) NSCopying(SKNode) NSObject(NSObject) |
| 框架 | /System/Library/Frameworks/SpriteKit.framework |
| 可用性 | 可用于iOS 7.0或者更晚的版本 |
| 声明于 | SKEffectNode.h |
| 参考指南 | Sprite Kit Progamming Guide |
概览
| 重要提示:这是一个初步的API或者开发技术文档。虽然已经审阅了本文档的技术准确性,但是它不是最终的版本。本机密信息仅适用于苹果开发者计划的注册会员。苹果提供这些机密信息来帮助你采用这些技术和编程接口。此信息如果有变更,根据本文档实现的软件应使用操作系统软件和最终文档测试。新版本的文档可能会拥有新的API或者技术。 |
一个SKEffectNode实例通过一个核心图像滤镜来渲染输出,它允许你在场景中合并出复杂的效果。
要使用SKEffectNode实例,首先将节点的filter属性指向一个创建好的核心图像滤镜,然后把节点的shouldEnableEffects属性设为YES以使滤镜可用。当滤镜可用的时候,本节点先将其子节点渲染为图像,然后使用滤镜过滤,然后将过滤过的图像混合输出到父节点缓冲区。
属性
| blendMode |
blendMode用于将滤镜过滤过得图像输出到父节点缓冲区。
@property (atomic) SKBlendMode blendMode
论述
该属性的默认值为SKBlendModeAlpha,该属性的枚举定义在SKNode类中。
| filter |
节点所采用的核心图像滤镜。
@property (atomic, retain) CIFilter *filter
论述
核心图像滤镜必须只有一个输入图像和一个输出图像。该属性的默认值为nil。如果该值为空,将不会发生滤镜效果。但是,它的子节点仍然会被单独渲染后混合输出到父节点缓冲区。
| shouldCenterFilter |
一个BOOL值,它决定节点是否自动将滤镜图像设置到中心区域。
@property (atomic, retain) BOOL shouldCenterFilter
论述
如果该属性的值为YES,并且滤镜拥有一个输入中心,节点将自动把滤镜的输入中心设置到节点的原点。默认值为YES。
| shouldEnableEffects |
一个BOOL值,用来决定在子节点绘制的时候是否采用滤镜。
@property (atomic) BOOL shouldEnableEffects
论述
如果该属性的值为YES,节点将会采用滤镜来过滤以及混合输出结果。如果该属性的值为NO,节点将会忽视滤镜效果照常绘制子节点。该属性的默认值为NO。
| shouldRasterize |
一个BOOL值,用来表示子节点的渲染结果是否采用缓存。
@property (atomic) BOOL shouldRasterize
论述
如果该属性的值为YES,过滤过得图像将会被添加到缓存,以备将来使用。如果该属性的值为NO,图像将会被丢弃,在下一次需要渲染的时候再重新绘制。该属性的默认值为NO。采用缓存会消耗更多的内存以及花费更多地时间。然而,如果子节点很少改变,采用缓存将会提高性能。当采用缓存的时候,对子节点的改变将自动更新下一帧动画的缓存图像。但是,改变滤镜属性的时候不会这样。
SKEffectNode类的更多相关文章
- Java类的继承与多态特性-入门笔记
相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...
- SKScene类
继承自 SKEffectNode:SKNode:UIResponder:NSObject 符合 NSCoding(SKNode)NSCopying(SKNode)NSObject(NSObject) ...
- SKNode类
继承自 UIResponder:NSObject 符合 NSCodingNSCopyingNSObject(NSObject) 框架 /System/Library/Frameworks/Sprit ...
- iOS -- SKScene类
SKScene类 继承自 SKEffectNode:SKNode:UIResponder:NSObject 符合 NSCoding(SKNode)NSCopying(SKNode)NSObject ...
- C++ 可配置的类工厂
项目中常用到工厂模式,工厂模式可以把创建对象的具体细节封装到Create函数中,减少重复代码,增强可读和可维护性.传统的工厂实现如下: class Widget { public: virtual i ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core
背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...
- .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类
.NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类 0x00 为什么要引入扩展方法 有的中间件功能比较简单,有的则比较复杂,并且依赖其它组件.除 ...
随机推荐
- js求字符长度
</script> <!DOCTYPE html> <html lang="en"> <head> <meta charset ...
- 关于PHP导入项目的时候导入不了的情况
导入的时候,会发现明明是一个手动创建的一个项目, 才能导入, 有时候会发现这样导入不了的情况 那是因为,可能这个项目是手动创建的,如果通过IDE可能看不出来 不过如果你进入项目的根目录的时候就会知道 ...
- 【USACO 1.1.1】你的飞碟在这儿
[问题描述] 一个众所周知的事实,在每一慧星后面是一个不明飞行物UFO. 这些不明飞行物时常来收集来自在地球上忠诚的支持者. 不幸地,他们的空间在每次旅行只能带上一群支持者. 他们要做的是用一种聪明的 ...
- jquery 文本框聚焦文字删除
做作业需要,自己写了一个,写的很烂. $(function() { $("#search_input").addClass("before_focus");/* ...
- QComboBox实现复选功能
需求: 下拉列表有复选功能 不可编辑 显示所有选中项 关于QComboBox的复选功能有几种方案: QStandardItemModel + QStandardItem QListWidget + ...
- ECharts 是一款开源
ECharts
- Python的多线程实现
概述 Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来实现互斥线程对共享资源的访问,暂时无法利用多处理器的优势. Python中,thread和threa ...
- iOS开发——OC篇&OC高级语法
iOS开发高级语法之分类,拓展,协议,代码块详解 一:分类 什么是分类Category? 分类就是类的补充和扩展部分 补充和扩展的每个部分就是分类 分类本质上是类的一部分 分类的定义 分类也是以代码的 ...
- 在动态引用DLL-A中,当参数是个实体,而实体的属性在另一个DLL-B中。。我们需要得到A这个实体并将其赋值,并将赋值的实体传人DLL-A的方法中。
string strPath = HttpContext.Current.Server.MapPath("/开放式DLL"); DirectoryInfo df = new Dir ...
- python中read、readline和readlines的区别
read 读取整个文件 readline 读取下一行 readlines 读取整个文件到一个迭代器以供我们遍历(读取到一个list中,以供使用,比较方便). 123.txt内容 ...