Low Poly Hardware Specs

1
Nintendo DS

screen_ds.png

suggested polygon count for performance (total visible): 2000
texture memory (per screen): 512kb
max texture size: 1024px x 1024px
screen colour depth: 18-bit (260,000 colours)
alpha blending: 5-bit (32 colours)
suggested texture size: under 128 x 128


Sony PSP

screen_psp.png

suggested polygon count for performance (total visible): 50,000
texture memory: 2mb
max texture size: 128px x 128px
screen colour depth: 16-bit (65,536 colours)
alpha blending: 8-bit (256 colours)


iPhone 3G

screen_mobile.png

suggested polygon count for performance (total visible): 7000
texture memory: 24MB
max texture size: 1024px x 1024px
screen colour depth: 16-bit (65,536 colours)
alpha blending: free! (use PNG)
suggested texture size: under 512 x 512

Replies

  • steady
    cool cool cool
    just an idea
    lets do a vote and choose one format
    and then use challenges/contests to generate content and make a lowpoly polycount.net game hoooraaaayyy
  • hawken
    depends which format we can get the most info for really. devs, please chip in.
  • master of unlocking
    Here is what I know about the DS.

    polygons per screen at 60fps: <font color="red"> 2000 </font> Well, this is true if you plan to have 3D going on both screens. Which I wouldn't recommend. A good scenario is 2000 polys per frame at 60fps. You can also pull off 4000 polys per frame if you drop to 30 fps.
  • hawken
    there's a limited number of verts it can hold in memory - so you can only get 2048 polygons on each screen even if you're running at 1 frame per second.

    It really is a hard fast rule of the hardware according to a thread on http://forum.gbadev.org/
  • KDR_11k
    If you give it a framebuffer you could draw half the scene in the first pass and the other half in the second pass.
  • Toomas
    [ QUOTE ]
    If you give it a framebuffer you could draw half the scene in the first pass and the other half in the second pass.

    [/ QUOTE ]

    If it could only hold 2048tris in memory then you would have to do t&l twice aswell and i dont know how good you can do it (i guess you cant really).
  • lkraan
    Here's what I know about the PSP. In the end how much of the specs that you will use depends on your engine and how much resources is needed for other stuff.

    polygons per screen at 60fps: 80k per frame is what we're sticking with as the limit
    texture memory (per screen): ?
    max texture size: 128px x 128px (yep)
    screen colour depth: ?
    3d data format: GMO
    texture format: GIM which goes from 4 bit indexed to 32bit RGBA. With the standard GMO model converter the texture gets baked in the binary GMO file along with the model.
    alpha blending: 8bit
  • Toomas
    I was just wondering, so you use 256colour textures for DS now is it viable to have custom pallet for each texture?
  • hawken
    [ QUOTE ]
    I was just wondering, so you use 256colour textures for DS now is it viable to have custom pallet for each texture?

    [/ QUOTE ]

    that would appear to be the case
  • Toomas
    DS can do coloured lightning, that is proven by AC:WW fireworks.
    AC does semi transparency aswell (embarassed animation).
  • CheapAlert
    P100 w/ Voodoo2 can go 45fps with 3500 polys onscreen with 5 256x256 textures on 640x480 iirc :P
  • jimiyo
    i dont know if this is the right area to ask, (Great info BTW!!!) what kind of polycount/texture does WOW characters and objects have? they all seem to be relatively low poly eh?
  • danr
    Offline / Send Message
    danr polycounter lvl 11
    (disclaimer - all the following info is apparent to anyone with a copy of the noted game) ... 128x128 isn't a "maximum" size for the PSP hardware - on our last PSP game, you'll see several environment textures scattered around the place at that res x2, and a couple at even bigger than that. 128 is however a good guide for a practical top-end size for general texture use. "Maximum" size is 1024x1024


    Also - the screen display is 24-bit, but some games run in a 16-bit mode.
  • Ryno
    Yeah, we're going bigger than 128s as well. I did a bunch at 256, and a few at 512x256 with the intention of downsizing as needed. Apparently it isn't needed, as it is running fine.
  • CMB
    Does anybody know anything about ngage?
  • Steve Schulze
    Offline / Send Message
    Steve Schulze polycounter lvl 11
    I've developed for NGage. I'll have to look up the specifics as its been a while, but I can tell you for a start theres no alpha blending. It supports Targa format textures. Pretty sure the screen is 16 bit. Maximum texture size appears to be 4096*4096 but feasibly you'd never want anything bigger than 128*128 unless you're texturing vast areas of level geometry or something.
  • CMB
    Thanks JackBlade.
    Would this tri. count plan work good?
    600 main character
    400-600 npcs.
    100-200 a weapon
    200 doodads and environment art.
    Any examples,portfolios,textures or wireframes of ngage games would be great.
  • uk_resistant
    Offline / Send Message
    uk_resistant polygon
    what about extra maps like spec, normal etc etc

    I know Psp can do spec maps, but im intrested in normals.
    Ps2 can do them so it isnt out the question is it?
  • Toomas
    PS2 can render normalmaps? I kind of doubt it.
  • uk_resistant
    Offline / Send Message
    uk_resistant polygon
    quoted from wikipedia (which actually used to say a few games that used normal maps, one of them being path of neo)

    "Currently, normal mapping has been utilized successfully and extensively on both the PC and gaming consoles. Initially, Microsoft's Xbox was the only home game console to fully support this effect, whereas other consoles use a software-only implementation as they don't support it directly on hardware."


    so i guess yeah,ps2 can do them.
  • Joseph Silverman
    [ QUOTE ]

    so i guess yeah,ps2 can do them.

    [/ QUOTE ]

    I'm not sure that's true. Anyone can add to Wikipedia.


    I don't have any real knowledge about this, but I seem to remember compaines like Ubisoft specifically mentioning what effects they were using instead of normal mapping when making a PS2 version of some of their Xbox games. (Like SCCT and GR2)
  • uk_resistant
    Offline / Send Message
    uk_resistant polygon
    yeah thats true.
    At the very least in terms of consoles xbox can because it has doom 3.
    anyways, would be cool if psp could do it, regardless of how it would look on the tiny screen.
  • Joseph Silverman
    At the PSP's texture resolutions I don't imagine normals would look great.
  • CrazyButcher
    Offline / Send Message
    CrazyButcher polycounter lvl 11
    no real specs, but a nice overview of "same game" on multi platforms, on the left you can change to the different platforms

    http://startrek.bethsoft.com/art/ta_pspscreens.html
  • achmedthesnake
    kinda, late on this thread, but what the hell...

    regarding the PSP - it can play flash swf's through its webbrowser function, and as far is a know it only takes flash player 6 stuff - anyone one know wether that's increased with the firmware upgrades - it'd be nice if we could get some as2/as3 action happening

    (and damn sony for making dev on a psp so bloomin hard).
  • fade1
    Offline / Send Message
    fade1 polycounter lvl 9
    Toomas wrote: »
    I was just wondering, so you use 256colour textures for DS now is it viable to have custom pallet for each texture?

    you can't use more then 256 colors on the ds. for alpha texture there is just stencil then. for 5bit alpha 32 colors for 3bit alpha 8 colors.
    there is converter to "autoconvert" the textures, but the quality is not that good. especially for alphas you need to handpick to get better results.
  • jpgourley
    alpha blending: 1,3, and 5 Bit

    Getting alpha sorting to work correctly on the DS can be a pain, if I can go with a 1 bit I absolutely do.

    There is a max limit of 2000 Polys per frame, but you can also run into problems if there is over about 400 polys being drawn in a single line. This can cause massive screen tearing issues.

    We try to keep our levels under 10k tri's to prevent performance issues, but I have seen some that run perfectly fine coming in at around 17k tris.
    Thetexture memory (per screen) number given doesn't sound right. It may depend on your engine and how the memory banks are being distributed between compressed textures, uncompressed textures, as well as sound and model data. In my experience I've had two 128Kb banks delegated for compressed and uncompressed textures, with an additional 128 bank being partially (64Kb) used to uncompress the textures while the additional 64Kb is used for sound. All additional memory goes to model data and the executable files. Designating one bank for compressed textures you do lose half of another, but you fit about three times the textures in when compressed.
  • dactilardesign
    what about adding Iphone to the thread?
    from an iphone thread:
    rul119 wrote: »
    I´using unity3d for developing a game for the iphone and the limit with this engine is 7000triangles on screen


    suggested polygon count for performance (total visible): 7000?
    texture memory (per screen): 24MB?
    max texture size: 1024px x 1024px
    screen colour depth: 16-bit (65,000 colours)
    3d data format: ?
    texture format: ?
    alpha blending: ?
    suggested texture size: under 512?


    The only model I've done for Iphone was around 2000 triangles and 512x512 texture for an OpenGLES engine.

    btw, I think DS specs are correct.
  • genericnamedave
    In my experience of doing art for a few platforms, the DS is the ultimate exercise in creating low-poly/low-texture models. We had to make whole characters with 300 tris and use 100x100 maps.

    The low-poly character also has to register nicely in that small frame. So, my vote is for the DS format.

    (PSP if we were doing 1000 tris with 256x256 maps)
  • ptoing
    I am quite sure that the NDS has a bitdepth of 5 bit per channel, making it 15 bit of colourrange, not 18.
  • fade1
    Offline / Send Message
    fade1 polycounter lvl 9
    basically this is right. but when combining textures with vertex colors you can get 18bit. honestly, this doesn't make much difference for an artist, except maybe for skydome gradients.
  • Harry
    lkraan wrote: »
    Here's what I know about the PSP. In the end how much of the specs that you will use depends on your engine and how much resources is needed for other stuff.

    polygons per screen at 60fps: 80k per frame is what we're sticking with as the limit
    texture memory (per screen): ?
    max texture size: 128px x 128px (yep)
    screen colour depth: ?
    3d data format: GMO
    texture format: GIM which goes from 4 bit indexed to 32bit RGBA. With the standard GMO model converter the texture gets baked in the binary GMO file along with the model.
    alpha blending: 8bit

    I know for a fact that 128x128 isn't max texture size on psp - I've seen some of my own models with 256x256 textures on my psp in fact. I was always under the impression that the max was 256, based on what a few devs told me, but since then they've said forget the limit but stick to 256 max for the sake of performance.
  • GugloPWN
    ptoing wrote: »
    I am quite sure that the NDS has a bitdepth of 5 bit per channel, making it 15 bit of colourrange, not 18.

    I think this is true, but stick with 256 paletted colors (1 bit alpha).

    Also to explain 3D on both screens. There is only 1 3D engine that can write to one screen at a time. To write 3D to both screens you have to write the second screens 3D on the first screen, then copy over a picture of that to the second. So you get 2000 tri per screen, but have to alternately draw each screen cutting fps in half. You also have to use 128k of your texture memory to store the screengrab.
  • swifty
    Hello all,

    This is actually my first post on this forum. I'm a grad. student beginning work on my master's project and this thread has quite a lot to do with my topic. I was wondering where the numbers in the first post came from. If anyone (especially the initial poster) knows, I'd love to have the source. Thanks.
  • A_Nub
    The psp specs are Wrong

    The psp's speed really depends upon the engine and optimization.

    Vram size is 2MB, but textures may be stored in the 24mb ram as well.
    You can swizzle textures to get a speed boost as well
    Not to mention That the psp supports up to 512x512px textures, however they tender to be slow.
    Also the screen buffer can be 32 or 16bit in either 8888,5650,5551, or 4444 formats.

    If you want any more information let me know, I have been programming for the psp for along time, just making small tech demos for myself and such.
  • die_Kröte
    I'm currently working on a project targeting the 1 Ghz Android phones. Looking at the recommendation for the iPhone 3GS, it suggests 7000 (visible) tris and that's only a 600 Mhz processor. I'll be using VBO's and all Native code for my OpenGL calls (Android programming is in Java but you can use native C code through the JNI) so I think I can crank out upwards of 11k tris. Anyone have any thoughts on that?
  • JonConley
    Offline / Send Message
    JonConley polygon
    die_Kröte wrote: »
    I'm currently working on a project targeting the 1 Ghz Android phones. Looking at the recommendation for the iPhone 3GS, it suggests 7000 (visible) tris and that's only a 600 Mhz processor. I'll be using VBO's and all Native code for my OpenGL calls (Android programming is in Java but you can use native C code through the JNI) so I think I can crank out upwards of 11k tris. Anyone have any thoughts on that?

    Not sure about phones but most devices now have dedicated 3d / graphics hardware. These are the bottlenecks and limits to the amount of triangles on screen (and typically the memory for this hardware). The processor will not normally be a bottleneck when you are talking 3D games, granted on phones and such you need to be considerate of the processor time for physics and game logic.

    The processor difference between the Android and Iphone won't make much of a difference in rendering, only the dedicated hardware differences would.

    Another limitation would be Android using Java vs. Iphone using objective C natively, java is a slower language then C, granted on PCs there normally isn't too much of a difference but on devices with slower processors the difference will be much more noticable.
  • die_Kröte
    JonConley wrote: »
    Not sure about phones but most devices now have dedicated 3d / graphics hardware. These are the bottlenecks and limits to the amount of triangles on screen (and typically the memory for this hardware). The processor will not normally be a bottleneck when you are talking 3D games, granted on phones and such you need to be considerate of the processor time for physics and game logic.

    The processor difference between the Android and Iphone won't make much of a difference in rendering, only the dedicated hardware differences would.

    Another limitation would be Android using Java vs. Iphone using objective C natively, java is a slower language then C, granted on PCs there normally isn't too much of a difference but on devices with slower processors the difference will be much more noticable.

    Well, on one good side, Android does allow native code though JNI and I'm running all of my opengl calls natively. The Snapdragon CPU appears to have an AMD Z430 GPU which I'm having trouble getting much information on. I should have my hands on a phone any day now... so maybe I can get some benchmarks myself.
  • hawken
    yeah the raw maths for the iPhone 3gs point towards it being able to do upwards of 112,000 triangles onscreen (at 60 fps) - but in reality, it starts to slow down quite badly at over 5,000 or 6,000 triangles, when using a 3d engine like Unity.
  • MikeF
    Offline / Send Message
    MikeF polycounter lvl 11
    Bit of thread bump here, but does anyone know the specs for the Ipad? I've done some searching around and i'm getting conflicting information
  • Naked-Robot
    Sorry to be a total newb, but...

    If the screen colour depth for iPhone 3G is 16-bit, and alpha blending is free if I use PNG, does that mean that if I save my diffuse out as a 16-bit, I have to save my alpha separately as a PNG?
  • Conor
    iPad resolution - 1024x768
    iPod touch and iPhone 3gs and older resolution 480x320
    iPhone 4 resolution (retina display) 960x480

    iOS supports 32-bit textures with 8 bit alpha (I always use .png), however the final screen image is rendered in 16-bit color.

    iOS also supports compressed textures using PowerVR texture compression as .pvr files. These are like DXT compression - lossy and mushy results so you only really use them for photographic style textures, nothing crisp and certainly not for sprites.

    iOS devices have texture filtering in hardware and some games feature AA, but those are usually slow paced games, not requiring a high framerate.

    I can't comment on polycounts as I'm making a 2D game, but I'd imagine it's somewhere between PS1 and PS2 depending on which iOS device you're running on.
  • ZABE
    Hey guys am new to this website and am a student studying computer games design. currently am working on my hand held games design assignment and have created danger mouse for the psp at 750 triangles would you agree if this is a suitble ammount for a main character in an adventure game?
    and does anyone have any examples they could just describe of past projects for the DS with specs and tir counts etc?

    this information will be used in my research and would be greatly appreciated =)
  • keres
    SupRore wrote: »
    [ QUOTE ]

    so i guess yeah,ps2 can do them.

    [/ QUOTE ]

    I'm not sure that's true. Anyone can add to Wikipedia.


    I don't have any real knowledge about this, but I seem to remember compaines like Ubisoft specifically mentioning what effects they were using instead of normal mapping when making a PS2 version of some of their Xbox games. (Like SCCT and GR2)

    Any shading algorithm is possible for any platform, technically. I mean, it's not probable or practical to see PS2 w/ normal mapping, but it's not a very obscure algorithm and you can program software lighting to use normal maps.

    Also, thanks a ton for this thread. UDK has just released iOS support with the new beta, and some people at the forums there wonder about poly counts for models.
  • jeanbr07
    Hello to everybody!! Im newbe here, and in 3D art. Im a programmer and i like to adventure in the 3D creation world.

    Anyone knows the polycount for Android based devices like Nexus S? Or Htc Desire HD?? And for iPhone 4 and iPad???
  • himadri_sm
    jeanbr07 wrote: »
    And for iPhone 4 and iPad???


    would like to know the specs for these..... please..
  • sketch81
    Hey Guys, Any luck with iPad specs for characters, vehicles and environments... Much appreciated...
  • Lamont
    Offline / Send Message
    Lamont polycounter lvl 7
    On UDK I got 70~80 skinned meshes on screen chasing the player (1 player 5 bones, NPC 3 bones instanced). Each mesh was about 470 tris. Environment was about 13k. One texture (1024x1024) for the environment, using a UDK made lightmap, one texture for the NPC and one for the character.

    With Unity there's so much you have to deal with. Scripting performance is ON YOU. GUI performance as well. So if your GUI is a hog, you will not get much on screen. My latest project in Unity started out with max 20 enemies on screen. This was all scripting performance issues. I knew it. After some changes(I found the issue) I was able to get 240 at 15fps. I cap it at 120 now. That's 120x702 polys. The NPC share a single texture/mesh. The GUI is one texture with boss health and player health bars. Environments range from 8,000~14,000 polys (but not all on screen at once with a single 1024x1024 for everything. Player mesh is 702. New NPC mesh is now 300~ polys. Bullet sprites are 16x16, and each mesh has a shadow blob. 1 sound for shooting (enemy) one sound shooting player/boss. One sound track, no environment sounds.

    I would like to add that only certain bosses are skinned, other than that all the other meshes are just animated in code. Personally I don't think there's a hard number for UDK and Unity for iOS, there's too many variables. It's all about "How YOU want to do it".

    These numbers are on iPod4G and iPad1.
  • sketch81
    Thanks heaps Lamont, this is very helpful information. :)
  • DEElekgolo
    Offline / Send Message
    DEElekgolo polycounter lvl 7
    Some info on the nds.

    The nds supports 6 texture formats:
    • A3I5: 3 bit alpha 5 bit color index(palette with direct alpha)
    • 4 color palette (each texel is 2 bits)
    • 16 color palette (each texel is 4 bits)
    • 256 color palette (each texel is 8 bits)
    • A5I3: 5 bit alpha 3 bit color index (palette with direct alpha)
    • 4x4-Texel Compressed (each texel is 32 bits, each independently being a 4x4 palleted image, 2 bits per sub-texel)
    • Direct Texture (each texel is 16 bits. last bit is alpha.)

    The NDS has a 15 bit color screen as well as 8 VRAM banks which can be repurposed to store texture data or the frame buffer and such. The 3D engine reserves the use of at least 1 128kb VRAM bank (A-B). You may also use more than 1 bank for storage of textures. Keep in mind that you use the texture bank for texture data and pallets.

    Geometry supports vertex normals but they override any previously done vertex color commands.
    The nds supports directional lights only and when defining the vertex normals, it is equvilant to setting a vertex color, but this time it samples the normal and the directional lights to set the vertex color.

    The NDS's 3d engine is very similar to openGL specifications so libraries like devkitpro have adapted to openGL-like functions.

    Anyways here is the bank info:
    • VRAM A: 128kb
    • VRAM B: 128kb
    • VRAM C: 128kb
    • VRAM D: 128kb
    • VRAM E: 64kb
    • VRAM F: 16kb
    • VRAM G: 16kb
    • VRAM H: 32kb
    • VRAM I: 16kb
1

Leave a Comment