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 SKTexture
objects 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 ...
随机推荐
- CentOS 安装 mono
1. 安装EPEL 2. 安装软件包 yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 li ...
- C#克隆实例详解
public AtmDataBase DeepClone() { MemoryStream ms = new MemoryStream(); BinaryFormatter bf = new Bina ...
- content management system
Defination of CMS: The definition of a CMS is an application (more likely web-based), that provides ...
- git workflow常用命令
git init git status git add readme.txt git add --all Adds all new or modified files git comm ...
- R语言多重共现性的检测
1.kappa值 2. library(car)vif(lm.sol) 得到各个系数的方差膨胀因子,当0<VIF<10的时候,不存在多重共线性,当10<=VIF<100,存在较 ...
- 《Qt 实战一二三》
简介 "我们来自Qt分享&&交流,我们来自Qt Quick分享&&交流",不管你是笑了,还是笑了,反正我们是认真的.我们就是要找寻一种Hold不住的 ...
- HDU 2122 HDU Today【Floyd】
题意:给出n条路,起点和终点,问最短距离 用map处理一下地名,再用floyd 可是不懂的是:为什么INF定义成0x7fffffff就输出一堆奇怪的东西,改成100000000就可以了 #includ ...
- Jquery源码中的Javascript基础知识(三)
这篇主要说一下在源码中jquery对象是怎样设计实现的,下面是相关代码的简化版本: (function( window, undefined ) { // code 定义变量 jQuery = fun ...
- 用VS2010打开vs2008
用VS2010打开vs2008,对应的9.0.0.0版本,而应该该使用版本10.0.0.0 解决方案:修改配置文件.将Microsoft.ReportViewer的版本为9.0.0.0改为10.0.0 ...
- 嵌入式 Linux进程含义知多少
理想情况下,您应该明白在您的系统中运行的每一个进程.要获得所有进程的列表,可以执行命令 ps -ef(POSIX 风格)或 ps ax(BSD 风格).进程名有方括号的是内核级的进程,执行辅助功能(比 ...