这是显示图像的正常方式:
local img = display.newImage("image.png");
但是将所有图像放在一张大图像中并从 Zwoptex 导出不是节省内存吗?有从精灵表创建动画精灵的文档,但是从精灵表中提取单个图像呢?
local zwoptexData = require "sheet1"
local data = zwoptexData.getSpriteSheetData()
//then what?
这是显示图像的正常方式:
local img = display.newImage("image.png");
但是将所有图像放在一张大图像中并从 Zwoptex 导出不是节省内存吗?有从精灵表创建动画精灵的文档,但是从精灵表中提取单个图像呢?
local zwoptexData = require "sheet1"
local data = zwoptexData.getSpriteSheetData()
//then what?
从平铺表制作静态图像的命令如下所示:
local tileSheet = sprite.newSpriteSheet("tiles.png", 64, 64)
local tileSet = sprite.newSpriteSet(tileSheet, 1, 10)
local tile = sprite.newSprite(tileSet)
tile.currentFrame = 5
这假设工作表上的所有图块都是 64x64,但您可以轻松调整这些命令以使用您的精灵表数据。需要注意的重要事项是 newSprite() 和 .currentFrame
编辑:您评论说您无法弄清楚如何使用精灵数据,所以修改后的代码是
local data = require("tiles.lua")
local tileSheet = sprite.newSpriteSheetFromData("tiles.png", data.getSpriteSheetData())
local tileSet = sprite.newSpriteSet(tileSheet, 1, 3)
local tile = sprite.newSprite(tileSet)
tile.currentFrame = 2
要了解其工作原理,请参阅 http://developer.anscamobile.com/reference/sprite-sheets