iOS -- SKSpriteNode类
继承自 | SKNode:UIResponder:NSObject |
符合 | NSCoding(SKNode) NSCopying(SKNode) NSObject(NSObject) |
框架 | /System/Library/Frameworks/SpriteKit.framework |
可用性 | 可用于iOS 7.0或者更晚的版本 |
声明于 | SKSpriteNode.h |
参考指南 | Sprite Kit Progamming Guide |
概览
重要提示:这是一个初步的API或者开发技术文档。虽然已经审阅了本文档的技术准确性,但是它不是最终的版本。本机密信息仅适用于苹果开发者计划的注册会员。苹果提供这些机密信息来帮助你采用这些技术和编程接口。此信息如果有变更,根据本文档实现的软件应使用操作系统软件和最终文档测试。新版本的文档可能会拥有新的API或者技术。 |
一个SKSpriteNode实例是一个节点,可以绘制带图片,有色方块,经过颜色混合的图片。
类方法
创建一个新的实例
+ spriteNodeWithColor:size: |
创建并返回一个有色的精灵。
+ (id)spriteNodeWithColor:(SKColor *)color size:(CGSize)size
参数 | color:精灵的颜色 size:精灵的大小 |
返回值 | 一个创建好的并初始化好的精灵实例 |
+ spriteNodeWithImageNamed: |
通过图片文件创建并返回一个纹理精灵。
+ (id)spriteNodeWithImageNamed:(NSString *)name
参数 | name:放在项目中的图片文件的名字 |
返回值 | 一个创建好的并初始化好的精灵实例 |
+ spriteNodeWithTexture: |
通过纹理实例创建并返回一个纹理精灵。
+ (id)spriteNodeWithTexture:(SKTexture *)texture
参数 | texture:一个Sprite Kit纹理实例 |
返回值 | 一个创建好的并初始化好的精灵实例 |
+ spriteNodeWithTexture:size: |
通过纹理实例创建并返回一个纹理精灵并制定大小。
+ (id)spriteNodeWithTexture:(SKTexture *)texture size:(CGSize)size
参数 | texture:一个Sprite Kit纹理实例 size:精灵的大小 |
返回值 | 一个创建好的并初始化好的精灵实例 |
实例方法
初始化一个新的实例
- initWithColor:size: |
使用颜色和大小初始化一个精灵。
- (id)initWithColor:(SKColor *)color size:(CGSize)size
参数 | color:精灵的颜色 size:精灵的大小 |
返回值 | 一个新的初始化好的精灵实例 |
论述
通过这个方法返回的精灵实例,它的texture属性值为nil。
- initWithImageNamed: |
使用图片文件初始化一个精灵。
- (id)initWithImageNamed:(NSString *)name
参数 | name:放在项目中的图片文件的名字 |
返回值 | 一个新的初始化好的精灵实例 |
论述
这个方法会创建一个新的纹理实例,并且把这个实例分配给texture属性。精灵的size属性是由图片的大小来决定的。颜色属性为白色(1.0,1.0,1.0)。
- initWithTexture: |
使用一个纹理实例初始化一个精灵。
- (id)initWithTexture:(SKTexture *)texture
参数 | texture:一个Sprite Kit纹理 |
返回值 | 一个新的初始化好的精灵实例 |
论述
精灵的size属性是由纹理的大小来决定的。颜色属性为白色(1.0,1.0,1.0)。
- initWithImageTexture:color:size: |
使用一个纹理实例和一个颜色初始化一个精灵。
- (id)initWithTexture:(SKTexture *)texture color:(SKColor *)color size:(CGSize)size
参数 | texture:一个Sprite Kit纹理 color:精灵的颜色 size:精灵的大小 |
返回值 | 一个新的初始化好的精灵实例 |
论述
要给纹理混合颜色,你还需要设置精灵的colorBlendFactor属性。
属性
查看物理属性
size |
精灵的大小。
@property(atomic) CGSize size
anchorPoint |
精灵的参考点。
@property(atomic) CGPoint anchorPoint
论述
你指定一个位于单元坐标空间的值。默认值为(0.5,0.5),表示精灵的参考点在正中。
查看精灵的纹理
texture |
精灵的纹理
@property(atomic, retain) SKTexture *texture
论述
如果该值为nil,精灵将会使用颜色属性绘制一个颜色矩形。否则,精灵将会绘制这个纹理。相关的属性影响了纹理的应用。
centerRect |
定义了纹理是如何应用到精灵的。
@property(atomic) CGRect centerRect
论述
这个矩形在单元坐标空间中。默认值为(0,0)-(1.0,1.0),表示整个纹理被拉伸到充满精灵。如果指定一个不同的矩形,矩形的坐标会变成一个3X3网格。网格的四个角不经过缩放直接应用。它的上和中下部分将水平缩放,左和中右部分将垂直缩放。中心是所有方向缩放。
colorBlendFactor |
一个浮点point,描述了颜色是怎样与纹理混合的。
@property(atomic) CGFloat colorBlendFactor
论述
该值必须在0.0到1.0之间。默认值为0.0,表示颜色属性将被忽视,纹理的值不做任何改变。如果是一个大于0.0的值,纹理将与颜色混合,然后再绘制到场景。
查看颜色属性
color |
纹理的颜色
@property(atomic, retain) SKColor *color
论述
如果纹理属性非空,那么颜色的红绿蓝值将会混合到纹理,然后绘制到场景,alpha属性将被忽视。如果纹理属性为nil,那么颜色属性将会被用于绘制一个颜色矩形。
blendMode |
将精灵绘制到父缓冲区的混合模式。
@property(atomic) SKBlendMode blendMode
论述
默认值为SKBlendModeAlpha。
最新文章
- SharePoint 2013 Create taxonomy field
- 在Windows7上如何找到Cookie(亲测100%可找到)
- PhoneGap: Android平台入门例子(Hello World)
- Approvals for EBS 1.4 Now Available
- 采用httpclient提交数据到服务器
- C#调用sap接口及返回数据到sap
- Java知识点:琐碎知识点(3)
- 通过在shell脚本中用scp或rsync实现远程同步文件
- AlloyTouch.js 源码 学习笔记及原理说明
- Hadoop之RPC简单使用(远程过程调用协议)
- WIN10下设置惠普HP1050等打印机打印颜色,只打黑白或彩色
- centos 如何关闭防火墙?
- Pick the Right Shoes
- v-bind属性的绑定
- memory prefix mini mono multi out _m 5
- Jmeter(十六)Logic Controllers 之 Runtime Controller
- Gartner研究副总裁:人工智能的五点傲慢与偏见
- Usaco2008 Jan
- Loj10153 二叉苹果树
- StarUML 5.0问题解决:Failed to open the model file. Invalid file format.
热门文章
- Linux学习-系统基本设定
- Linux和 Mac下git pull/push 免输入密码和账号
- strcpy和strncpy用法和区别
- 如何用好 Google 等搜索引擎?
- 回调深入理解 同步回调 以android中View.OnClickListener为列
- Leetcode 427.建立四叉树
- 聊聊、Nginx 初始化日志文件
- Educational Codeforces Round 36 (Rated for Div. 2)
- Convolutional Networks for Image Semantic Segmentation
- GUI——AWT框架和容器,创建简单窗体