Working with Sprites
【Working with Sprites】
1、An SKSpriteNode object can be drawn either as a rectangle with a texture mapped onto it or as a colored, untextured rectangle.
SpriteNode可以是一个包含了texture的结点也可以是一个无texture的色块。
2、anchorPoint属性用于指定中心位置(旋转轴),默认是(0.5,0.5)。
3、centerRect属性用于实现拉伸的九宫格。The default value is a rectangle that covers the entire texture。
4、color和colorBlendFactor用于实现node颜色与texture颜色的混合。The color blend factor defaults to 0.0。
5、blendMode用于决定与framebuffer中颜色的混合方式。
6、TextureAtlas用于用于将多个texture聚合为一张图。
7、preloadTexture方法用于预加载函数。
【Texture Atlas】
To avoid making multiple drawing passes, Sprite Kit uses texture atlases to collect related images together. You specify which assets should be collected together, and Xcode builds a texture atlas automatically. Then, when your game loads the texture atlas, Sprite Kit manages all the images inside the atlas as if they were a single texture. You continue to use SKTextureobjects to access the elements contained in the atlas.
During build time, the compiler looks for any folders with the naming format of name.atlas. After those folders have been identified, all of the images within the folders are combined into one or more large image files. Texture atlases are automatically available to apps that include the Sprite Kit framework.
After the app is built, new folders are created with a .atlasc suffix and placed in your app bundle’s Resource folder. Those new images are automatically rotated and trimmed to fit the maximum number of images into a single file, one whose images and orientation are tracked by a property list (.plist) associated with the folder. You do not need to change your code in order to use the texture atlas feature.
When generating the .atlasc folders and image files, the following rules apply:
Each compiled image has a maximum size of 2000 x 2000 pixels.
After an image has reached its maximum size, a new image is created.
Images for the same device are kept together—for example, all iPhone images are in one file (
~iphone.1.png), and all iPad images are in another file (-ipad.1.png).
【Adding Actions to Nodes】
1、结点的runAction方法用于启动一个action。
2、runAction:withKey:给action定义一个名字,用于以后引用。
3、组合类型有3种,sequence、group(Run Actions in Parallel)、repeating action。
4、The wait action is a special action that is usually used only in sequences. This action simply waits for a period of time and then ends, without doing anything; you use them to control the timing of a sequence.
SKAction *wait = [SKAction waitForDuration: 0.5];
5、The removeNode action is an instantaneous action, so it takes no time to execute. You can see that although this action is part of the sequence, it does not appear on the timeline in Figure 3-1. As an instantaneous action, it begins and completes immediately after the fade action completes. This action ends the sequence.
SKAction *removeNode = [SKAction removeFromParent];
6、Call the nodeAtPoint: method to find the first descendant that intersects the point, or use thenodesAtPoint: method to receive an array of all of the nodes that intersect the point.
【Building Your Scene】
1、可以通过z值或默认以顺序来显示node,ignoreSiblingOrder可以指定不管list-order。
2、高级搜索通过提供\,\\,*来提供更高级的node查找服务。
【Transitioning Between Two Scenes】
1、使用SKTransition的示例:

When the transition occurs, the scene property is immediately updated to point to the new scene. Then, the animation occurs. Finally, the strong reference to the old scene is removed. If you need to keep the scene around after the transition occurs, your app needs to keep its own strong reference to the old scene.
2、pausesIncomingScene & pausesOutgoingScene 决定在场景转换时,动画是否继续。
3、willMoveFromView & didMoveToView,用于监测scene被加载/移除到一个SKView。
Working with Sprites的更多相关文章
- CSS Sprites优缺点
利用CSS Sprites能很好地减少网页的http请求,从而大大的提高页面的性能,这也是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因: CSS Sprites能减少图片的字节, ...
- 神奇的CSS sprites,制作特效的新方法
本文主要内容简译自Dava Shea的英文文章 CSS Sprites: Image Slicing’s Kiss of Death,如果觉得博主讲的含糊不清的话,可以看作者原文. 熟悉了常规切图的我 ...
- CSS3与页面布局学习笔记(五)——Web Font与CSS Sprites(又称CSS精灵、雪碧图)技术
一.web font web font是应用在web中的一种字体技术,在CSS中使用font-face定义新的字体.先了解操作系统中的字体: a).安装好操作系统后,会默认安装一些字体,这些字体文件描 ...
- Css Sprites 多张图片整合在一张图片上
CSS Sprites原理: CSS Sprites其实就是把网页中一些背景图片整合到一张图片文件中,再利用CSS的"background-image","backgro ...
- compass Sprites 雪碧图 小图片合成[Sass和compass学习笔记]
demo 源码 地址 https://github.com/qqqzhch/webfans 什么是雪碧图? CSS雪碧 即CSS Sprites,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法 ...
- CSS Sprites+CSS3 Icon Font
CSS Sprites+CSS3 Icon Font CSS Sprites在国内很多人叫CSS精灵,是一种网页图片应用处理方式.它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来, ...
- 使用CSS3的background-size优化Sprites图显示
当我的Sprites图像是300px,如何指定background-size为32px呢?其实不难,只需要一点点数学计算,这是一个很初级的过程. 在我们的实例中,我们使用媒体社交图标.我想让他们都按1 ...
- cocos2dx day 2 - Sprites
1.Sprite 对sprite设置anchor point,对应的位置 // DEFAULT anchor point for all Sprites mySprite->setAnchorP ...
- 使用CSS sprites减少HTTP请求
sprites是鬼怪,小妖精,调皮鬼的意思,初听这个高端洋气的名字我被震慑住了,一步步掀开其面纱后发觉很简单的东西,作用却很大 神马是CSS 小妖精 CSS sprites是指把网页中很多小图片(很多 ...
- CSS Sprites (CSS图像拼合技术)教程工具
什么是CSS Sprites? “Sprite”(精灵)这个词在计算机图形学中有它独特的定义,由于游戏.视频等画质越来越高,必须有一种技术可以智能的处理材质和贴图,并且要 同时保持画面流畅.“Spri ...
随机推荐
- SCSS(SASS、CSS)学习
看的这篇文章 http://www.frostsky.com/2014/07/sass-scss/ 写的还比较清晰 SASS是CSS3的一个扩展,增加了规则嵌套.变量.混合.选择器继承等等.通过使用命 ...
- CSS控制背景
一.设置背景颜色:background-color 十六进制 background-color:#ff0000; 英文名称 background-color:red; 三原色 background-c ...
- NHibernate 二级缓冲
session.CreateCriteria(typeof(SysModuleFields)).SetCacheable(true).List<SysModuleFields>(); se ...
- JAVA字符串格式化-String.format()的使用 (转载)
常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ...
- HDU 2063 (匈牙利算法) 过山车
有m个妹子和n男生,男生和女生之间互相有好感则连一条线,问最多能撮合出多少对 这篇博文写的很好,没有让人望而生畏的图论术语 http://blog.csdn.net/dark_scope/articl ...
- 51nod 博弈论水题
51nod1069 Nim游戏 有N堆石子.A B两个人轮流拿,A先拿.每次只能从一堆中取若干个,可将一堆全取走,但不可不取,拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误 ...
- [反汇编练习] 160个CrackMe之024
[反汇编练习] 160个CrackMe之024. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...
- Linux下基于HTTP协议带用户认证的GIT开发环境设置
Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib ...
- 一种Javascript解释ajax返回的json的好方法
通常ajax请求返回的格式为json或者xml,如果返回的是json,则可以通过转换成javascript对象进行操作,如下: 1.ajax请求的controller实现 @RequestMappin ...
- vim的保存误认为utf8问题
用vim改脚本改到一处写到'太原':w一下,再打开,,结果给乱码了...我默认sql是用cp936的,,,想到到和记录本的联通问题一样.... 可能会问我为什么不用utf8,,,,因为ms200 ...