Update on Performance?

3rd and particularly 4th gen devices are plenty quick enough, my worst test case is a 2nd gen ipod touch.
Is there a way in the app store to limit a submission by hardware (eg everything 3rd gen or higher is valid, but slower is not?). The last thing anyone needs is getting crappy ratings from people whose devices were superceded in the stone age (ahem, like mine!).

To be honest the ipad2 surprised me, it runs pretty much anything physics-wise I wish to chuck at it, and I wouldn’t say the 2nd gen stuff is ridonkulously slow either, it all boils down to how optimised you can make your code (which is something I enjoy doing, but admit it isn’t really a RAD thing).

If what Walter says is true, I don’t actually see tooooo much possibilities for speed gains in this particular instance, as in fact my biggest speed boost comes from just setting the .isVisible property of each tile each frame, assuming it is invisible (if I use a map always full of tiles then framerate drops significantly, to the point where I’d not be convinced I can get a steady 30fps with full game code running).

But, I certainly won’t knock attempts to speed things up :smiley: [import]uid: 46639 topic_id: 12910 reply_id: 78221[/import]

IPAD2 is a beast I agree :slight_smile:

I will say that in my current game (which is NOT lime based) I have on level 1 3829 vertices which make up the level, plus several physics objects + music and everything, images are imageRect’s for iPad, and scaled down for other devices.

With all that I always keep 60 fps. What’s funny though is a 3gs will keep high 40’s low 50’s and an ipod4g will be mid 50s and hit 60.

If I went more simple and cut vertices down to half of that, then it’s pretty much the same for ipod4g/ipad2 and a 3gs being at that point in low /mid 50’s so not much gain.
A long while back, I did try an iPod 2nd gen and that was CRAPTASTIC. So, this question about hardware limitation I would be very interested in. I’ve looked around, but I am not sure how to do that. It would be very helpful to avoid the 1 starring on app store/android market/amazon/nook etc :slight_smile:
ng [import]uid: 61600 topic_id: 12910 reply_id: 78229[/import]

Thank you everyone for understanding why I am finding it so difficult to get the performance that everyone wants and not just fire bombing my house ( fairly extreme example ) for the delays that have occurred.

So many times I’ve considered making a “Lime Express” tool that simply has the level loading from Tiled and then just very fast tile displaying/scrolling using the indexing method ( not sure what the real name is, just made that up ) but at present I just haven’t found the time. Plus I’m not sure if this is wanted as I figure that most people that want that sort of speed without any of the extra regular Lime features are perfectly capable, and they would probably prefer, to simply write their own code. Which clearly quite a few of you have done with great success :slight_smile:

@ Walter - You have indeed made my day with this news and whenever you get to the stage where you have something testable I would love to be able to test it.
[import]uid: 5833 topic_id: 12910 reply_id: 78298[/import]

I’d like to try my hands on Lime this weekend!

has anyone released an iPad2 game made with Lime + Corona?

EDIT2: I just saw Don’t Die, and ChocoRun that were made with Lime. Gonna test them on the iPad2.

Links:
http://itunes.apple.com/gb/app/dont-die/id440013635?mt=8
http://itunes.apple.com/gb/app/chocorun/id435292025?mt=8
EDIT: if anyone has a working protoype on the iPad2, let me know, i’m super interested in trying it out (on adhoc build) [import]uid: 97745 topic_id: 12910 reply_id: 79240[/import]

The biggest problem is that the tutorials may as well not exist. There was 1 half decent tutorial on making a dont-die/chocorun style game, but the person that created it lost the files. Without the files, its impossible to do the tutorial.

I’ve tried for months to do a decent Lime based game, but there is so little in the way of documentation that its just quite simply not possible. When I did get a somewhat basic level working, it was very slow and laggy.

I completely appreciate that work has been done to attempt to improve Lime’s performance issues, and I really hate to say this because Graham is a great guy, but it really shouldn’t be a paid product in its current form, especially since by his own admission, Graham doesn’t have time to work on it much.

It’s a sad situation. I love what Lime can be capable of, but the fact that only two developers have been able to make anything of it shows that there is something very wrong, and it wouldn’t take much to put it right.

A decent tutorial to replace the broken one (http://www.justaddli.me/tutorial.php?t=0&id=15) would probably be enough to get it noticed more as more of us would get apps out into the wild built on Lime. [import]uid: 61052 topic_id: 12910 reply_id: 79258[/import]

don’t give up Graham, i just purchased a copy of Lime to show support! [import]uid: 97745 topic_id: 12910 reply_id: 79263[/import]

@ rick.sketchy the link to the tutorial you gave http://www.justaddli.me/tutorial.php?t=0&id=15 has broken links to the project files. Could you re-upload them to a filesharing site? [import]uid: 97745 topic_id: 12910 reply_id: 79504[/import]

i just tested both Choco Run and Don’t Die on the iPad2. Performance is phenomenal, from a player standpoint. I can forsee more complicated games emerging that use Lime.

anyone else actively developing on Lime atm? [import]uid: 97745 topic_id: 12910 reply_id: 79506[/import]

That’s the problem - nobody (myself included) has the files, so the one tutorial that exists to show you how to make a game, is broken. We need someone to write a new one or find those files. [import]uid: 61052 topic_id: 12910 reply_id: 79509[/import]

To be 100% honest, I purchased Lime over 6 months ago (May of 2011) and despite the countless improvements and upgrades to the SDK engine, Lime has still proven to be unusable for Android devices.

It seems that the culprit is related to the number of tiles on the screen, and the fact that there isn’t any blitting features of Corona yet, and no culling features in Lime.

Without one or the other (preferably both), Lime doesn’t seem to be a viable solution for any of the projects I’ve tried it with.

I’m hoping this changes soon, as I too am a paying subscriber to Lime and I’m looking forward to using in it future projects. [import]uid: 49447 topic_id: 12910 reply_id: 79510[/import]

Hey there coders!

What kind of tutorial would you like to have? I may find some time to make it for you if it’s simple enough.

I must say I’ve used that tutorial you are pointing out without any file available and find it very useful even without that. It’s the base of ChocoRun, just heavily modified.

ATM I’m working on another Lime project for a game that sports top-down view so it’s a whole different thing but the way I use it’s the same as ChocoRun and it speeds up my development cicle A LOT. And that’s using it just for setting positions for everything and then load them by code as I want them to be. No tile layers on Tiled, just object layers. That helps me make profit of the scrolling map functionality too. I think I use it in a ‘Lime Express’ way as Graham pointed out.

I’ll be glad to answer any questions you have about using Lime if I know the answer, Graham is a good friend and I think he should get some help from developers who already succeeded using Lime :wink:

So that’s it, do the Choco people! (haha) [import]uid: 13811 topic_id: 12910 reply_id: 79977[/import]

Hello,

I have uploaded the zip file for the platformTutorial here:

https://skydrive.live.com/?cid=7a6760c60f016df0#cid=7A6760C60F016DF0&id=7A6760C60F016DF0!116

Lime not included of course!
Cheers

evs [import]uid: 8366 topic_id: 12910 reply_id: 80001[/import]

@ rick.sketchy

I think it is perfectly possible to create a game without that specific tutorial, but as evs has now awesomely uploaded the files I will put them up on the site now.

I may not have much time to work on it but I am doing as much as I can and am supporting countless emails every day. As any tool developer will tell you, making tools is not going to make you super rich. You still have to work on other things to pay the bills. Tools are a niche of a niche of a niche.

I appreciate all the support that people have been giving me and I am not giving up on it! :slight_smile: Hopefully with the possible solutions that Walter has mentioned will be what we need. Plus when Corona supports desktop builds soon that should bring some interesting things with it.

@ Alejandro

As always, you’re awesome! Any tutorials you wish to write will be a super help so give me a shout if/when you create some and I will happily host them.

@ evs

Thank you so much for uploading them!!! I will put them up on my server now for everyone to enjoy! [import]uid: 5833 topic_id: 12910 reply_id: 80214[/import]

hi guys. quick question

i noticed on the simulator, Lime’s samples (the Viewer) runs around 30 fps (Hello World, Animations and Physics Slide). I changed the FPS to 60 in config.lua

i’m about to build them for the ipad/ipod over the weekend. Has anyone done it, and what FPS did you guys get? [import]uid: 97745 topic_id: 12910 reply_id: 80873[/import]

I haven’t done that with the sample projects but I’ve done it with my actual work in progress and it sports a rock solid 60 fps. [import]uid: 13811 topic_id: 12910 reply_id: 80877[/import]

Thomas6 is spot on. I don’t understand why this is not implemented yet?

Corona has issues dealing with too many display objects. For example, I had a game running at 27fps using tiles (not lime though). There were 80 objects on screen and the result was horrible performance. I optimized and reduced the number to 25 objects and now I get 60fps easily.

The iPhone has a GPU - size of image should not impact speed when rendering. The only bottleneck is caused by Corona’s object handling code.

Tiles are a great way for designers to build levels, that’s all. The way Lime should work is it should have direct access to texture memory. Sections of tile based maps should be prerendered and stored in texture memory just before they are to be displayed. So, instead of having a small ledge platform depicted by 20 tiles meaning 20 objects (slow!) you instead have one pre-rendered display object made of 20 tiles.

I battled with the performance of my first game until I realized where the bottleneck was. Once it became clear it was easy to design around, but it’s still an inconvenience.

If you view the source code to games like Canabalt you can see each building is made of 100s of tiny window tiles. The building is prerendered and there is no speed impact. Currently, this is impossible to do in corona. I hope it is addressed using thomas6s method above.

Because I love corona!!! [import]uid: 107380 topic_id: 12910 reply_id: 87749[/import]

See

http://developer.anscamobile.com/forum/2010/07/06/iphone-4-problem?page=1#comment-89678 [import]uid: 24 topic_id: 12910 reply_id: 89680[/import]

Ok so I just figured out how pimp mr C and Walter (and rest of ansca for that matter) truly are!

http://www.youtube.com/watch?v=nzdjNDcn2gE&feature=youtu.be
The performance boost is AMAZING. I think those who skipped out on Lime are going to eat crow!

-ng

@cellphonegaming [import]uid: 61600 topic_id: 12910 reply_id: 90272[/import]

It does indeed look awesome, I can’t wait to test Lime against it! [import]uid: 5833 topic_id: 12910 reply_id: 90277[/import]

Holy crap if that works with Lime too we’re going to see a huge number of games being made on Corona very soon :smiley:

Fantastic work! [import]uid: 61052 topic_id: 12910 reply_id: 90290[/import]