Vegetation P3D – Arma 3
Basic vegetation P3D setup for Arma 3
Clutter | Bush | SoftTree | HardTree | ||
---|---|---|---|---|---|
LOD1 | Triangle Max | +-100 | -3000 | -6000 | -15000 |
lock normals Y=-1 | |||||
Section | 1 | 2 | 03-II | 04-II | |
Material | Grass | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | |
Textures | CA | CO; CA; CS; NOHQ; MCA; | CO; CA; CS; NOHQ; MCA; | CO; CA; CS; NOHQ; MCA; | |
Named Properties | N/A | LODNoShadow=1 | LODNoShadow=1 | LODNoShadow=1 | |
UV set max | 1 | 2 | 2 | 2 | |
LOD2 | Triangle Max | LOD1 / 2 | LOD1 / 2 | LOD1 / 2 | LOD1 / 2 |
lock normals Y=-1 | |||||
Section | 1 | 2 | 03-II | 04-II | |
Material | Grass | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | |
Textures | CA | CO; CA; CS; NOHQ; MCA; | CO; CA; CS; NOHQ; MCA; | CO; CA; CS; NOHQ; MCA; | |
Named Properties | N/A | LODNoShadow=1 | LODNoShadow=1 | LODNoShadow=1 | |
UV set max | 1 | 2 | 2 | 2 | |
LOD3 | Triangle Max | LOD2 / 2 | LOD2 / 2 | LOD2 / 2 | LOD2 / 2 |
lock normals Y=-1 | |||||
Section | 1 | 2 | 2 | 3 | |
Material | Grass | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | |
Textures | CA | CO; CA; CS; NOHQ; MCA; | CO; CA; CS; NOHQ; MCA; | CO; CA; CS; NOHQ; MCA; | |
Named Properties | N/A | LODNoShadow=1 | LODNoShadow=1 | LODNoShadow=1 | |
UV set max | 1 | 2 | 2 | 2 | |
LOD4 (MLOD) | Triangle Max | 12 | 12 | 12 | 12 |
lock normals Y=-1 | |||||
Section | 1 | 1 | 1 | 1 | |
Material | Grass | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | TreeAdv; TreeAdvTrunk; | |
Textures | CA | CA; CAN; NO; | CA; CAN; NO; | CA; CAN; NO; | |
Named Properties | N/A | LODNoShadow=1 | LODNoShadow=1 | LODNoShadow=1 | |
UV set max | 1 | 2 | 2 | 2 | |
LOD | Triangle Max | N/A | 100 | 100 | 100 |
ShadowVolume0 | Section | N/A | 02-I | 02-I | 02-I |
Material | N/A | N/A | N/A | N/A | |
Textures | N/A | N/A | N/A | N/A | |
Named Properties | N/A | N/A | N/A | N/A | |
UV set max | 1 | 1 | 1 | 1 | |
LOD | Triangle Max | N/A | -1000 | -1000 | -1000 |
ShadowVolume1000 | Section | N/A | 02-I | 02-I | 02-I |
Material | N/A | N/A | N/A | N/A | |
Textures | N/A | CA;CAN; | CA;CAN; | CA;CAN; | |
Named Properties | N/A | N/A | N/A | N/A | |
UV set max | 1 | 1 | 1 | 1 | |
LOD | Triangle Max | N/A | cca LOD4 | cca LOD4 | cca LOD4 |
ShadowVolume1010 | Section | N/A | 1 | 1 | 1 |
Material | N/A | N/A | N/A | N/A | |
Textures | N/A | CA;CAN; | CA;CAN; | CA;CAN; | |
Named Properties | N/A | N/A | N/A | N/A | |
UV set max | 1 | 1 | 1 | 1 | |
LOD | Triangle Max | 0 | 100 | 100 | 100 |
GEOMETRY | Mass | 0 | 10-I | 10-100 | 50-1000 |
Material | N/A | N/A | N/A | N/A | |
Textures | N/A | N/A | N/A | N/A | |
Named Properties | frequent=1; | frequent=1; | frequent=1; | frequent=1; | |
class=clutter; | class=bushSoft; | class=TreeSoft; | class=TreeHard; | ||
map=bush; | map=SmallTree; | map=tree; | |||
dammage=tent; | dammage=Tree; | dammage=Tree; | |||
canOcclude=0; | canOcclude=0; | canOcclude=0; | |||
shadow=hybrid; | shadow=hybrid; | shadow=hybrid; | |||
sbsource=explicit; | sbsource=explicit; | sbsource=explicit; | |||
preferShadowVolume=0; | preferShadowVolume=0; | preferShadowVolume=0; | |||
armor=700 | armor=1500 | armor=15000 | |||
UV set max | 1 | 1 | 1 | 1 | |
LOD | Triangle Max | 0 | 100 | 100 | 100 |
GEOMETRY PhysX | Mass | 0 | 10-I | 10-100 | 50-1000 |
-3.00E+13 | Material | N/A | N/A | N/A | N/A |
Textures | N/A | N/A | N/A | N/A | |
Named Properties | N/A | dammage=tent; | dammage=Tree; | dammage=Tree; | |
UV set max | 1 | 1 | 1 | 1 | |
LOD | Triangle Max | 0 | -1000 | -1000 | -1000 |
ViewGeometry | Components | 0 | 10 | 20-I | 1-100 |
Material | N/A | foliage_green.rvmat | foliage_green.rvmat | foliage_green.rvmat | |
Textures | N/A | N/A | N/A | N/A | |
Named Properties | N/A | N/A | N/A | N/A | |
UV set max | 1 | 1 | 1 | 1 |
Shadow LODs
[ShadowVolume 0]
LOWpoly stencil shadow LOD (up to 100 triangles), is cast when shadows are on Low video settings.
Mesh in the LOD must be:
- convex
- closed
- triangulated
- with sharp edges
- without textures
- without material
- only UVset 0
- up to 100 triangles
[ShadowVolume 10]
- simplified version of ShadowVolume 0...it is often not needed to have this ShadowVolume present in the P3D
[ShadowVolume 1000]
ShadowBuffer shadow LOD, matches as much as possible the first resolution LOD, so it has biggest complexity from all shadow LODs. Polyplanes use texture with mask in Alpha channel to cast shadows (the same as for polyplanes in resolution first LOD...no need to duplicate the data). Trunk has no texture or material at all
Mesh in the LOD must be:
- triangulated
- with sharp edges
- polyplanes with _CA texture (Alpha channel)
- no material
- only UVset 0
- up to +-1000 triangles
[ShadowVolume 1010]
Simplified ShadowBuffer shadow LOD, made usually fro last resolution LOD. Texture used from the last resolution LOD...no need to duplicate the data.
Mesh in the LOD must be:
- triangulated
- with sharp edges
- with _CA texture (Alpha channel)
- pouze s UVset 0
- up to +-20 triangles
Geometry LODs
P3D must contain at least Geometry layer, which is used also as ViewGeometry and FireGeometry in case they are not present in the p3d. In case only FireGeometry is missing, ViewGeometry is used as FireGeometry.
[Geometry]
In game invisible model allowing collisions with player and other objects in the game. It contains extremely simplified model of the crown and trunk. Model is made from convex components, all of the components must have set weight and the overall weight must not be below 150, otherwise the model will not collide
model must contain:
- convex meshes
- Components (selections Component01; component02 atd...)
- Weight (weight below 10kg is causing no collisions)
- only UVset 0
- penetration material (if it doesn't already exist in FireGeometry or ViewGeometry)
[FireGeometry]
Model allowing the vegetation to get hits from weapons. Is more complex than ViewGeometry and Geometry...it should match the shape of first resolution LOD very well. If player can hide inside the mesh, its penetration material must contain thickness parameter.
model must contain:
- convex meshes
- Components (selections Component01; component02 atd...)
- only UVset 0
- material (penetration)
[ViewGeometry]
Model which covers the view for AI. Is more complex than Geometry, but less than FireGeometry.
model must contain:
- convex meshes
- Components (selections Component01; component02 atd...)
- only UVset 0
- material (defines transparency)
Models, which have property class=tree or bush are calculated as partly transparent by default (without any linked materials). Their "viewDensity" values are hardcoded...they can be overridden only by material used on Apex bushes called foliage_sparse and foliage_dense. Stacking two meshes, one smaller inside one bigger, both with foliage_sparse material proved to work very well on Apex bushed. It is causing edge of the bush to be gradually more transparent for the AI towards the edge of the model and still opaque in the center