Jump to content

High poly/Low poly


Shnappz

Recommended Posts

As everyone has probably realised by now, I ask a lot of n00by questions. So here's my next one.

I saw on the TSR reborn thread, OWA mention he's using higher polys in AR and it's running Ok.

 

I'm just trying to get my head round at what stage of development you decide to use high/low poly models. I'm modelling a tank at the moment and I'm just making it look like a 3d tank, then I'm gonna texture it... How do I know if I'm using too many polys for W3D, I assume when I port it into the game the FPS will just slow?

 

I know this is basic stuff, so apologies for being a n00b!

Edited by Shnappz
Link to comment
Share on other sites

Polys do not matter, draw calls do. Here is the paperwork written by TT regarding performance in w3d:

 

How to get more FPS from your FPS
First up, some terminology: A W3D file can contain multiple meshes, aggregates, and proxies. When I say mesh, I'm referring to a mesh object inside of a W3D file and not the file itself. Skinned meshes are meshes that have a WWSkin modifier applied. A draw call (or batch) is a unit of measurement which we’ll be using in this tutorial. On most hardware, the Renegade engine is limited by overall CPU power and not the video card in use, so we’ll be trying to reduce how much the engine has to do each frame.
Now for some basic optimizations: We’ll handle rigid meshes first. If you modeled it and it isn't alpha-blended or skinned, it's a rigid mesh. In general, each rigid mesh produces a draw call. If you use multiple materials in a mesh, each material will produce a draw call. Each additional pass in a material will produce an additional draw call. If you’ve been completely oblivious to rendering performance and want to optimize existing meshes, the simplest thing you can do is to merge meshes that use the same material but don’t actually need to be separate objects for rigging purposes (like wheels). It’s always faster to render an object with 4000 polygons than 4 objects with 1000 polygons. You should strive to keep objects using a single material; this means a barrel or crate should be using a single material and not a different one for each side. These optimizations are most effective when done on meshes that are used often (like props.)
Skinned meshes act roughly the same like rigid meshes; they must be deformed and uploaded to the video card every frame however. If you decide to skin an object, you should use as few polygons as needed to make it look good. Skinned meshes additionally do not have support for collision detection and cannot have decals applied to them, nor can they use precomputed lighting (ie “Compute Vertex Solve”.)
Unfortunately the previous optimizations won’t help much with object visibility. Renegade utilizes frustum culling which will skip drawing meshes that are behind you, but in order to skip meshes behind hills, buildings, and other large obstacles you will need to use a system called VIS. Maps with VIS will generally perform better than maps without because objects that are hidden can be completely ignored. You can find an excellent tutorial written by YSLMuffins on how to hook VIS up on the Renegade modding forums. (http://www.renegadeforums.com/index.php?t=msg&th=6243)

Z-Aligned Billboards
The usual “orient” and “align” billboard modes aren’t very effective for foliage and plants because they will turn upwards to always face the camera. In order to use the new Z-align mode, simply drag and drop a W3D file onto the zalign tool and any meshes with a billboard mode applied will be modified.

 

Link to comment
Share on other sites

lol, "polygons don't matter" - that's amusing

There's literally no point to having a very detailed tank above ~5,000 polygons in this engine. It doesn't have the capabilities of showing that detail properly. There's no support for normal maps, spec maps, etc. The simpler you can get it, the better it will generally be. 5k is perfect for almost every tank you could want to make.

Link to comment
Share on other sites

Well, I meant polygons do not matter as much as drawcalls do. You could feasibly create a model with 23,000 polys in Renegade and have it run with no performance drop. However, have a ton of those models without any LOD, then you will have a performance drop due to the amount of drawcalls.

Link to comment
Share on other sites

Sure, you could. But really, what point is there to it? I create ~20,000 polygon models at the office and I generally only get one 2048x map to work with unless it's a tank, which gets two 2048x maps for the chassis and the turret, plus a 1024x for the wheels and a 256x for the treads. Unless you're doing what we do and breaking up models into sections that have more texel density to work with, 23k polygons won't look all that great even with a 2048x. You'd have to have one amazing UV layout for that to work well, and that requires a lot of understanding of where to have larger UV space and where to minimize the amount of texel density that your UVs take up.

You're better off with less detail. You can get more texel density that way and you're not sacrificing much that the player can see.

Link to comment
Share on other sites

i would suggest to just dont model details all much, ignore the polycount. still i think apb use a little to much polys, less polygons but proper textures are the deal. for especially renegade you will need to wait for aircraftkillers reply he had personal contact to westwood.

 

by the way, reducing polys on a vehicle.. hmm bad idea, i would remodel it from scratch, otherwise someone has some good tips for a retopology.

Edited by rackz
Link to comment
Share on other sites

lol, "polygons don't matter" - that's amusing

 

There's literally no point to having a very detailed tank above ~5,000 polygons in this engine. It doesn't have the capabilities of showing that detail properly. There's no support for normal maps, spec maps, etc. The simpler you can get it, the better it will generally be. 5k is perfect for almost every tank you could want to make.

I have to ask what you mean by "doesn't have the capabilities of showing detail properly" and then go off to list normal mapping, the point of a normal map is to make an object look like it has detail that its mesh doesn't actually have.

Link to comment
Share on other sites

I will say you can still get a great amount of detail in poly density. But you just have to make sure your edges and loops are doing a job to show detail or balance the mesh for UVs and reasons. if the loop or edge serves no job then it's unnecessary.

 

And of course keep to a nice appropriate ceiling for polycount. ;)

 

Just because theres no extra maps available/supported shouldn't mean that you shouldn't make an effort to show it in the mesh

Link to comment
Share on other sites

There's no point to going past 5k to 10k in this engine. You'll end up with a lot of wasted texel density. You'll get one of two options:

1. Everything ends up with similar texel density, making the texture muddier overall

 

2. Larger pieces end up with more space, while smaller pieces suffer due to a lack of resolution available on the map

I always go with #2, but then again, I work with vehicles that get many more textures than anything in Renegade could dream of.

Link to comment
Share on other sites

From a tech perspective an extra thousand Poly's don't mean much*.

 

Switching render state is what costs. Having lots of small objects with separate texture maps or material attributes will tank performance.

 

Having too many bones can screw performance to but that isn't normally an issue with hard surface.

 

* The exception to this is when you go beyond the index limit and the mesh needs to be split. An unsigned 16bit index can index up to 65535 indices (tris * 3). So if you have 65536 indices,21846 triangles it will have to be split into two draw calls

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...