View Issue Details

IDProjectCategoryView StatusLast Update
0005942DarkRadiantMap Editingpublic18.04.2022 11:22
Reportergreebo Assigned Togreebo  
PrioritynormalSeveritynormalReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version3.0.0 
Target Version3.0.0Fixed in Version3.0.0 
Summary0005942: Missing brushes when opening alphalabs1 from vanilla Doom 3 PK4s
DescriptionSee forum discussion: https://forums.thedarkmod.com/index.php?/topic/21378-opening-doom-3-maps-with-darkradiant
TagsNo tags attached.

Activities

greebo

greebo

18.04.2022 06:18

administrator   ~0014803

This seems to be happening on brushDefs that declare redundant face planes:

// primitive 9447
{
 brushDef3
 {
  ( 0 0 1 -128 ) ( ( 0.015625 0 -14 ) ( 0 0.0078130001 0.7460148931 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 1 0 -4144 ) ( ( 0.015625 0 -1.5000076294 ) ( 0 0.0078119999 -0.9999359846 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( -1 0 0 -136 ) ( ( 0.015625 0 14 ) ( 0 0.0078130001 -1.0000640154 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 -1 0 4104 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/caulk" 0 0 0
  ( 1 0 0 128 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 0 -1 -128 ) ( ( 0.015625 0 -14 ) ( 0 0.0078130001 -0.7460148931 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( -1 0 0 -136 ) ( ( 0.0104219997 0 43.905040741 ) ( 0 0.0078130001 0.9999360442 ) ) "textures/base_wall/gotcgate2" 0 0 0
  ( 1 0 0 128 ) ( ( 0.015625 0 -14 ) ( 0 0.0078130001 -1.0000640154 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 1 0 -4144 ) ( ( 0.015625 0 -1.5000076294 ) ( 0 0.0078119999 -0.9999359846 ) ) "textures/base_wall/gotcgate" 0 0 0
 }
}
redundant_planes.map (1,090 bytes)   
Version 2
// entity 0
{
"classname" "worldspawn"
"call" "map_alphalabs1::main"
// primitive 0
{
 brushDef3
 {
  ( 0 0 1 -128 ) ( ( 0.015625 0 -14 ) ( 0 0.0078130001 0.7460148931 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 1 0 -4144 ) ( ( 0.015625 0 -1.5000076294 ) ( 0 0.0078119999 -0.9999359846 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( -1 0 0 -136 ) ( ( 0.015625 0 14 ) ( 0 0.0078130001 -1.0000640154 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 -1 0 4104 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/caulk" 0 0 0
  ( 1 0 0 128 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 0 -1 -128 ) ( ( 0.015625 0 -14 ) ( 0 0.0078130001 -0.7460148931 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( -1 0 0 -136 ) ( ( 0.0104219997 0 43.905040741 ) ( 0 0.0078130001 0.9999360442 ) ) "textures/base_wall/gotcgate2" 0 0 0
  ( 1 0 0 128 ) ( ( 0.015625 0 -14 ) ( 0 0.0078130001 -1.0000640154 ) ) "textures/base_wall/gotcgate" 0 0 0
  ( 0 1 0 -4144 ) ( ( 0.015625 0 -1.5000076294 ) ( 0 0.0078119999 -0.9999359846 ) ) "textures/base_wall/gotcgate" 0 0 0
 }
}
}
redundant_planes.map (1,090 bytes)   

Related Changesets

DarkRadiant: master 0728b7d3

2022-04-18 04:47:02

greebo

Details Diff
0005942: Improve error reporting when trying to open info files from PAKs Affected Issues
0005942
mod - include/imapresource.h Diff File
mod - radiantcore/map/ArchivedMapResource.cpp Diff File

DarkRadiant: master 611a68dc

2022-04-18 07:02:28

greebo

Details Diff
0005942: Add unit test checking Brush::buildBREP behaviour when encountering duplicated face planes.
The Doom3 game code will remove the second plane during dmap.
Affected Issues
0005942
mod - include/version.h Diff File
mod - test/Brush.cpp Diff File
add - test/resources/tdm/maps/brush_with_duplicate_planes.map Diff File

DarkRadiant: master ac46970e

2022-04-18 11:12:59

greebo

Details Diff
0005942: Add explicit IBrush::removeRedundantFaces method to be used by the map importers.
By the time the faces are processed in Brush::buildBRep() it appears to be too late to remove faces on the fly, so let's do this as sanitising step after importing the brushes.
Affected Issues
0005942
mod - include/ibrush.h Diff File
mod - radiantcore/brush/Brush.cpp Diff File
mod - radiantcore/brush/Brush.h Diff File

DarkRadiant: master 538ef672

2022-04-18 11:17:33

greebo

Details Diff
0005942: Add call to IBrush::removeRedundantFaces to all brush primitive parsers Affected Issues
0005942
mod - radiantcore/map/format/portable/PortableMapReader.cpp Diff File
mod - radiantcore/map/format/primitiveparsers/BrushDef.cpp Diff File
mod - radiantcore/map/format/primitiveparsers/BrushDef3.cpp Diff File

Issue History

Date Modified Username Field Change
18.04.2022 03:40 greebo New Issue
18.04.2022 03:41 greebo Status new => acknowledged
18.04.2022 04:47 greebo Status acknowledged => confirmed
18.04.2022 06:18 greebo Note Added: 0014803
18.04.2022 06:18 greebo File Added: redundant_planes.map
18.04.2022 06:49 greebo Assigned To => greebo
18.04.2022 06:49 greebo Status confirmed => assigned
18.04.2022 06:49 greebo Target Version 3.0.0 =>
18.04.2022 11:17 greebo Target Version => 3.0.0
18.04.2022 11:19 greebo Changeset attached => DarkRadiant master 0728b7d3
18.04.2022 11:19 greebo Changeset attached => DarkRadiant master 611a68dc
18.04.2022 11:19 greebo Changeset attached => DarkRadiant master ac46970e
18.04.2022 11:19 greebo Changeset attached => DarkRadiant master 538ef672
18.04.2022 11:22 greebo Status assigned => resolved
18.04.2022 11:22 greebo Resolution open => fixed
18.04.2022 11:22 greebo Fixed in Version => 3.0.0