Jump to content
Ghost Recon.net Forums

Map Poly Counts


Recommended Posts

I was wondering, the RSE poly count for maps was like 40'000 wasnt it?

How high do you think we could go now days on our bigger better machines? I have a suspicion that Deleyt went quite high on WSV and used occulders to help it run smoothly.

Also, I remember El Oso telling me about these map objects that RSE use. Were you place a helper point down and that references to another model file, such as some little bits of grass or even small stones. And then in game they appear depending on distance away. Is anyone got the specifics on doing this, Im not sure El Oso is really around anymore.

Link to post
Share on other sites

You can have alot of polys if you use occluders. 100,000 is not outrageous, and I've made maps with over 200,000.

You can place helper points on your ground surface -something like ^foliagesetup(modelname.pob)(x)(y) that will put those little clumps of grasss that disappear some distance away. It's in the level builder PDF. I can only remember it for vegetation, but I don't see why it can't be another type of .pob like stones.

Link to post
Share on other sites

Occluders will only occlude, portals, dynamic objects, effects, characters, trees, and anything textured with AlphaChannels.They wont Occlude Polygons in the same room!!.You use fog and clipping distance to prevent polygons in the same room all being rendered at one time.

If you have lots of rooms then Occluders will prevent those rooms being rendered if an occluder stands between you(the camera) and the portal to that room and only if the Normal of the Occluder is facing towards you.

I would not recommend exceeding more than 40-50 thousands polygons in one room and thats pushing it.

The Swamp Maze map i've done has about 50,000 polygons in the Outside room, even with the clipping distance set at about 60% there is a drop in FPS to about 48fps at certain points in the map.This is still playable because i've put in alot of occluders that prevent non visible players from being rendered, and mostly it runs at about 60fps.At the end of the day the less polygons visible the better it will run.

If you look at say the Embassy Map, it consists of a number of different Outside Rooms.This prevents a Top of the map being rendered if you are standing at the bottom, and that map probably consists of about 50,000 polys but probably no more than 25-30 polys are ever rendered at one time.

If you make a map with a high polycount, then you need to consider how you'll break it up in to smaller parts either by reducing the visible range on the map, or breaking it up into Rooms, which works well in urban maps because your portals can be placed in between the buildings.

The Foliage setup helper point, could be used to place small rocks onto a map just as dynamic grass is, just a case of creating a .pob model of a small rock, but you cant vary the size, it will stay that constant size throughout the map.You have to tag your floor on which you want them to appear as "High Grass". I dont know if a map supports more than one ^Foliagesetup helper point though.

Edited by BornToKill_TAW
Link to post
Share on other sites
I have a suspicion that Deleyt went quite high on WSV and used occulders to help it run smoothly.

WSV used 110416 triangluar polygons.

Occluders were used in the walls of the the villa, the tunnelsystem and some in the mountain if I recall correctly.

Link to post
Share on other sites

IIRC, the helper points can be as many as you like, they just need to have a specific name, like ^01rocks(modelname.pob)(x)(y), and IIRC the x variable is the intinsity, as in how many rocks or clumps or grass you want to appear there.

Link to post
Share on other sites
Dynamic Grass

Adding dynamic grass causes small, grass objects to be rendered in random locations on

designated surfaces. These objects fade out as they get farther from the camera.

Create a helper point in the top viewport. Name that helper point “^foliagesetup(x)(y)(z)” where x

is the density of the objects in the environment, y is the filename of the referenced grass object

and z is something I can’t seem to remember. Example:

^foliagesetup(2)(m01_groundcover.qob)(1)

By setting the density to 0, 1, or 2, the amount of grass can be controlled.

The groundcover files that must be referenced can be found in the models folder in the game

directories.

To tag a surface to generate the dynamic grass, the surface MUST be a floor. Then add the

surface property of HighGrass to it (in the Map Editor or RSB Editor).

Before exporting, be sure to group the helper point to the room in which the grass is to be used.

To be honest thats very confusing, and oso says you can only have 1 type of object per map.

But I was thinking, if you modelled the object straight into your map model, and were using lots of occulders anyway, then it would have the same effect on system resources.

Link to post
Share on other sites

For the small rocks, use LODS mate.

You could have 3 types of rock, each looking different of around 10-14 polys (high LOD)

Then use the low LOD switching at 20 meters or so. Make the low LOD 2 faces (4 trianglepolys)

That should make it possible to get quite a few rocks in there.

Link to post
Share on other sites

If i were you, i'd make a small rock in max and export it as smallrock.qob. (save it to Model Folder, And put the texture in the Textures folder)

select your floor polygon, goto map editor and select surface texture "High Grass" or you can tag your floor texture as "High Grass" in the RSB Editor. Remember Max has the higher priority (So if you Tag in Max it overides anything tagged in the RSB Editor)

Create a helper point in top view (doesn't matter where exactly) and label it ^foliagesetup(X)(smallrock.qob)(1). Replace X with 0 or 1. Using 2 might be too dense.

Then create medium and large rocks using the LOD method delyte suggests above.

This should then give you the variety your after.

Edited by BornToKill_TAW
Link to post
Share on other sites

If your using the rocks as dynamic objects, be aware that viewing two alpha channels creates an artifact which allows you to see thru smoke and NV extrmely well. The only way to avoid it is to make your .pob tiny so ppl cant see directly thru it. Also there wont be a collision, and there may be glitching issues because no one ever sees the dyn foliage in the same place (!) its entirely client-side generated polygons.

Using pob is good but, like doors and windows, it takes one of the 255 game objects and that limits other stuff you can do in gametypes (num enemies) as well as glass and doors and other pobs you can use on the map. I think pob is a bounding box (vehicle) so it is good for the AI to use this optimized type of collision.

Cloning each rock's actualy polys has a bigger hit on the AI than framerate - consider that each surface is going to generate paths from any point where a face meets the floor, as well as cover points, links, and path points. Just plopping down 50 rocks can take your 500k sherman to 2.5M, causing a 1 minute delay for new clients on a MP dedi server as they generate the shape table (.sht) for their first time running the map. Pathfinding will load down the server heavily, taking 30 seconds just to set a path point across the map.

Theres a trick I discovered and used on the Turkish City map. 85,000 polys in one room, with 500 dynamic <tree> objects that dinnt even remotely resemble a tree..

Maintains 40fps+ with 35 players with full explosives on a mp dedi server, and thats on my 3 yr old GF3 P4 1.5 mhz...!

heres how i did it:

Set the Wind to 0 in the .mis file.

Make sure you have no Wind zones in the map .mis.

Convert a tree into a couch, or a TV, or a coke can. You can now place hundreds of these objects (literally!) between occluders and your frame rate wont take a hit like it would if these were any other type of object. Using the triangular dynamic collision that trees use makes the pathfinding take no additional cpu hit as well. In theory, you could mix these fake tree-objects with real trees, carefully placed in small wind zones to allow them to behave normally.

-- h

Link to post
Share on other sites

Hmm thats intresting, I think I will be using the dynamic objects, and a lot of occulders. But the small pebels I may put into the map, Id probably not have them have any collision. It will be fun to play with, Im at 24000 at the moment.

Link to post
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
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.

×
×
  • Create New...