游戏嘛,没图片没画面能叫游戏吗,所以我们还是先看用quick的方式怎么创建精灵。
quick的api中对精灵的创建讲解得还是很详细,所以创建起来很简单。
display.newSprite(filename, x, y, params)
filename:精灵文件名
x:x位置坐标
y:y位置坐标
params:表参数(不常用)
我们创建的时候为了方便,可以添加x,y参数,这样就不用在后面再设置位置了。此外,对于精灵的文件名,我们在使用cocos2dx的时候,都知道有直接从文件读取,也有的是从缓存帧中读取的,所以为了区分,quick在文件名上使用了”#“来区分它们,带有”#“说明该名称是从缓存帧中读取。
实践一下,还是在上节创建的MyScene场景中修改代码。
所用到的图片有,
打包工具创建图片集合
普通图片文件
代码,
function MyScene:ctor() --普通文件创建精灵 local sp1 = display.newSprite("icon.png", display.width/4, display.cy) self:addChild(sp1) --创建图片缓存 display.addSpriteFramesWithFile("coco.plist", "coco.png") --通过缓存图片名称创建 local sp2 = display.newSprite("#icon.png", display.width/2, display.cy) self:addChild(sp2) --创建一个CCSpriteFrame local frame = display.newSpriteFrame("icon.png") local sp3 = display.newSprite(frame, display.width/4*3, display.cy) self:addChild(sp3) end
可以看到这三种传入filename参数,可以创建出一样的精灵效果来。
上面代码中,display.width是屏幕的宽,相当于getWinSize().width,display.cy是屏幕高度的一半,相当于getWinSize().height/2
创建之后,对于给精灵进行缩放,旋转等一些基本属性设置,和原来的用法相同,这里就不多举例了。