×

Discussion Board

Results 1 to 4 of 4
  1. #1
    Registered User
    Join Date
    Jun 2006
    Posts
    5

    Help improving framerate on Nokia N80 using JSR184

    Hi everyone,

    Im in a real mess with this project :(

    Im making a 3d tennis game using j3r184 and im having real issues with the frame rate, it sits at around 5 fps, when I test it on a Nokia N80.

    I've been spending the last few days investigating what specifically slows the engine down and i've come across a worrying discovery.

    To give some further info, the action on court is shown very similar to Virtua Tennis (i.e. the camera sits behind & above the player). As a result the court takes up a large portion of screen. (say 60% of the screen)
    Whenever I render the court only, and nothing else, the game still runs slow - around 11 fps !! (if the court is untextured it is 17 fps)

    To put this into context, if i render an empty world my framerate is 33 fps.
    If i place in the court, the framerate drops nearly 20 frames!!

    I've read elsewhere about fillrate being a problem on mobile phones, is this what im experiencing? If so what is the steps to avoid it?

    I find this drop hard to understand, i must have something else set wrong. Can anyone provide me with some ideas about what to check out, settings within the render pipeline that can be used to speed up execution.?

    Useful info:
    screen resolution - 352x416
    Camera FOV - 60
    Camera Aspect - 0.84

    My meshes are being created in Lightwave, and exported to h3t using HiCorp plugins. Most people seem to be using 3DMax. Are there any known issues using lightwave (adding extra triangles, keyframes, groups etc.)

    Any advice given would be useful,

    Merci

    Barry

  2. #2
    Registered User
    Join Date
    May 2005
    Posts
    12

    Re: Help improving framerate on Nokia N80 using JSR184

    Salut Barry,

    Well you should count the number of vertices in your world and try to minimize the geometric complexity. (I have some code if you want to introspect your world and print you out some statistics).

    Ff course the number of vertices has a big impact on your rendering FPS.

    m3g has poor performances, so don't expect to get nice FPS with it. I'm have been fighting for months making m3g rendering faster for my game. And it's tough to improve it...

    here is a good article about it:

    http://developer.sonyericsson.com/si...celeration.jsp

    Bonne chance,
    Franck Calzada

    http://www.me-studio.com/
    Franck Calzada
    Mobile Entertainment Studio
    http://www.me-studio.com

  3. #3
    Registered User
    Join Date
    May 2005
    Posts
    12

    Re: Help improving framerate on Nokia N80 using JSR184

    public static int traverseCountMeshes(Group gp) {
    int c = 0;
    Node n;
    for (int i = 0; i < gp.getChildCount(); i++) {
    n = gp.getChild(i);
    if (n instanceof Group) {
    c += traverseCountMeshes((Group) n);
    }
    else if (n instanceof Mesh) {
    c += ((Mesh) n).getSubmeshCount();
    }
    else if (n instanceof Sprite3D) {
    c ++;
    }
    }
    return c;
    }

    public static int traverseCountVertex(Group gp) {
    int c = 0;
    Node n;
    for (int i = 0; i < gp.getChildCount(); i++) {
    n = gp.getChild(i);
    if (n instanceof Group) {
    c += traverseCountVertex((Group) n);
    }
    else if (n instanceof Mesh) {
    c += ((Mesh) n).getVertexBuffer().getVertexCount();
    }
    else if (n instanceof Sprite3D) {
    c ++;
    }
    }
    return c;
    }
    Franck Calzada
    Mobile Entertainment Studio
    http://www.me-studio.com

  4. #4
    Registered User
    Join Date
    Jun 2006
    Posts
    5

    Re: Help improving framerate on Nokia N80 using JSR184

    Ciao Calzada,

    Thank you for your replies.

    I have already wrote a piece of code similar to urs to gather vertex/polygon info. Its very useful, although I found that it only works on phones that run ver 1.1 of jsr184 ( getVertexCount belongs to 1.1)

    I honestly believe its the screen size that causes N80 to run cr&p.

    So the solution (until hardware accelerated phones are more popular) is to reduce the region that is rendered to. (render the background to a texture and set this as the background)
    Unfortunately this has the adverse effect of reducing a 3D game into 2.5D game :(

    I'll look into the article and see what I can find.

    Thanks again

    Barry

Similar Threads

  1. ###Upgrading Firmware###
    By zahid44 in forum General Development Questions
    Replies: 27
    Last Post: 2008-10-21, 07:17
  2. Nokia N-Series Complete Model Line-Up
    By Dopod in forum General Development Questions
    Replies: 6
    Last Post: 2008-07-22, 20:16
  3. Replies: 2
    Last Post: 2008-04-03, 19:02
  4. Nokia User Agent Header
    By rajendrap16 in forum Browsing and Mark-ups
    Replies: 17
    Last Post: 2008-02-24, 15:43
  5. Infra-red capability
    By Symbian_Challenge_0412 in forum General Development Questions
    Replies: 1
    Last Post: 2005-08-16, 18:24

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •