我需要在主应用菜单出现之前在启动画面后显示动画。设计师在3D软件中制作动画,并在PNG图像中逐帧导出。
我搜索并找到某人建议的MovieClip库。我使用它并在Corona的模拟器中运行良好但它在设备中崩溃。我想问题在于记忆。
图片尺寸为2048 x 1536(专为iPad视网膜屏幕设计),平均尺寸约为30KB。大约有300张图片。所以我也不能使用spritesheet。
请建议是否有更好的方法在Corona中进行此类动画。我搜索了几天甚至发布在他们的论坛上,没有好结果。
由于
答案 0 :(得分:0)
据我所知,Corona SDK不支持视频播放(除非它使用本机窗口)。如果动画片段不起作用,您可以尝试加载每个图像,然后使用enterframe函数循环播放它们。
像
这样的东西--table to hold images you are on
local localImages = {}
--how many images in splash
local totalImages = 100
--create images
for i = 1, totalImages, 1 do
--create different images. Change these to load in images using newImageRect of course
localImages[i] = display.newRect( display.contentWidth*.5, display.contentHeight*.5, display.contentWidth, display.contentHeight )
localImages[i]:setFillColor( i/totalImages )
--make images invisible
localImages[i].isVisible = false
end
--timer
local myTimer = 1
--first frame on
localImages[1].isVisible = true
-- listener function to play images one by one
local function onEveryFrame( event )
--count
myTimer = myTimer + 1
--turn on next frame
localImages[myTimer].isVisible = true
--turn off last frame
localImages[myTimer-1].isVisible = false
--played all images in splash
if myTimer == totalImages then
--removes enterFrame
Runtime:removeEventListener( "enterFrame", onEveryFrame )
end
end
-- assign the above function as an "enterFrame" listener
Runtime:addEventListener( "enterFrame", onEveryFrame )
不知道这是否适用于您正在处理的图像。告诉我它是怎么回事! :)
乔。
答案 1 :(得分:0)
图像中超过9M ......哇......
Corona的设计方式你需要使用精灵,所以是的尝试优化pngs(我在TinyPNG(www.tinypng.com)上运气真好,然后将它们组合成精灵表并使用动画功能。
请记住,您可以使用多个精灵表,因此您可以将它们分成3张100张,6张50张等。