iOS -- SKTextureAtlas类
SKTextureAtlas类
| 继承自 | NSObject |
| 符合 | NSCoding NSObject(NSObject) |
| 框架 | /System/Library/Frameworks/SpriteKit.framework |
| 可用性 | 可用于iOS 7.0或者更晚的版本 |
| 声明于 | SKTextureAtlas.h |
| 参考指南 | Sprite Kit Progamming Guide |
概览
| 重要提示:这是一个初步的API或者开发技术文档。虽然已经审阅了本文档的技术准确性,但是它不是最终的版本。本机密信息仅适用于苹果开发者计划的注册会员。苹果提供这些机密信息来帮助你采用这些技术和编程接口。此信息如果有变更,根据本文档实现的软件应使用操作系统软件和最终文档测试。新版本的文档可能会拥有新的API或者技术。 |
一个纹理集实例是一个相关的纹理的集合。它是通过一个保存在app包中的纹理集来加载的。
使用纹理集可以使纹理的加载和使用更加高效。例如,如果你有一个屏幕需要绘制不同的纹理,Sprite Kit分开绘制这些纹理。如果所有的这些纹理来自同一个纹理集,那么Sprite Kit可以一次就把这些纹理全部绘制完。每当你有一些纹理总是在一起绘制,你应该把它们加到一个纹理集中。
要创建一个纹理集,需要使用Xcode。你添加一个.atlas扩展名的文件夹,然后将纹理集添加到这个文件夹中。当你的app开始构建时,Xcode构建纹理集并将它添加到app包中。编译好的纹理格式是私有的。更多信息请参考Texture Atlas Help。
通常情况下,你不需要使用纹理集类来访问保存在纹理集中的纹理。如果你加载一个保存在app包中的图片,Sprite Kit会首先在app包中寻找,如果没有它会自己到纹理集中寻找。当你需要明确地从纹理集中加载或者查看纹理集的内容时才需要使用纹理集类。
子类注意事项。
本类不能被继承。
方法
类方法
创建一个纹理集。
| + atlasNamed: |
通过app包种的数据创建一个纹理集。
+ (SKTextureAtlas *)atlasNamed:(NSString *)name
| 参数 | name:纹理集的名字,不需要.atlas扩展名 |
| 返回值 | 一个新的纹理集 |
论述
如果找不到这个纹理集,将会抛出一个异常。
实例方法
通过纹理集创建一个纹理。
| - textureNamed: |
通过纹理集创建一个纹理。
- (SKTexture *)textureNamed:(NSString *)name
| 参数 | name:保存在纹理集中的纹理的名字 |
| 返回值 | 一个新的纹理,如果纹理集中没有此纹理,则返回nil |
加载和预加载纹理集数据
| - preload: |
尝试将纹理集预加载到图形内存中。
- (void)preload
论述
当精灵绘制一个纹理集中的纹理时,纹理实例自动加载图片数据然后使图形硬件可用它。然而,这个加载过程是需要时间的。如果一帧中需要加载的纹理太多,这一帧将会花费很长时间来渲染,帧速率会降低。使用预加载可以使纹理加载遍布一系列的帧中。当一个纹理在不久的将来使用时,可以使用这个方法。
属性
查看纹理集
| textureNames |
纹理集中纹理的名字。只读。
@property(nonatomic, readonly) NSArray *textureNames
论述
该属性保存一个数组,数组内容为NSString格式。每个字符串都是保存在集合中的纹理的名字。数组元素的个数就是纹理集中保存的纹理的个数。
iOS -- SKTextureAtlas类的更多相关文章
- IOS 公共类-MyDateUtil 日期处理Util
IOS 公共类-MyDateUtil 日期处理Util 此为处理日期的公共类.适用IOS6+ .h文件: #import <Foundation/Foundation.h> //适用 IO ...
- IOS 公共类-MyMBProgressUtil Progress显示
IOS 公共类-MyMBProgressUtil Progress显示 此公共类用于显示提示框,对MBProgress的进一步封装.可以看下面的代码 接口: @interface MyMBProgre ...
- 一位iOS教育类应用开发者是如何赚到60多万美元?
注:伯乐在线12月19日在@程序员的那些事 微博推荐了此文的英文原文,非常感谢@dotSlash 的翻译. 转眼距我写<我如何在iOS教育类应用中赚到20万美元>这篇博文已经一年多了,它 ...
- SKTextureAtlas类
继承自 NSObject 符合 NSCodingNSObject(NSObject) 框架 /System/Library/Frameworks/SpriteKit.framework 可用性 可用 ...
- iOS系类教程之用instruments来检验你的app
比较了好多关于instruments 还是发现老外写的比较牛逼.于是果断翻译过来.有能力的的可以去看英文原版,鼓励大家看原版资料远离二手教程.这里是原文 入门 为了节省大家的时间,提供一个演示的D ...
- iOS方法类:CGAffineTransform的使用大概
CoreGraphics框架中的CGAffineTransform类可用于设定UIView的transform属性,控制视图的缩放.旋转和平移操作: 另称放射变换矩阵,可参照线性代数的矩阵实现方式0. ...
- 006 [翻译] Haneke(一个Swfit iOS缓存类)
Github项目地址:https://github.com/Haneke/HanekeSwift Haneke是一个用swift写成的轻量级iOS类,以简单好用著称(design-decisions- ...
- iOS 在类实现定义中声明成员变量的怪异方式
WebGL 规范(WebGL Specification) 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致&quo ...
- iOS 日历类(NSCalendar)
对于时间的操作在开发中很常见,但有时候我们需要获取到一年后的时间,或者一周后的时间.靠通过秒数计算是不行的.那就牵扯到另外一个日历类(NSCalendar).下面先简单看一下 NSDate let d ...
随机推荐
- UVa 11552 DP Fewest Flops
题解 #include <cstdio> #include <cstring> #include <algorithm> using namespace std; ...
- mongodb v2.4.9 快速操作记录
参考链接:http://www.runoob.com/mongodb/mongodb-tutorial.html oschina链接:https://gitee.com/dhclly/icedog.s ...
- ef添加数据时出错 System.Data.Entity.Infrastructure.DbUpdateConcurrencyException”类型的异常
找半天才找到 ef添加数据时出错原因:数据库表中没有主键 ,就算表中有自增列 Added方法也会报错: - this._db.SaveChanges() “this._db.SaveCh ...
- cinema 4d 包括宝典 --- 改线 循环边 建模布线原则
cinema 4d 一.视图控制与物体控制 1.摇移 alt+鼠标左键 转圈看物体 改变角度 2.平移 alt +鼠标中键 不改变角度 移动 3.推拉 alt+鼠标右键 ...
- [python][oldboy]字符串 format
#coding=utf8 def format(self, *args, **kwargs): # known special case of str.format """ ...
- 【Luogu】P3565HOT-Hotels(树形DP)
题目链接 水了半个月之后Fd终于开始做题啦! 然后成功的发现自己什么都不会了 树形DP,既然是三个点两两距离相等那一定得有个中心点吧,枚举那个中心点,然后暴力DFS,根据乘法原理算. 乘法原理就是我一 ...
- HDU——1286找新朋友(欧拉函数+质数打表)
找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- P2730 魔板 Magic Squares (搜索)
题目链接 Solution 这道题,我是用 \(map\) 做的. 具体实现,我们用一个 \(string\) 类型表示任意一种情况. 可以知道,排列最多只有 \(8!\) 个. 然后就是直接的广搜了 ...
- 数据库操作之—— explain 的type解释
(1)SYSTEM (2)CONST (3)EQ_REF (4)REF (5)REF_OR_NULL (6)RANGE (7)INDEX_SCAN (8)ALL (9)UNIQUE_SUBQUERY ...
- Linq技巧2——限制返回数据中的继承类型
假如有像下面这样的一个模型, 怎样在查询时仅仅需要的Cars呢? 这样的几个继承关系的实体中,查询时Where 条件可以加入OfType<SubType>(),你可以这样来写: var o ...