Hi we're beginning a new project soon on ps2 (or ps2 is our 'weakest link' in the platform lineup) and want some advice on poly budets etc. previously we have tended to throw stuff at the engine until it slows down, but it would be nice to structure things a bit more.
So, people who have experience with ps2 budgets, can you shed any light on the kind of theoretical maximum textured polys-per-frame limits etc you have used as guide for deciding your asset budgets? I tend to get an 'it depends' answer from the programmers, and while I know it does I could use some kind of vague figures
I know it depends on engine, special effects etc etc, but I'm sure some other people here have had to start deciding things before those are in place, so advice is welcomed
Replies
So characters , really depending on what you are aiming for thou , id guess 7000 triangles . 2000 to 7000...perhaps anyone could help ?
The texture size also depends on the bit depth. The optimal size for an 8bit texture for example, is 128x64. This fits into a single page of memory. If you use a 4bit texture, then 128x128 is the optimal size. An 8bit 256x256 texture will use 4 pages of memory, and could cause fill rate issues if the object is far from the screen.
But then again, it all depends on what kind of scene you have going on.
On STACKED, I know our characters were around 4000-5000 tris each, and had 3-4 128x128 or 64x64 textures if I'm not mistaken. We had a max of 9 players and a dealer at the table, so that's nearly 50,000 tris and 24 textures for characters alone. I was left with a paltry budget of 10,000 tris and < 1MB of texture for the environment (including props).
edit: by the way I have to admit when you say fit into a single page of memory I have no idea what that means. if it's not too time consuming could you explain?
The 'page' I'm referring to, is a page of memory cache.
The PS2 has 4MB of video memory, which needs to be used for everything drawn on screen. UI, textures, tris, etc. The memory is split into blocks of data, or pages. Overfill the pages, and you get slowdown, swapping and texture corruption. Basically, there's an optimal speed at which the memory can accept data and use it. If you undershoot that mark, you're wasting memory. Overshoot it, and you have performance issues. Fun, eh?
A single 8bit 512x512 texture eats up 32 pages of memory on PS2. Most 'average' games rarely have more than 90-95pgs available per-frame.
edit: actually I'm being unfair, the engine was ok the tools sucked
"What have you done to the textures?"
nothing...
"You have...look..banding everywhere!"
I can't see any banding...
"Look, you've bloody done something!"
Turns out they were downsampling to 4bit and THEN resizing the textures in code.
Slappage released.