View Issue Details

IDProjectCategoryView StatusLast Update
0005859The Dark ModCodingpublic30.12.2021 11:23
Reporterstgatilov Assigned Tostgatilov  
PrioritynormalSeveritynormalReproducibilitysometimes
Status resolvedResolutionfixed 
Product VersionTDM 2.09 
Target VersionTDM 2.10Fixed in VersionTDM 2.10 
Summary0005859: Collision models for patch-only entities have not BSP optimization
DescriptionIt seems that collision model generator uses only brushes when it builds BSP tree.
If there are no brushes, then no BSP tree is built.
As the result, any trace query touching the model has to process all triangles in the model.
A typical case for a patch-only models is terrain func_static, in which case AIs constantly trace against it, wasting time.

Ideally, BSP tree should be constructed even in such cases, and number of nodes should be of about the same order as the number of polygons.
Steps To ReproduceThe most notable example is The Black Mage FM (the very first released version).
1) setviewpos -4300 1600 -1400 0 -90 0 (the lava cave)
2) Use Tracy profiler so see how slow trace queries are, in particular for elementals.
Additional InformationSee discussion:
  https://forums.thedarkmod.com/index.php?/topic/21219-elemental-has-8-legs/
In particular:
  https://forums.thedarkmod.com/index.php?/topic/21219-elemental-has-8-legs/&do=findComment&comment=468263
TagsNo tags attached.

Activities

stgatilov

stgatilov

30.12.2021 11:23

administrator   ~0014621

Fixed in svn rev 9766.

The fix can be disabled by setting cm_buildBspForPatchEntities to 0 (non-archived).
Also note that:
1) It applies at the moment of dmap.
2) Better remove .cm file before dmapping, otherwise dmap can skip collision model generation.

Issue History

Date Modified Username Field Change
30.12.2021 11:12 stgatilov New Issue
30.12.2021 11:12 stgatilov Status new => assigned
30.12.2021 11:12 stgatilov Assigned To => stgatilov
30.12.2021 11:23 stgatilov Note Added: 0014621
30.12.2021 11:23 stgatilov Status assigned => resolved
30.12.2021 11:23 stgatilov Resolution open => fixed
30.12.2021 11:23 stgatilov Fixed in Version => TDM 2.10