QBOB First Render Tests

Tiny comment: this is the first rendering test, fully unoptimized. There’s a lot of knobs to tweak. I’ll try to make it work on the Milestone/Droid. Promise πŸ™‚

We made some progress today. I finished a few things in the 3D API that made it possible for us to create our first render performance test. Here’s an image:

What you see is how our levels are going to look (at least in one of the worlds, codenamed “Blobbie world”). We use a tile approach as you can see, but instead of 2D tiles we use fullfledged 3D tiles with nice textures on them.

The lighting is of course not dynamic but baked. In fact, we have two textures here: one diffuse with the textures for the tiles (or brushes as we call them) and for each block of 14×11 brushes a 256×256 RGBA lightmap with shadows, lighting and ambient occlusion baked in. We think it looks awesome, and hopefully so do you πŸ™‚

We need your help again! Please run the following rendering demo on your phone:

Please tell us what framerate you get (displayed at the bottom left of the screen) and what phone and Android version you used for testing. Post your results in the comments below.

Btw, all that code is currentl yin the libgdx repository, so you can see how easy it is to actually do that with our new 3D API. That’s all the code we have for the demo.

50 thoughts on “QBOB First Render Tests

  1. Looks really nice!

    I’m getting between 19-25fps on my original Motorola Milestone.

    Bought the book a few weeks back btw and love it! I’ve already done some LWJGL stuff so hoping to get that over to android at some point with libgdx!

  2. Samsung Galaxy S, Android 2.3.3 (DarkyRom 10.1)

    I get 55/56 fps while dragging.
    When I stop touching the screen, it drops to 35 fps.

    Is it some kind of intended optimisation ?
    (like rendering on demand ?)

  3. Juste bluffant πŸ™‚ in french in the text.

    HTC Desire
    39 fps

    How the hell do you do that ? I am going to have a look at the code when time will be an option πŸ™‚ Any chance of a small illustration or tuto about the mapping creation and organisation ?

    By the way, I imagine that zooming is simple to implement if need be as you are using the PerspectiveCamera ?

    Anyway, well done.

  4. The code is very simple. The cam control is actually even simpler :p Pinch-Zoom would probably be 20 lines of code more. For the game we don’t need that though.

    The map for the demo was created in Softimage. Everything is made up of 3D tiles or brushes as we call them. Shiu modeled them, textured them so they tile and then simply copy & pasted them to create that simple demo thingy. It works exactly like your average 2D tile mapping πŸ™‚

    We are working on a level editor with a lot of bells and whistles which should make level creation even faster. I’ll make sure to push as much info on the technical details as possible. I’ll probably have all the rendering tests in the libgdx repository so you can check out the code. The demo above is ~80 lines of code in total and should be very easy to understand πŸ™‚ Most of it is blank lines or standard ApplicationListener boiler plate code.

  5. HTC Desire, rooted and LeeDrOiD (2.4.1)(Installed last week). Android 2.2

    43-44 fps with model filling all the screen, 55-56 50% of map visible, 60-61 with 25% of the model on screen, and the same for 10%.

    Cool indeed, Cheers, Mashu.

  6. LG-P500 or Optimus One
    Android 2.2

    Runs at a solid 60+ FPS ! All the time , even when scrolling. I didn’t think my phone was up to it, really.

  7. 50-60fps with ZTE Blade, CyanogenMod 7, Android 2.3.3. Interesting that this underpowered hardware (ARMv6 600MHz, Adreno 200) performs so well in this benchmark. I blame Android 2.3 πŸ˜‰ .

  8. Tried it on a friend’s HTC Wildfire Android 2.2.1

    7-9 FPS – bear in mind that it has no GPU and it has a slow CPU.


  9. Thanks for all the info everyone, nice to know that what we set out to do in our initial plan is actually possible framerate wise, very happy to see that.
    For those interested I’ll be making a video on how to do the UV’s, textures and getting the lightmaps in as well. I should have this video out in a couple of days just getting done with a couple of other things first.
    Cheers πŸ™‚

  10. This is awesome shiu, looking forward to the video!
    Also like to see some workflow video from 3d designer to exported mesh &uv’s + texture & lightmaps.

    On HTC Desire HD it’s a steady 60 fps with only a single drop to 59fps after a few minutes for only half a second. android 2.3.3.

  11. Samsung galaxy S with gingerbread. 40-45 fps when not scrolling. 50-55 fps when scrolling.

  12. around 25 FPS on Nook Color (1024×600, android 2.1). the fps depends heavily on the objects shown. When I scroll out of the map (i.e. nothing to draw) I get 56 FPS.

    I must also point out that for some bizarre reason, ESGL 2.0 apps run significantly slower than 1.1 apps on this others truly wonderful device.

  13. Model: Samsung Galaxy 551 (also known as Samsung I5510)
    OS: Android v2.2 (Froyo) rooted
    FPS: 83-87

  14. Just fyi a new version should come tomorrow, and after doing a little testing with it I can say that I went from 42-45fps to 54-55fps on HTC Desire so quite the boost πŸ™‚

  15. delete my last one:
    Phone: LG GT540 with custom Android 2.3.3
    FPS: 80-90%: 75-82
    couple of times 67-75 fps

Leave a Reply

Your email address will not be published.