Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

Forums:

I should have posted this in August when I was starting on my three games, but instead, like a fool, I'm posting it today, the day I submit them :)

Which phones are best for games? My employers picked the LX4400, LX6000, T720, and a530, seemingly arbitrarily. The game we're submitting today runs acceptably on the LX4400 and the T720, that is, around 8-10 fps (which, as a former GBA programmer used to 30-60hz, sucks!). On the a530 and the LX6000, they're stuck at about 4fps. Should we attempt to convince our employers to dump the a530 and the LX6000 in favor of something else? I know I've read that Kufa supports these four phones, what are your reasons, Kufa?

Also, as a side question, which phones are the most popular? Maybe thats why we're supporting such seemingly slow phones.

My reasons are quite simple: the biggest market on verizon is for those phones (especially t720 and lg4400)... So my boss told me to develop for them ;)
/kUfa

My reasons are quite simple: the biggest market on verizon is for those phones (especially t720 and lg4400)... So my boss told me to develop for them ;)
/kUfa

What you have developed for is known as the *core* handsets for Verizon. They have the biggest marketshare of all the handsets currently and as suc hthe choice may not have been as arbitrary as it may seem to you. They are a good choice.
4 fps on the a530 and vx6000 is pretty rough, though. In order to make the game appealing I think you should definitely do something to increase the frame rate. I am surprised it is that slow, though, and maybe reworking some of the core algorithms in your game will help. Since you're coming from the GBA you may have had the wrong hat on, so to speak, and no worried about performance issues that much. Since phones do not have the DMA support and other amenities of the GBA, and pretty poor displays, you should definitely spend some time thinking of ways how you can make certain things less time consuming and easier for the hardware, especially your blitting routines. Even the slightest *mistake* can have devastating performance consequences on cellphones. A poorly implemented collision detection, a poor clipping algorithm, etc. all these are things you will need to optimize with the handset's architecture in mind.
Just to give you some sort of a reference. It is not normal for applications to run at 4 fps on these handsets. Like the others they should be able to get in the neighborhood of 10 fps, maybe 8 or so in the case of the vx6000, which is known for being a bit tardy.

What you have developed for is known as the *core* handsets for Verizon. They have the biggest marketshare of all the handsets currently and as suc hthe choice may not have been as arbitrary as it may seem to you. They are a good choice.
4 fps on the a530 and vx6000 is pretty rough, though. In order to make the game appealing I think you should definitely do something to increase the frame rate. I am surprised it is that slow, though, and maybe reworking some of the core algorithms in your game will help. Since you're coming from the GBA you may have had the wrong hat on, so to speak, and no worried about performance issues that much. Since phones do not have the DMA support and other amenities of the GBA, and pretty poor displays, you should definitely spend some time thinking of ways how you can make certain things less time consuming and easier for the hardware, especially your blitting routines. Even the slightest *mistake* can have devastating performance consequences on cellphones. A poorly implemented collision detection, a poor clipping algorithm, etc. all these are things you will need to optimize with the handset's architecture in mind.
Just to give you some sort of a reference. It is not normal for applications to run at 4 fps on these handsets. Like the others they should be able to get in the neighborhood of 10 fps, maybe 8 or so in the case of the vx6000, which is known for being a bit tardy.

Oh, my background is actually more Gameboy Color, honestly. But no, I am not proud of the 4 FPS (nor am I proud of 8 to 10, but what can you do?), but from what I had read on these forums, the a530's screen is somewhat incapable of rendering more than 4 fps, and that the LX6000 is, as you said, somewhat tardy.
The first title (and really the only one we've actually spent any time testing on phones) has scrolling backgrounds and maybe 4 or 5 enemies on screen from time to time. Its a port from J2ME, so it has to do a lot of things that Brew doesn't really do well, and well, I'm just pleased I got it running decently on the first two phones. Didn't get the second two until about a week before the games were due, so its to be expected.
Any general suggestions for improving framerates on bitmap-intensive scrolling backgrounds, though?
(Oh, and trust me, on GBA, its a frickin' struggle all the way to get good frame rates, 'cause the producers always expect PS2-quality bullshit... fun quote from when I was showing off a very nice looking game - "I always forget how crappy a GBA looks compared to my PS2")

Oh, my background is actually more Gameboy Color, honestly. But no, I am not proud of the 4 FPS (nor am I proud of 8 to 10, but what can you do?), but from what I had read on these forums, the a530's screen is somewhat incapable of rendering more than 4 fps, and that the LX6000 is, as you said, somewhat tardy.
The first title (and really the only one we've actually spent any time testing on phones) has scrolling backgrounds and maybe 4 or 5 enemies on screen from time to time. Its a port from J2ME, so it has to do a lot of things that Brew doesn't really do well, and well, I'm just pleased I got it running decently on the first two phones. Didn't get the second two until about a week before the games were due, so its to be expected.
Any general suggestions for improving framerates on bitmap-intensive scrolling backgrounds, though?
(Oh, and trust me, on GBA, its a frickin' struggle all the way to get good frame rates, 'cause the producers always expect PS2-quality bullshit... fun quote from when I was showing off a very nice looking game - "I always forget how crappy a GBA looks compared to my PS2")

To be more succinct, having seen a couple games on the LX6000, I think our game's design (again, this is a port from a Nokia 60 series game written in Java) is a little much for it. The games I saw were simpler games, whereas I have a straight up Megaman style scrolling action game.
Is anyone else having to do roughly SNES-level stuff in Brew? Or better yet, can anyone show me their websites so I can get a feel for what is really appropriate on a Brew 1.1 platform?

To be more succinct, having seen a couple games on the LX6000, I think our game's design (again, this is a port from a Nokia 60 series game written in Java) is a little much for it. The games I saw were simpler games, whereas I have a straight up Megaman style scrolling action game.
Is anyone else having to do roughly SNES-level stuff in Brew? Or better yet, can anyone show me their websites so I can get a feel for what is really appropriate on a Brew 1.1 platform?

Just in general I'd suggest browsing the sites of some of the bigger publishers like
jamdat.com
sorrent.com
thumbworks.com
airborne.com
mforma.com
centerscore.com
and so forth. I think that'll help to give you an idea for the *substance* of Brew titles.
You won't be able to get real SNES quality titles, but you CAN do some cool things in Brew. However in those cases you will have to invest some time into R&D fathoming out technologies to make things work for your particular projects etc.
One of the key things to keep in mind is the CONVERTBMP is dog-slow, so make sure you pre-convert all your bitmaps at load time so that you only deal with bitblits.
Transparent bitblits are als overy slow. Try to avoid them as good as you can.
DBGPRINTF - if you use it - is dragging MANY phones down phenomenally like ouldn't believe it. Instead of using it straight out, wrap the call so you can remove it easily from your production build.
Hope that helps for a start.

Just in general I'd suggest browsing the sites of some of the bigger publishers like
jamdat.com
sorrent.com
thumbworks.com
airborne.com
mforma.com
centerscore.com
and so forth. I think that'll help to give you an idea for the *substance* of Brew titles.
You won't be able to get real SNES quality titles, but you CAN do some cool things in Brew. However in those cases you will have to invest some time into R&D fathoming out technologies to make things work for your particular projects etc.
One of the key things to keep in mind is the CONVERTBMP is dog-slow, so make sure you pre-convert all your bitmaps at load time so that you only deal with bitblits.
Transparent bitblits are als overy slow. Try to avoid them as good as you can.
DBGPRINTF - if you use it - is dragging MANY phones down phenomenally like ouldn't believe it. Instead of using it straight out, wrap the call so you can remove it easily from your production build.
Hope that helps for a start.

Sorry, have to make some ad for my company ;)
games.macrospace.com
(DragonIsland and Detonate(close to your megaman?) are already available for brew, some more coming soon, especially cartoon network stuffs)
Quote:The games I saw were simpler games, whereas I have a straight up Megaman style scrolling action game.
I must agree.. No offence to anyone, but i still think there is more quality games for J2ME rather than for brew :( Btw correct framerates can be reached imo, and if the original game is optimized, the fps value should not be a problem for your brew port.
Dragon gives you good tips, and they are vital for good framerates. Moreover if you want to port j2me games, my tip would be to first convert the j2me game, ie removing all the map caching etc.. Basically all the g = image.getGraphics(); g.draw.. should be removed ;) (may sounds obvious, but well)
Regards,
/kUfa

Sorry, have to make some ad for my company ;)
games.macrospace.com
(DragonIsland and Detonate(close to your megaman?) are already available for brew, some more coming soon, especially cartoon network stuffs)
Quote:The games I saw were simpler games, whereas I have a straight up Megaman style scrolling action game.
I must agree.. No offence to anyone, but i still think there is more quality games for J2ME rather than for brew :( Btw correct framerates can be reached imo, and if the original game is optimized, the fps value should not be a problem for your brew port.
Dragon gives you good tips, and they are vital for good framerates. Moreover if you want to port j2me games, my tip would be to first convert the j2me game, ie removing all the map caching etc.. Basically all the g = image.getGraphics(); g.draw.. should be removed ;) (may sounds obvious, but well)
Regards,
/kUfa

Very nice stuff kufa!
Too many transparent images causing the problems, prolly, but, like I said, can't do anything about that, I'm just the port monkey on these projects.
Right now I'm working in Montana, and my co-worker in San Diego is the only one with phones. Hence I personally have never played the games on the phones! Ridiculous, no? But I just saw videos today, and turns out my coworker just can't tell framerate very well. The games appear to be about 6 fps on the LX6000 - still slow, but it really doesn't look that bad.
Anyway, though, when I get my two phones (a530 and t720), I'll check out all your games kufa, 'cause they look like pretty decent games! Anyone else got the goods?

Very nice stuff kufa!
Too many transparent images causing the problems, prolly, but, like I said, can't do anything about that, I'm just the port monkey on these projects.
Right now I'm working in Montana, and my co-worker in San Diego is the only one with phones. Hence I personally have never played the games on the phones! Ridiculous, no? But I just saw videos today, and turns out my coworker just can't tell framerate very well. The games appear to be about 6 fps on the LX6000 - still slow, but it really doesn't look that bad.
Anyway, though, when I get my two phones (a530 and t720), I'll check out all your games kufa, 'cause they look like pretty decent games! Anyone else got the goods?