Performance fixed?

We haven’t used Lime in a while due to the performance issues; but what sort of performance are we seeing on iOS and Android now?

If it’s improved, we’ll probably switch back :). [import]uid: 13089 topic_id: 8728 reply_id: 308728[/import]

The performance is still pretty bad for large maps, especially the size and complexity that you would require for a project of your size. It has been improved slightly for smaller sparse maps though.

Carlos has told me that currently Ansca are focusing on all the Android fixes they’ve been pushing out recently in the daily builds and when they are done with those they will be focusing on performance and graphics improvements but I am unsure of a possible timescale for this. [import]uid: 5833 topic_id: 8728 reply_id: 31815[/import]

I wonder if I make the same large scene without Lime,only by Corona code, will the performance be better or not ?
thanks. [import]uid: 21680 topic_id: 8728 reply_id: 32141[/import]

It’s certainly worth a try. Will be interesting to see the results. [import]uid: 5833 topic_id: 8728 reply_id: 32150[/import]

What else Ansca does can improve the performance of lime ? e.g. camera culling , batch draw call etc. [import]uid: 12088 topic_id: 8728 reply_id: 32254[/import]

Those are some of the big things, but I’m sure things could be done for physics as well. For one I would love to have visual and physical separated. Naturally without actually knowing what has and hasn’t been done in the engine I couldn’t say for sure what else could be done though. [import]uid: 5833 topic_id: 8728 reply_id: 32297[/import]

“I wonder if I make the same large scene without Lime,only by Corona code, will the performance be better or not ?”

I think if you write your own map code in Corona without Lime it will probably be faster. Not because there’s anything wrong with Lime, but because Graham wrote a toolkit that has to be useful for you, me, and those other guys, too. Whenever you write something generic you have to give up some power in order to get flexibility.

Writing code to fit your exact needs will usually result in better performance.

But you will take a hit on development time by not using something like Lime, so you have to weigh the pros and cons.

For me, I’m starting work on a tile-based adventure game and despite the performance problems, I’m going to use Lime. I figure by the time I get to the point where I’m hitting a wall Ansca will come to the rescue. :slight_smile:

Plus, my game design naturally breaks things up into smaller levels, so I don’t have a thousand acres of tiles to worry about at any one time.

Jay
[import]uid: 9440 topic_id: 8728 reply_id: 32357[/import]

Couldn’t really have put it better my self, thank you very much!

“With great flexibility comes not so great performance” - Uncle Ben ( some liberties taken )

I’m also glad to hear that you are still putting your faith in Lime. Now that the android stuff is essentially finished for now I’m really excited to see what Ansca can come up with to save us all! It’d be nice if one of these days I could make a game too :slight_smile: [import]uid: 5833 topic_id: 8728 reply_id: 32359[/import]

Last night I went to bed with my iPad and read through all the Lime tutorials – which was a mistake because it made me want to get up and work on some stuff! :slight_smile: You’ve built a very versatile tool.

But I’ve started building the initial maps for my new game and after the next version of CPM is out the door will be working on it full time. I can’t wait!

Jay
[import]uid: 9440 topic_id: 8728 reply_id: 32362[/import]

I’m glad to hear I have provided some suitable bedtime material :slight_smile: I’m really looking forward to seeing what you come up with!

I also hope to get some more tutorials up soon, wouldn’t want you to have nothing to read at night now would we? [import]uid: 5833 topic_id: 8728 reply_id: 32365[/import]

I’m working on my own tile engine as a learning exercise with lua and corona.
My test device is an old ipod touch.

I was horrified to begin with when I tried doing tile maps, but with a lot of (extremely frustrating) testing, I’ve found I can get *reasonable* performance for my maps, so I’m wondering what people are expecting?

I get roughly 45 fps on the ipod touch for a map that is 160x128 tiles in size (with each tile being 32x32, or to put it another way, 16x11 (171) tiles onscreen.

It’s not amazing, particularly when I look at the ipod’s 3D performance (so naturally the ipod should be able to push a lot more, but it’s enough for me to get going on a game engine at least).

Is this comparable to Lime? I’d be more than happy to find out quicker ways of doing things for sure, but I’m curious as to what people are actually getting compared to their expectations.

Barry [import]uid: 46639 topic_id: 8728 reply_id: 32575[/import]

Carlos mentioned in his latest blog post that he’s planning on updating the roadmap very soon.

That should at least provide a rough estimate as to when the graphics improvements he mentioned should be implemented. I can guarantee that they’ll roll out way sooner via Daily Builds though, long before the next release is ready to go out. [import]uid: 52430 topic_id: 8728 reply_id: 32582[/import]

Yea I’m looking forward to seeing the roadmap, will be nice to see when (and what) things are planned. Also, congrats on your new job! [import]uid: 5833 topic_id: 8728 reply_id: 32658[/import]

Okay, here’s another idea – take all the tiles that don’t interact with the player character(s) and turn them into a PNG (with transparent areas you can still have parallax scrolling). Now you’re only moving ONE display object around, not dozens/hundreds/thousands.

So then your active tiles only consist of information and not graphics. So you could “draw” your physics boundaries on an invisible layer that sits on top of the scrolling background picture and even though your character is standing on a line, the line is invisible and overlayed onto the background so it looks like he standing on a ledge, etc.

Largest size picture an iPhone or iPad can hold is 2048x2048 – so does that mean it can hold one that’s 1024x4096, or 768x5461? Using 32x32 tiles, that last one would give you the equivalent of a map 24 x 170 tiles in size, but you’re only scrolling one picture (a tile width at a time).

Haven’t played around with this yet and don’t know how this would work in conjunction with Lime, but I know Tiled can spit out a picture of your map and if Lime is only moving a few things rather than everything, doesn’t it seem like a speedup should happen? :slight_smile:

Or, we can just wait and see what Ansca comes up with. :smiley:

Jay

[import]uid: 9440 topic_id: 8728 reply_id: 32994[/import]

what roadmap?

c. [import]uid: 24 topic_id: 8728 reply_id: 32995[/import]

@Jay - That would most likely be a very workable solution as then you would essentially be making very large tiles. You could basically take screenshots of the map and then simply rebuild it in Tiled with those large tiles and Lime should work fine.

@Carlos - Don’t you start that! :slight_smile: [import]uid: 5833 topic_id: 8728 reply_id: 33135[/import]

It is a very workable solution, and what i have done with the game i am making.

I just picked up Corona over two months ago, and started teaching myself LUA, and picked up Lime about a month ago. We will not talk about how many hours per day i work on learning all this, but i will say it is alot.

anyway after picking up lime it made everything much faster, but i had one giant problem. Even with a small map i had poor performance even on a Iphone 4, and my maps were unplayable on a 3g. I am talking about 1-2 FPS on a map that was 15 or 16 tiles high by 30 or so. I started taking tiles out of my game and got a huge performance boost, but limiting tiles means it is much harder to create fun maps.

What i ended up doing was creating alot of tilesets that fit my needs

32x32 for small blocks
320x320 for the actual map tiles
32x 96
96x32

and so on

Then i use tiled to place everything and overlay the physics object layer. This has got me much closer to the performance i am looking for.

here is a video of my progress so far. I still have a good way to go before i am ready to release the game About halfway through the video is the game playing on a actual device. The device is a Iphone 3g.

http://www.youtube.com/watch?v=4_vRqQGTPkQ

I want to thank you on all your work on lime so far. I do hope we see some performance tweaks in Corona soon, and understand that you cannot do much more until we see it.

I am looking forward to your next release. My biggest issue right now is tile scaling, and i read you had a fix for that in the next release. Having tiles overlap on a iphone 4 and having to figure out workarounds made me cry a little inside.

anyway i have been lurking and figuring out everything for two months now, and figured i would finally come out and start posting. I also figured everyone might want to finally see Lime in action on a actual game. Its still too early to post anywhere but in a month or two when i am finished i will be sure to let you know for your featured games. [import]uid: 39391 topic_id: 8728 reply_id: 33885[/import]

Wow! That is looking really nice and it’s good to see some interesting use of the workarounds available to create a really playable game.

I know of a few games now that are getting close to release so will be interesting to see who get’s there first. The race is on :slight_smile:

I really hope some performance boosts come in soon though, then the floodgates of possibility will be open. [import]uid: 5833 topic_id: 8728 reply_id: 33916[/import]

Doing a screenshot of a map isn’t really an option for us; and isn’t what we originally purchased Lime for. We’re not using physics in our title; but we’re interacting with tiles, replacing them, e.t.c on a number of occasions.

Whilst this is a workaround that some people might be able to use, I personally wouldn’t consider this a valid use of Lime (or a reason to buy Lime). Either way, if the performance issues aren’t fixed soon, we’ll just work on our own engine (or hire in an external developer), we’re getting pretty close to launch and have some preview space in a few UK game magazines.

Oh well, tis’ a shame - was excited for this project, but the performance issues have been going on for quite some time now. :slight_smile: [import]uid: 13089 topic_id: 8728 reply_id: 33924[/import]

The biggest speed-up I found with my own tile engine was switching from individual graphics to spritesheets. I wouldn’t say framerates are fantastic, but I’m getting 30 fps solidly (with enough CPU spare for other game elements) on an old ipod touch with 16x11 tiles refreshed every frame (each tile is 32x32 pixels) on a map that is 160x160 tiles in size.
I really have no idea how Lime does it, but considering what I used to get with my first attempts, and comparing this to the speed complaints I hear, I’d say that’s likely the issue here.
Sprite sheets have their own quirks, but nothing I haven’t found a work-around for. [import]uid: 46639 topic_id: 8728 reply_id: 33945[/import]