Number of polygons

Blitz3D Forums/Blitz3D Beginners Area/Number of polygons

Moraldi(Posted 2007) [#1]
How many polygons a Blitz3D application (a 3D game) must handle in order to run smoothly on a wide range of PC systems?
Thanks


big10p(Posted 2007) [#2]
This question is completly unanswerable, definitively. It depends on the system it's being run on.


Mortiis(Posted 2007) [#3]
Running smoothly doesn't depend on polygons only. It depends on effects, techniques, alpha maps, texture sizes and a lot of other aspects.


Quantum(Posted 2007) [#4]
I find that heavy texture images reduces the performance of my system far more than higher poly counts.

But I've also found that a good way of reducing the weight of a texture is to run it through Deep Exploration and save it with a lower quality setting, cos to be honest, I cant tell the difference between the higher quality & the lower one after Deep Ex converts it... it reduces 500k plus images to around 80-90k... with next to no degradation... unlike Paintshop Pro... reducing a jpg image's quality in that leaves a real drop in image quality with nowhere near the file size saving!


Gabriel(Posted 2007) [#5]
But I've also found that a good way of reducing the weight of a texture is to run it through Deep Exploration and save it with a lower quality setting, cos to be honest, I cant tell the difference between the higher quality & the lower one after Deep Ex converts it... it reduces 500k plus images to around 80-90k... with next to no degradation... unlike Paintshop Pro... reducing a jpg image's quality in that leaves a real drop in image quality with nowhere near the file size saving!

Sounds like you're doing something very wrong. The JPG quality setting has no bearing on render speed whatsoever. The images are not even being stored in JPG format in VRAM, so all you're possibly achieving is lowering the quality of your textures and making the download size a bit smaller. The only way that you would ever affect render performance with JPG quality would be if you were loading them on the fly during the game, and you shouldn't be doing that with any format, because B3D isn't cut out for it.


Moraldi(Posted 2007) [#6]
Ok, let me ask in a different manner:
Which factors are more important in execution speed of a game:
a) Number of polygons
b) Number and/or size of textures?
c) AI of the game?
d) Number of effects (can we categorize the ways we can achieve them?)
An importance sorting will help
I am not sure if I forgot any other aspect of the game

Thanks


jfk EO-11110(Posted 2007) [#7]
AI? FOr sure the sourcecode will take some time to execute, but we canīt discuss this.

The renderer is affected mostly by:

-Number of overlapping alphatransparent polygons (and size of intersection in pixel)
-Number of POlygons within camera range
-Number of Surfaces (Materials) within camera range
-Total range of Linepicking and Camerapicking actions

On some rare graphicscards such as a S3 the texture scaling may also affect the speed.

To answer your initial question:

Example: 20 thousand triangles. 50 Surfaces. This will run relative smooth on most PCs.


Moraldi(Posted 2007) [#8]
Thanks jfk EO-11110, you are clear. That's exactly what I wanted to know...


Quantum(Posted 2007) [#9]
Sounds like you're doing something very wrong. The JPG quality setting has no bearing on render speed whatsoever. The images are not even being stored in JPG format in VRAM


I didn't realise that Gabriel?... my models are just bog-standard .b3d's... no `on-the-fly` loading involved at all... and when I reduced the texture sizes I did get a definate increase in frame-rate??... I assumed it was cos the sizes of them was clogging my systems memory up!... it must have been something else causing it!... it has reduced the end file size though ;) lol


Wings(Posted 2007) [#10]
I discovered somthing.

Nr of unused vertex

Even if you dont set a triangle on that vertex it will take upp GPU time. Specialy then multi layer texture.

(I discovered this by using vertex alpha layers on my worldmesh.i created the vertex and did not assign any triangles. still FPS was killed :(


jfk EO-11110(Posted 2007) [#11]
Really ?!?!?!?!?

This totally surprises me!!! What could be the reason for this? I mean - itīs only a diffrent index for the triangles. Is there something (re)uploaded each render?


jfk EO-11110(Posted 2007) [#12]
Just tested this, youīre right, a mesh without tris takes about half of the render time! (compared to one with nonshared verts tris)

I maybe miss a detail, but to me this is looking like a "unneccessary feature". Guess itīs directx.


Quantum(Posted 2007) [#13]
I dunno if this has anything to do with it... as I said I assumed it was my jpg file sizes... but when I noticed a frame-rate difference in my project... I had re-rendered my scene in Gile(s) and selected "ignore vertex lighting" for the render with the lower res jpg's?


Chroma(Posted 2007) [#14]
unlike Paintshop Pro... reducing a jpg image's quality in that leaves a real drop in image quality with nowhere near the file size saving

Quantum, I use PSP to compress JPGs and I get awesome results. I don't think you're doing it correctly in PSP. There are 2 ways to do it btw.


Quantum(Posted 2007) [#15]
Hmm... thanks Chroma!... I've had another play with PSP & I stand corrected... the compressed image quality in PSP is as good as DeepEx's... especially when it's set to `loss-less` and a compression factor of about 15-20 is used... God knows what I was doing before? lol


Dreamora(Posted 2007) [#16]
There is one important point not brought up:

Texture sizes should be square and power of 2.
Especially older cards like GF4 and Radeon 9250 and previous, while supporting non square power of 2, gain a serious amount of performance if you feed them with square textures! (30% and more)
B3D will resize the texture to be power of 2, but not resize it to be square (on GF 6600 this can even lead to crashes, on some 6800 as well, depending on driver versions)

Another thing that speeds up is using DDS instead of regular textures where possible. They are compressed even in VRAM and makes them faster when transfering into VRAM for rendering.


Moraldi(Posted 2007) [#17]
Dreamora: Regular textures (not DDS) where are they stored?


Naughty Alien(Posted 2007) [#18]
..I just now rendered 10 million polys, no textures, 10 FPS on my 7600GT.. I use to play with one cube (10800 polys), and copy/load it in specific area (1000 cubes)and thats the result..so I guess, obviously Polycount is not that critical as number of textures/surfaces is..


jfk EO-11110(Posted 2007) [#19]
Naughty - on not so old cards yes. Older cards can hardly chew it.