[?] Static meshes
-
Jarek Mace
- Posts: 209
- Joined: 2005-11-20 04:36
-
GeZe
- Retired PR Developer
- Posts: 3450
- Joined: 2006-02-09 22:09
-
matt.b
- Retired PR Developer
- Posts: 992
- Joined: 2006-04-07 23:24
Cor great stuff, nice & dirty- just how i like it. Like you mentioned it's best to plan ahead & have textures prepared in advance so you can use the big horizontally-tiling texture pallettes/poly stipping method to save on texture loading.
You could go the bf2 route & have a lowres colour layer overlayed with a highres (1 or 2 pixels/cm) low saturation detail layer, then extra dirt & decal layers. But I prefer something more basic like HL2's single colour textures, with a dirt layer multiplied on top to break up the tiling. Plus using the colour slot for your main textures means you save as a dxt1 format .dds, & that's half the filesize than the dxt5 needed for detailmaps (cos of no alpha specular, not usually needed on buildings).
For the destroyable concrete bunkers that'll be in 0.6, this is the main colourmap (512x2048 strip with lots of horizontal tiling bits) which gets mapped @ 2 pixels per cm (double bf2's res, & more like HL2):
http://img81.imageshack.us/img81/1350/b ... andbg8.jpg
& this is a 512 dirtmap that has a lower tiling (~4 pix/cm) to break up tiling artifacts:
http://img341.imageshack.us/img341/745/dirtyczv0.jpg
another texture pallette as an example of 4x 512s packed for horizontal tiling:
http://img440.imageshack.us/img440/2661 ... rs1ye2.jpg
So I'd say 2 texture layers should do it (colour & dirt), & you could have some decal maps on top too for things like bullet holes, bricks showing through cracked plaster etc. Also if you want to fill up unused texture slots there's some null detail textures in staticobjects/PR/textures/ (particularly useful for filling up the detail slot).
Taxi's already covered lods & colls, & you can have pretty high res buildings in bf2- 10k+ tris should be fine for the main lod. But coll meshes should be a lot lower for good performance. I would go lower than the amounts suggested on bfeditor, & have something like-
col0 (projectiles)= 50-70% main lod
col1 (vehicles/physics)= under 10% (easy on buildings, can be a few boxes)
col2 (players)= 10-30% (i try & keep these under 200-300 tris, & can be very boxy because the player/world interaction in bf2 is extremely basic)
There's a material library for 3dsmax for assigning collision materials (eg. stairs wood, concrete, penetrable metal...) but dunno how to do that in maya. But that serves you right for using the tool of the devil. Good luck & PM me if you've got a question.
You could go the bf2 route & have a lowres colour layer overlayed with a highres (1 or 2 pixels/cm) low saturation detail layer, then extra dirt & decal layers. But I prefer something more basic like HL2's single colour textures, with a dirt layer multiplied on top to break up the tiling. Plus using the colour slot for your main textures means you save as a dxt1 format .dds, & that's half the filesize than the dxt5 needed for detailmaps (cos of no alpha specular, not usually needed on buildings).
For the destroyable concrete bunkers that'll be in 0.6, this is the main colourmap (512x2048 strip with lots of horizontal tiling bits) which gets mapped @ 2 pixels per cm (double bf2's res, & more like HL2):
http://img81.imageshack.us/img81/1350/b ... andbg8.jpg
& this is a 512 dirtmap that has a lower tiling (~4 pix/cm) to break up tiling artifacts:
http://img341.imageshack.us/img341/745/dirtyczv0.jpg
another texture pallette as an example of 4x 512s packed for horizontal tiling:
http://img440.imageshack.us/img440/2661 ... rs1ye2.jpg
So I'd say 2 texture layers should do it (colour & dirt), & you could have some decal maps on top too for things like bullet holes, bricks showing through cracked plaster etc. Also if you want to fill up unused texture slots there's some null detail textures in staticobjects/PR/textures/ (particularly useful for filling up the detail slot).
Taxi's already covered lods & colls, & you can have pretty high res buildings in bf2- 10k+ tris should be fine for the main lod. But coll meshes should be a lot lower for good performance. I would go lower than the amounts suggested on bfeditor, & have something like-
col0 (projectiles)= 50-70% main lod
col1 (vehicles/physics)= under 10% (easy on buildings, can be a few boxes)
col2 (players)= 10-30% (i try & keep these under 200-300 tris, & can be very boxy because the player/world interaction in bf2 is extremely basic)
There's a material library for 3dsmax for assigning collision materials (eg. stairs wood, concrete, penetrable metal...) but dunno how to do that in maya. But that serves you right for using the tool of the devil. Good luck & PM me if you've got a question.
-
Jarek Mace
- Posts: 209
- Joined: 2005-11-20 04:36
Cheers guys, with a little luck this may be the final version. First version appears to work so I can get a little more adventurous now.
Hey thanks for the info and examples matt.b, Tex method you describe is pretty much very close to the way I have been doing it minus the decal layer and usage of colour tex (which i'll now change to), ive not got that far experimenting yet. (also similar for Q3/ET)
Ill guestimate the final mesh (lod0)to be around 14k tris, by the time I have built interior detailing.
Material assignment in maya appears pretty simple, create a shader and name it identically to a material ingame--assign to respective face of col0 -- done. I have a list of valid material types from bf2editor forums. I think its only the shaderNAME that is important to the engine.
Jarlief supplied me with a nice little exe that fixes the absolute tex path.
Be prepared for a full pm box
Hey thanks for the info and examples matt.b, Tex method you describe is pretty much very close to the way I have been doing it minus the decal layer and usage of colour tex (which i'll now change to), ive not got that far experimenting yet. (also similar for Q3/ET)
Ill guestimate the final mesh (lod0)to be around 14k tris, by the time I have built interior detailing.
Material assignment in maya appears pretty simple, create a shader and name it identically to a material ingame--assign to respective face of col0 -- done. I have a list of valid material types from bf2editor forums. I think its only the shaderNAME that is important to the engine.
Jarlief supplied me with a nice little exe that fixes the absolute tex path.
Be prepared for a full pm box
Last edited by Jarek Mace on 2007-03-31 12:10, edited 1 time in total.
-
matt.b
- Retired PR Developer
- Posts: 992
- Joined: 2006-04-07 23:24
>Tex method you describe is pretty much very close to the way I have been doing it minus the decal layer and usage of colour tex (which i'll now change to)
you can put your textures in the detail slot if you want speculars on metal things (using uv#2), the colour slot thing (uv#1) was just to cut down on texture size (dxt1, no alpha) for things with no speculars.
btw you asked earlier about how to keep polycounts down in an engine with no portal/visarea system. best thing to do is to cut back heavily on interior polys on distant lods, so indoor details only draw when you're 30-50m away.
another thing to remember is that lod1 (the second lod, lod0 being the main visible mesh) is what paupers/hackers running low gfx see, so don't delete all your interior polys on that lod.
you might then have 4 lods in total for this model:
lod0 - main visible mesh for high gfx users, 100% polys
lod1 - starts at 20-50m for high gfx, main visible mesh for peasants running low gfx, retains a functional amount of interior mesh, 50-75% polys
lod2 - 100m, 10-50% polys
lod3 - 200-300m, under 10%
could just have lo0, lod1 & lod2 though, colls are more important to optimize.
you can put your textures in the detail slot if you want speculars on metal things (using uv#2), the colour slot thing (uv#1) was just to cut down on texture size (dxt1, no alpha) for things with no speculars.
btw you asked earlier about how to keep polycounts down in an engine with no portal/visarea system. best thing to do is to cut back heavily on interior polys on distant lods, so indoor details only draw when you're 30-50m away.
another thing to remember is that lod1 (the second lod, lod0 being the main visible mesh) is what paupers/hackers running low gfx see, so don't delete all your interior polys on that lod.
you might then have 4 lods in total for this model:
lod0 - main visible mesh for high gfx users, 100% polys
lod1 - starts at 20-50m for high gfx, main visible mesh for peasants running low gfx, retains a functional amount of interior mesh, 50-75% polys
lod2 - 100m, 10-50% polys
lod3 - 200-300m, under 10%
could just have lo0, lod1 & lod2 though, colls are more important to optimize.





