View Issue Details

IDProjectCategoryView StatusLast Update
0005990The Dark ModCodingpublic16.02.2023 21:28
Reporterduzenko Assigned Tostgatilov  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformPCOSWindowsOS Version10
Product VersionTDM 2.10 
Target VersionTDM 2.12Fixed in VersionTDM 2.12 
Summary0005990: Entity scissors sometimes loose
DescriptionIn the attached map look at the water entity
It's scissor rect is much bigger than its tris
This can be a problem if we want to e.g. sort surfaces by their depth range or optimize copy to texture by limiting to entity screen size
Steps To ReproduceLoad test map
Enable use entity scissors cvar
Enable show tris
Enable show entity scissors
(optionally) Filter entity render by its index
TagsNo tags attached.
Attached Files
image.png (19,792 bytes)   
image.png (19,792 bytes)   
render.map (34,060 bytes)   
Version 2
// entity 0
{
"classname" "worldspawn"
// primitive 0
{
brushDef3
{
( 0 0 1 -136 ) ( ( 0.0390625 0 0.3515625 ) ( 0 0.0390625 -1.6015625 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -192 ) ( ( 0.0390625 0 0.7421875 ) ( 0 0.0390625 2.5 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -192 ) ( ( 0.0390625 0 -0.609375 ) ( 0 0.0390625 2.34375 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -64 ) ( ( 0.0390625 0 0 ) ( 0 0.0390625 2.8125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 -64 ) ( ( 0.0390625 0 -0.3125 ) ( 0 0.0390625 2.5 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 128 ) ( ( 0.01953125 0 -0.6875 ) ( 0 0.01953125 0.3984375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 1
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 -1.6015625 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -200 ) ( ( 0.0390625 0 0.7421875 ) ( 0 0.03906249999999999 -8.881784197001252e-16 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -192 ) ( ( 0.0390625 0 -0.609375 ) ( 0 0.0390625 -0.15625 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -64 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 -64 ) ( ( 0.0390625 0 -0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 192 ) ( ( 0.01953125 0 -0.2578125 ) ( 0 0.01953125 1.25 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 2
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 -1.6015625 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -192 ) ( ( 0.0390625 0 0.7421875 ) ( 0 0.0390625 2.5 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -200 ) ( ( 0.0390625 0 -0.6093749999999996 ) ( 0 0.0390625 -0.1953125000000002 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -64 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -64 ) ( ( 0.0390625 0 1.77635683940025e-15 ) ( 0 0.0390625 2.8125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 192 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 3
{
brushDef3
{
( 0 1 0 -192 ) ( ( 0.0390625 0 0.7421875 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -192 ) ( ( 0.0390625 0 -0.609375 ) ( 0 0.0390625 -0.15625 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -72 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -64 ) ( ( 0.0390625 0 0 ) ( 0 0.0390625 0.3125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 -64 ) ( ( 0.0390625 0 -0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 0 1 64 ) ( ( 0.01953125 0 -0.6875 ) ( 0 0.01953125 0 ) ) "textures/darkmod/nature/dirt/dirt_packed_muddy" 0 0 0
}
}
// primitive 4
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 -1.6015625 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -192 ) ( ( 0.0390625 0 -0.609375 ) ( 0 0.0390625 -0.15625 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -64 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -72 ) ( ( 0.0390625 0 2.220446049250313e-16 ) ( 0 0.0390625 0.3125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 -64 ) ( ( 0.0390625 0 -0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 64 ) ( ( 0.01953125 0 2.220446049250313e-16 ) ( 0 0.01953125 1.5625 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 5
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 -1.6015625 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -192 ) ( ( 0.0390625 0 0.7421875 ) ( 0 0.0390625 2.5 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -64 ) ( ( 0.0390625 0 0.3125 ) ( 0 0.0390625 0 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -64 ) ( ( 0.0390625 0 0 ) ( 0 0.0390625 2.8125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 -72 ) ( ( 0.0390625 0 -0.3125 ) ( 0 0.0390625 0.0390625 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 64 ) ( ( 0.01953125 0 -0.3125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 6
{
brushDef3
{
( 0 0 1 0 ) ( ( 0.01953125 0 2.220446049250313e-16 ) ( 0 0.01953125 3.75 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -192 ) ( ( 0.01953125 0 -3.75 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 0 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 -64 ) ( ( 0.01953125 0 2.220446049250313e-16 ) ( 0 0.01953125 -3.75 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 -64 ) ( ( 0.01953125 0 3.28125 ) ( 0 0.01953125 -1.110223024625157e-15 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 -64 ) ( ( 0.01953125 0 1.77635683940025e-15 ) ( 0 0.01953125 -8.881784197001252e-16 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 7
{
brushDef3
{
( 0 0 1 40 ) ( ( 0.01953125 0 2.220446049250313e-16 ) ( 0 0.01953125 5.551115123125783e-17 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -192 ) ( ( 0.01953125 0 0 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 -72 ) ( ( 0.01953125 0 0 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 -64 ) ( ( 0.01953125 0 0 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 -64 ) ( ( 0.01953125 0 0 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 0 ) ( ( 0.01953125 0 2.220446049250313e-16 ) ( 0 0.01953125 1.110223024625157e-16 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 8
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.01953125 0 -2.03125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -192 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 0 ) ( ( 0.01953125 0 -2.03125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 0 ) ( ( 0.01953125 0 -2.03125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 160 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 -8 ) ( ( 0.01953125 0 2.03125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 9
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.01953125 0 -0.78125 ) ( 0 0.01953125 -1.110223024625157e-16 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -128 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 0 ) ( ( 0.01953125 0 -0.78125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 0 ) ( ( 0.01953125 0 -0.78125 ) ( 0 0.01953125 2.775557561562891e-17 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 96 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 -8 ) ( ( 0.01953125 0 0.78125 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 11
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.03125 0 126 ) ( 0 0.125 1 ) ) "textures/darkmod/glass/clear" 0 0 0
( 0 1 0 -96 ) ( ( 0.125 0 8.88178432935015e-17 ) ( 0 0.0078125 1 ) ) "textures/darkmod/glass/clear" 0 0 0
( 1 0 0 4 ) ( ( 0.03125 0 126 ) ( 0 0.0078125 1 ) ) "textures/darkmod/glass/clear" 0 0 0
( 0 0 -1 0 ) ( ( 0.03125 0 126 ) ( 0 0.125 0 ) ) "textures/darkmod/glass/clear" 0 0 0
( 0 -1 0 64 ) ( ( 0.125 0 1 ) ( 0 0.0078125 1 ) ) "textures/darkmod/glass/clear" 0 0 0
( -1 0 0 -6 ) ( ( 0.03125 0 3 ) ( 0 0.0078125 1 ) ) "textures/darkmod/glass/clear" 0 0 0
}
}
// primitive 12
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.01953125 0 0.46875 ) ( 0 0.01953125 -8.326672684688674e-17 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -64 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 0 ) ( ( 0.01953125 0 0.46875 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 0 ) ( ( 0.01953125 0 0.46875 ) ( 0 0.01953125 -1.387778780781446e-17 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 32 ) ( ( 0.01953125 0 -1.77635683940025e-15 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 -8 ) ( ( 0.01953125 0 -0.46875 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 13
{
brushDef3
{
( 0 0 1 -128 ) ( ( 0.01953125 0 1.40625 ) ( 0 0.01953125 -1.110223024625157e-16 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 0 ) ( ( 0.01953125 0 0.15625 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 0 ) ( ( 0.01953125 0 1.40625 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 0 ) ( ( 0.01953125 0 1.40625 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 -24 ) ( ( 0.01953125 0 -0.15625 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 -8 ) ( ( 0.01953125 0 -1.40625 ) ( 0 0.01953125 0 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 14
{
brushDef3
{
( 0 0 1 -137 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 122.125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 142 ) ( ( 0.0625 0 69.875 ) ( 0 0.0625 132.34375 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -147 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 132.34375 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -462 ) ( ( 0.0625 0 122.125 ) ( 0 0.0625 132.34375 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 19 ) ( ( 0.0625 0 51.71875 ) ( 0 0.0625 132.34375 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 129 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 68.875 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 15
{
brushDef3
{
( 0 0 1 -129 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 122.125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 134 ) ( ( 0.0625 0 69.875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -147 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 1 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 69.875 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 19 ) ( ( 0.0625 0 51.71875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -142 ) ( ( 0.0625 0 123.125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 16
{
brushDef3
{
( 0 1 0 142 ) ( ( 0.0625 0 69.875 ) ( 0 0.0625 131.34375 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -147 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 131.34375 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -7 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 69.875 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -462 ) ( ( 0.0625 0 121.625 ) ( 0 0.0625 131.34375 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 19 ) ( ( 0.0625 0 51.71875 ) ( 0 0.0625 131.34375 ) ) "textures/common/caulk" 0 0 0
( 0 0 1 -1 ) ( ( 0.0625 0 140.28125 ) ( 0 0.0625 123.125 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 17
{
brushDef3
{
( 0 0 1 -129 ) ( ( 0.0625 0 25.40625 ) ( 0 0.0625 122.3125 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -147 ) ( ( 0.0625 0 25.40625 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 1 ) ( ( 0.0625 0 25.40625 ) ( 0 0.0625 69.6875 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -470 ) ( ( 0.0625 0 122.3125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 19 ) ( ( 0.0625 0 38.59375 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 462 ) ( ( 0.0625 0 68.6875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 18
{
brushDef3
{
( 0 0 1 -129 ) ( ( 0.0625 0 140.875 ) ( 0 0.0625 122.8125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 142 ) ( ( 0.0625 0 69.1875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 1 ) ( ( 0.0625 0 140.875 ) ( 0 0.0625 69.1875 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -462 ) ( ( 0.0625 0 122.8125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 11 ) ( ( 0.0625 0 51.125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -19 ) ( ( 0.0625 0 140.875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 19
{
brushDef3
{
( 0 0 1 -129 ) ( ( 0.0625 0 140.875 ) ( 0 0.0625 114.3125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 142 ) ( ( 0.0625 0 77.6875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 1 ) ( ( 0.0625 0 140.875 ) ( 0 0.0625 77.6875 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 -462 ) ( ( 0.0625 0 114.3125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 147 ) ( ( 0.0625 0 51.125 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -155 ) ( ( 0.0625 0 140.875 ) ( 0 0.0625 131.84375 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 20
{
brushDef3
{
( 0 0 1 40 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -128 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 -192 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 -64 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 120 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 72 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
// primitive 21
{
brushDef3
{
( 0 0 1 40 ) ( ( 0.01953125 0 0.796875 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 1 0 -56 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 1 0 0 -192 ) ( ( 0.01953125 0 0.796875 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 0 -1 -64 ) ( ( 0.01953125 0 0.796875 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( 0 -1 0 48 ) ( ( 0.01953125 0 -0.609375 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
( -1 0 0 72 ) ( ( 0.01953125 0 -2.015625 ) ( 0 0.01953125 0.84375 ) ) "textures/darkmod/stone/brick/blocks_darksheen_smooth" 0 0 0
}
}
}
// entity 1
{
"classname" "light"
"name" "ambient_world"
"_color" "0.6 0.6 0.6"
"light_center" "0 0 0"
"light_radius" "320 320 320"
"origin" "72 64 32"
}
// entity 2
{
"classname" "info_player_start"
"name" "info_player_start_1"
"angle" "-0.000000"
"origin" "-40 72 8"
}
// entity 3
{
"classname" "atdm:playertools_compass"
"name" "CompassEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "28 -180.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 4
{
"classname" "atdm:playertools_lantern"
"name" "LanternEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "40 -180.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 5
{
"classname" "atdm:playertools_spyglass"
"name" "SpyglassEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "50 -180.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 6
{
"classname" "atdm:playertools_health_potion"
"name" "HealthPotionsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "66 -180.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 7
{
"classname" "atdm:weapon_shortsword"
"name" "SwordEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "138 -278.5 60.5"
"rotation" "0 1 0 -1 0 0 0 0 1"
}
// entity 8
{
"classname" "atdm:weapon_blackjack"
"name" "BlackjackEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "89.62 -279.25 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 9
{
"classname" "atdm:playertools_breath_potion"
"name" "BreathPotionsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "78 -180.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 10
{
"classname" "atdm:playertools_flashbomb"
"name" "FlashbombsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "30 -278.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 11
{
"classname" "atdm:ammo_broadhead"
"name" "BroadheadsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "27 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 12
{
"classname" "atdm:ammo_broadhead"
"name" "BroadheadsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "27 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 13
{
"classname" "atdm:ammo_broadhead"
"name" "BroadheadsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "27 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 14
{
"classname" "atdm:ammo_firearrow"
"name" "FireArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "43 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 15
{
"classname" "atdm:ammo_firearrow"
"name" "FireArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "43 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 16
{
"classname" "atdm:ammo_firearrow"
"name" "FireArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "43 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 17
{
"classname" "atdm:ammo_gasarrow"
"name" "GasArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "59 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 18
{
"classname" "atdm:ammo_gasarrow"
"name" "GasArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "59 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 19
{
"classname" "atdm:ammo_gasarrow"
"name" "GasArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "59 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 20
{
"classname" "atdm:ammo_mossarrow"
"name" "MossArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "75 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 21
{
"classname" "atdm:ammo_mossarrow"
"name" "MossArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "75 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 22
{
"classname" "atdm:ammo_mossarrow"
"name" "MossArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "75 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 23
{
"classname" "atdm:ammo_noisemaker"
"name" "NoiseArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "91 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 24
{
"classname" "atdm:ammo_noisemaker"
"name" "NoiseArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "91 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 25
{
"classname" "atdm:ammo_noisemaker"
"name" "NoiseArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "91 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 26
{
"classname" "atdm:ammo_ropearrow"
"name" "RopeArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "107 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 27
{
"classname" "atdm:ammo_ropearrow"
"name" "RopeArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "107 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 28
{
"classname" "atdm:ammo_ropearrow"
"name" "RopeArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "107 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 29
{
"classname" "atdm:ammo_vinearrow"
"name" "VineArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "123 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 30
{
"classname" "atdm:ammo_vinearrow"
"name" "VineArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "123 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 31
{
"classname" "atdm:ammo_vinearrow"
"name" "VineArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "123 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 32
{
"classname" "atdm:ammo_waterarrow"
"name" "WaterArrowsEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "139 -358 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 33
{
"classname" "atdm:ammo_waterarrow"
"name" "WaterArrowsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "139 -406 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 34
{
"classname" "atdm:ammo_waterarrow"
"name" "WaterArrowsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "139 -454 41"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 35
{
"classname" "atdm:weapon_blackjack"
"name" "BlackjackHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "89.62 -295.25 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 36
{
"classname" "atdm:weapon_blackjack"
"name" "BlackjackExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "89.62 -311.25 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 37
{
"classname" "atdm:weapon_shortsword"
"name" "SwordHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "138 -294.5 60.5"
"rotation" "0 1 0 -1 0 0 0 0 1"
}
// entity 38
{
"classname" "atdm:weapon_shortsword"
"name" "SwordExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "138 -310.5 60.5"
"rotation" "0 1 0 -1 0 0 0 0 1"
}
// entity 39
{
"classname" "atdm:playertools_compass"
"name" "CompassHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "28 -196.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 40
{
"classname" "atdm:playertools_compass"
"name" "CompassExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "28 -212.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 41
{
"classname" "atdm:playertools_lantern"
"name" "LanternHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "40 -196.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 42
{
"classname" "atdm:playertools_lantern"
"name" "LanternExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "40 -212.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 43
{
"classname" "atdm:playertools_spyglass"
"name" "SpyglassHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "50 -196.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 44
{
"classname" "atdm:playertools_spyglass"
"name" "SpyglassExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "50 -212.5 109.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 45
{
"classname" "atdm:playertools_flashbomb"
"name" "FlashbombsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "30 -294.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 46
{
"classname" "atdm:playertools_flashbomb"
"name" "FlashbombsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "30 -310.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 47
{
"classname" "atdm:playertools_health_potion"
"name" "HealthPotionsHard2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "66 -196.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 48
{
"classname" "atdm:playertools_health_potion"
"name" "HealthPotionsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "66 -212.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 49
{
"classname" "atdm:playertools_breath_potion"
"name" "BreathPotionsHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "78 -196.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 50
{
"classname" "atdm:playertools_breath_potion"
"name" "BreathPotionsExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "78 -212.5 84.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 51
{
"classname" "atdm:playertools_lockpick_snake"
"name" "LockpickSnakeEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "121 -180 81"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 52
{
"classname" "atdm:playertools_lockpick_triangle"
"name" "LockpickTriangleEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "137 -180 81"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 53
{
"classname" "atdm:playertools_mine"
"name" "MinesEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "61 -278 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 54
{
"classname" "atdm:playertools_holywater"
"name" "HolyWatersEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "77 -278 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 55
{
"classname" "atdm:playertools_flashmine"
"name" "FlashminesEasy2"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "45 -278 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 56
{
"classname" "atdm:playertools_lockpick_snake"
"name" "LockpickSnakeHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "121 -196 81"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 57
{
"classname" "atdm:playertools_lockpick_snake"
"name" "LockpickSnakeExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "121 -212 81"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 58
{
"classname" "atdm:playertools_lockpick_triangle"
"name" "LockpickTriangleHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "137 -196 81"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 59
{
"classname" "atdm:playertools_lockpick_triangle"
"name" "LockpickTriangleExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "137 -212 81"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 60
{
"classname" "atdm:playertools_flashmine"
"name" "FlashminesHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "45 -294 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 61
{
"classname" "atdm:playertools_flashmine"
"name" "FlashminesExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "45 -310 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 62
{
"classname" "atdm:playertools_mine"
"name" "MinesHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "61 -294 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 63
{
"classname" "atdm:playertools_mine"
"name" "MinesExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "61 -310 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 64
{
"classname" "atdm:playertools_holywater"
"name" "HolyWatersHard2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "77 -294 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 65
{
"classname" "atdm:playertools_holywater"
"name" "HolyWatersExpert2"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "77 -310 81"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 66
{
"classname" "atdm:liquid_water"
"name" "atdm_liquid_water_3"
"model" "atdm_liquid_water_3"
"origin" "132 -8 -52"
"underwater_gui" "guis\underwater\underwater_green_thinmurk.gui"
// primitive 0
{
brushDef3
{
( 0 0 1 -12 ) ( ( 1.195944140278915e-18 -0.01953125 -0.171875 ) ( 0.01953125 1.195944140278915e-18 0.4375 ) ) "textures/water_source/water_clear" 0 0 0
( 0 1 0 -56 ) ( ( 0.0390625 0 2.664535259100376e-15 ) ( 0 0.0390625 -1.332267629550188e-15 ) ) "textures/common/nodraw" 0 0 0
( 1 0 0 -60 ) ( ( 0.0390625 0 5.625 ) ( 0 0.0390625 -2.442490654175344e-15 ) ) "textures/common/nodraw" 0 0 0
( 0 0 -1 -12 ) ( ( 0.0390625 0 5.625 ) ( 0 0.0390625 -3.552713678800501e-15 ) ) "textures/common/nodraw" 0 0 0
( 0 -1 0 -56 ) ( ( 0.0390625 0 -1.77635683940025e-15 ) ( 0 0.0390625 0 ) ) "textures/common/nodraw" 0 0 0
( -1 0 0 -60 ) ( ( 0.0390625 0 -5.625 ) ( 0 0.0390625 3.885780586188048e-16 ) ) "textures/common/nodraw" 0 0 0
}
}
}
// entity 72
{
"classname" "func_static"
"name" "func_static_2"
"model" "func_static_2"
"origin" "-4 -44 64"
// primitive 0
{
patchDef2
{
"textures/darkmod/glass/test_warp"
( 3 3 0 0 0 )
(
( ( -4 -24.00000000000001 0 1 1 ) ( -4 -24.00000000000001 64 1 0.5 ) ( -4 -24.00000000000001 128 1 0 ) )
( ( -4 -44.00000000000001 0 0.5 1 ) ( -4 -44.00000000000001 64 0.5 0.5 ) ( -4 -44.00000000000001 128 0.5 0 ) )
( ( -3.999999999999986 -64 0 0 1 ) ( -3.999999999999986 -64 64 0 0.5 ) ( -3.999999999999986 -64 128 0 0 ) )
)
}
}
}
render.map (34,060 bytes)   

Relationships

related to 0006099 resolvedstgatilov Entity bounds not conservative for animated models 

Activities

stgatilov

stgatilov

26.06.2022 18:59

administrator   ~0014927

Scissors is a feature of culling.
Culling does not look at the actual mesh, it only takes bounding box into account.
So you should imagine axis-aligned bounding box in 3D first, then draw bounding screen rectangle over it.
Is it still too large?
duzenko

duzenko

26.06.2022 19:03

developer   ~0014928

Look at the triangles on the attached screenshot
Yes, it looks way off
stgatilov

stgatilov

28.06.2022 06:06

administrator   ~0014930

I set:
  r_showTris 1
  r_useEntityScissors 1
  r_showEntityScissors 1
I don't see the triangle like in your screenshot anywhere.
Also, I don't see any rectangles rendered.

What am I doing wrong?
duzenko

duzenko

29.06.2022 05:17

developer   ~0014932

My .cfg attached, not sure what could cause the difference
image-2.png (4,184,066 bytes)
Darkmod.cfg (14,557 bytes)   
seta gui_mediumFontLimit "0.30"
seta gui_smallFontLimit "0.15"
seta net_socksPassword ""
seta net_socksUsername ""
seta net_socksPort "1080"
seta net_socksServer ""
seta net_socksEnabled "0"
seta win_topmost "0"
seta win_maximized "1"
seta win_ypos "-8"
seta win_xpos "54"
seta in_padInverseRY "0"
seta in_padInverseRX "0"
seta in_padDeadZone "0.15"
seta in_padMouseSpeed "2.5"
seta sys_lang "english"
seta s_alReverbGain "1"
seta s_decompressionLimit "6"
seta s_useHRTF "1"
seta s_useEAXReverb "1"
seta s_numberOfSpeakers "2"
seta s_doorDistanceAdd "450"
seta s_globalFraction "0.8"
seta s_subFraction "0.75"
seta s_playDefaultSound "0"
seta s_volume_dB "0"
seta s_meterTopTime "2000"
seta s_reverse "0"
seta s_spatializationDecay "2"
seta s_maxSoundsPerShader "0"
seta s_device "default"
seta s_diffractionMax "10"
seta r_usePersistentMapping "1"
seta r_useFenceSync "1"
seta r_frameIndexMemory "4096"
seta r_frameVertexMemory "4096"
seta r_useParallelAddModels "0"
seta r_maxShadowMapLight "1000"
seta r_postprocess_sharpness "1"
seta r_postprocess_sharpen "0"
seta r_postprocess_desaturation "0.00"
seta r_postprocess_colorCorrectBias "0.0"
seta r_postprocess_colorCorrection "5"
seta r_postprocess_colorCurveBias "0.0"
seta r_postprocess_brightness "1"
seta r_postprocess_gamma "1"
seta r_cinematic_legacyRoq "0"
seta r_shadowMapSize "400"
seta r_fboDepthBits "24"
seta r_fboSRGB "0"
seta r_fboColorBits "32"
seta r_newFrob "0"
seta r_glCoreProfile "0"
seta r_useAnonreclaimer "0"
seta r_screenshot_format "jpg"
seta r_debugArrowStep "120"
seta r_debugLineWidth "1"
seta r_debugLineDepthTest "0"
seta com_smp "1"
seta r_forceLoadImages "0"
seta r_lightSourceRadius "0"
seta r_shadows "1"
seta r_shadowPolygonFactor "0"
seta r_shadowPolygonOffset "-1"
seta r_offsetunits "-0.1"
seta r_offsetfactor "-2"
seta r_clear "1"
seta r_ambientGamma "1"
seta r_ambientMinLevel ".5"
seta r_swapInterval "1"
seta r_softShadowsRadius "1.0"
seta r_softShadowsQuality "0"
seta r_fullscreen "0"
seta r_multiSamples "0"
seta r_glDebugContext "1"
seta r_glDebugOutput "1"
seta r_smallCharSpacing ".8"
seta r_tonemap "0"
seta r_glBlacklistExtensions ""
seta image_mipmapMode "0"
seta image_useTexStorage "1"
seta image_levelLoadParallel "1"
seta image_blockChecksum "0"
seta image_downSizeLimit "256"
seta image_ignoreHighQuality "0"
seta image_downSizeBumpLimit "128"
seta image_downSizeSpecularLimit "64"
seta image_downSizeBump "0"
seta image_downSizeSpecular "0"
seta image_usePrecompressedTextures "1"
seta image_useNormalCompression "1"
seta image_useCompression "1"
seta image_preload "1"
seta image_forceDownSize "0"
seta image_downSize "0"
seta image_lodbias "0"
seta image_anisotropy "4"
seta image_filter "GL_LINEAR_MIPMAP_LINEAR"
seta r_debugGLSL "0"
seta r_fboScaling "1"
seta r_fboResolution "1"
seta r_shadowMapSinglePass "0"
seta r_shadowMapCullFront "0"
seta r_volumetricDither "1"
seta r_volumetricSamples "1"
seta r_cinematic_checkImmediately "0"
seta r_cinematic_log_flush "0"
seta r_cinematic_log_ffmpeg "0"
seta r_cinematic_log "0"
seta r_bloom_blursteps "2"
seta r_bloom_downsample_limit "128"
seta r_bloom_weight "0.3"
seta r_bloom_detailblend "0.5"
seta r_bloom_threshold_falloff "8"
seta r_bloom_threshold "0.7"
seta r_bloom "0"
seta r_useNewBackend "0"
seta r_gpuBufferNonpersistentUpdateMode "0"
seta r_frobOutlineBlurPasses "2"
seta r_frobHighlightColorAddB "0.02"
seta r_frobHighlightColorAddG "0.02"
seta r_frobHighlightColorAddR "0.02"
seta r_frobHighlightColorMulB "0.3"
seta r_frobHighlightColorMulG "0.3"
seta r_frobHighlightColorMulR "0.3"
seta r_frobOutlineExtrusion "-3.0"
seta r_frobOutlineColorA "1.0"
seta r_frobOutlineColorB "1.0"
seta r_frobOutlineColorG "1.0"
seta r_frobOutlineColorR "1.0"
seta r_frobOutline "1"
seta r_frobDepthOffset "0.0005"
seta r_frobIgnoreDepth "0"
seta r_ssao_edgesharpness "1"
seta r_ssao_base ".3"
seta r_ssao_intensity "1.0"
seta r_ssao_bias "0.05"
seta r_ssao_radius "44"
seta r_ssao "0"
seta jobs_numThreads "2"
seta net_serverDlTable ""
seta net_serverDlBaseURL ""
seta net_serverDownload "0"
seta mod_validSkins "skins/characters/player/marine_mp;skins/characters/player/marine_mp_green;skins/characters/player/marine_mp_blue;skins/characters/player/marine_mp_red;skins/characters/player/marine_mp_yellow"
seta g_mapCycle "mapcycle"
seta g_voteFlags "0"
seta g_gameReviewPause "10"
seta g_countDown "10"
seta g_password ""
seta g_rotoscope "0"
seta g_testModelHeadJoint "Spine2"
seta g_testModelHead "atdm:ai_head_citywatch"
seta g_skipViewEffects "0"
seta g_fov "100"
seta g_showBrass "1"
seta g_showProjectilePct "0"
seta g_showHud "1"
seta g_showPlayerShadow "0"
seta pm_air_regainingSpeed "4"
seta pm_air "1800"
seta pm_modelView "0"
seta pm_thirdPersonDeath "0"
seta pm_thirdPerson "0"
seta pm_thirdPersonClip "1"
seta pm_thirdPersonAngle "0"
seta pm_thirdPersonHeight "0"
seta pm_thirdPersonRange "80"
seta pm_bobroll "0.0015"
seta pm_bobpitch "0.001"
seta pm_bobup "0.03"
seta pm_runroll "0.003"
seta pm_runpitch "0.001"
seta pm_runbob "0.35"
seta pm_walkbob "0.3"
seta pm_crouchbob "0.2"
seta pm_bboxwidth "32"
seta pm_crouchrate "0.87"
seta pm_deadviewheight "10"
seta pm_deadheight "20"
seta pm_normalviewheight "68"
seta pm_normalheight "74"
seta pm_crouchviewheight "34"
seta pm_crouchheight "38"
seta pm_maxviewpitch "89"
seta pm_minviewpitch "-89"
seta pm_noclipspeed "200"
seta pm_walkspeed "70"
seta pm_stepsize "16"
seta pm_jumpheight "48"
seta g_enablePortalSky "2"
seta g_showcamerainfo "0"
seta g_damageScale "1"
seta g_decals "1"
seta g_doubleVision "1"
seta g_bloodEffects "1"
seta g_projectileLights "1"
seta g_muzzleFlash "1"
seta gui_CenterY "0.5"
seta gui_CenterX "0.5"
seta gui_Height "1.0"
seta gui_Width "1.0"
seta ui_showGun "1"
seta ui_autoSwitch "1"
seta ui_team "Red"
seta ui_skin "skins/characters/player/marine_mp"
seta ui_name "Player"
seta si_serverURL ""
seta si_spectators "1"
seta si_usePass "0"
seta si_warmup "0"
seta si_teamDamage "0"
seta si_timeLimit "10"
seta si_maxPlayers "4"
seta si_map "game/mp/d3dm1"
seta si_gameType "singleplayer"
seta si_name "DOOM Server"
seta tdm_lod_bias "1"
seta tdm_voice_from_off_volume "0"
seta tdm_voice_player_volume "0"
seta tdm_music_volume "0"
seta tdm_door_auto_open_on_unlock "1"
seta tdm_bow_aimer "0"
seta tdm_lp_debug_hud "0"
seta tdm_lp_pawlow "0"
seta tdm_lp_randomize "1"
seta tdm_lp_auto_pick "0"
seta tdm_lp_autopick_attempts "3"
seta tdm_lp_pick_timeout "500"
seta tdm_lp_sample_delay "10"
seta tdm_lp_base_count "5"
seta tdm_empty_model "models/darkmod/misc/system/empty.lwo"
seta tdm_lg_model "models/darkmod/misc/system/lightgem.lwo"
seta tdm_lg_weak "0"
seta tdm_lg_interleave_min "40"
seta tdm_lg_interleave "0"
seta pm_rope_snd_rep_dist "32"
seta pm_min_stepsound_interval "200"
seta pm_stepvol_crouch_creep "-7"
seta pm_stepvol_crouch_run "4"
seta pm_stepvol_crouch_walk "-2"
seta pm_stepvol_creep "-5"
seta pm_stepvol_run "8"
seta pm_stepvol_walk "0"
seta tdm_underwater_blur "3"
seta tdm_rope_pull_force_factor "140"
seta gui_objectiveTextSize "1.0"
seta gui_barSize "1.0"
seta gui_lightgemSize "1.0"
seta gui_bigTextSize "1.0"
seta gui_smallTextSize "1.0"
seta gui_iconSize "1.0"
seta tdm_subtitles "1"
seta tdm_inv_use_visual_feedback "1"
seta tdm_door_control "0"
seta tdm_inv_use_on_frob "1"
seta tdm_inv_loot_sound "frob_loot"
seta tdm_inv_hud_pickupmessages "1"
seta tdm_hud_hide_lightgem "0"
seta tdm_hud_opacity "0.7"
seta tdm_invgrid_hud_file "guis/tdm_invgrid_parchment.gui"
seta tdm_grabber_reverse_control "0"
seta tdm_bounce_sound_min_vel "80"
seta tdm_bounce_sound_max_vel "400"
seta tdm_throw_time "1200"
seta tdm_throw_vellimit_max "900"
seta tdm_throw_vellimit_min "300"
seta tdm_throw_impulse_max "3500"
seta tdm_throw_impulse_min "1200"
seta tdm_phys_show_momentum "0"
seta tdm_ai_hearing_hardcore "1.5"
seta tdm_ai_hearing_challenging "1.0"
seta tdm_ai_hearing_forgiving "0.6"
seta tdm_ai_hearing_nearly_deaf "0.2"
seta tdm_ai_hearing "2"
seta tdm_ai_vision_hardcore "1.005"
seta tdm_ai_vision_challenging "0.804"
seta tdm_ai_vision_forgiving "0.402"
seta tdm_ai_vision_nearly_blind "0.134"
seta tdm_ai_vision "1"
seta tdm_melee_difficulty "normal"
seta tdm_melee_max_particles "10"
seta tdm_melee_forbid_auto_parry "0"
seta tdm_melee_auto_parry "1"
seta tdm_melee_invert_parry "0"
seta tdm_melee_invert_attack "0"
seta tdm_melee_mouse_thresh_ "0"
seta tdm_drag2_af_inair_friction "0.5"
seta tdm_drag2_af_reduceforce_radius "10.0"
seta tdm_drag2_af_weight_ratio_canlift "5.0"
seta tdm_drag2_af_weight_ratio "0.8"
seta tdm_drag2_rigid_acceleration_angle "0.03"
seta tdm_drag2_rigid_angle_halfing_time "0.02"
seta tdm_drag2_rigid_acceleration_radius "1.0"
seta tdm_drag2_rigid_distance_halfing_time "0.1"
seta tdm_drag2_rigid_silentmode "1"
seta tdm_drag2_targetpos_averaging_time "0.1"
seta tdm_drag1_af_ground_timer "800"
seta tdm_drag1_damping_af "0.4"
seta tdm_drag1_damping "0.0"
seta tdm_drag1_limit_force "1"
seta tdm_drag_af_free "0"
seta tdm_drag_new "1"
seta tdm_drag_force_max "100000"
seta tdm_drag_stuck_dist "38.0"
seta tdm_drag_encumber_max "0.4"
seta tdm_drag_encumber_maxmass "55"
seta tdm_drag_encumber_minmass "10"
seta tdm_drag_jump_masslimit "20"
seta tdm_dragged_item_highlight "1"
seta tdm_collision_damage_scale_horiz "0.5"
seta tdm_collision_damage_scale_vert "1"
seta tdm_multiloot_max_interval "2000"
seta tdm_multiloot_min_interval "300"
seta tdm_frobhelper_ignore_size "40.0"
seta tdm_frobhelper_fadeout_duration "500"
seta tdm_frobhelper_fadein_duration "1500"
seta tdm_frobhelper_fadein_delay "500"
seta tdm_frobhelper_alpha "1.0"
seta tdm_frobhelper_alwaysVisible "0"
seta tdm_frobhelper_active "1"
seta tdm_frob_fadetime "100"
seta tdm_frob_width "10.0"
seta tdm_frob_distance_default "63"
seta pm_lean_toggle "0"
seta pm_lean_door_bounds_exp "8.0"
seta pm_lean_door_max "40"
seta pm_lean_door_increments "10"
seta pm_lean_to_valid_increments "25"
seta pm_lean_forward_stretch "15"
seta pm_lean_forward_height "0.4"
seta pm_lean_forward_time "400.0"
seta pm_lean_forward_angle "2"
seta pm_lean_stretch "2"
seta pm_lean_height "0.4"
seta pm_lean_time "400.0"
seta pm_lean_angle "15.0"
seta pm_shoulderDrop_angleIncrement "22.5"
seta pm_shoulderDrop_maxAngle "91.0"
seta pm_shoulderAnim_delay_msecs "0.0"
seta pm_shoulderAnim_dip_dist "5.0"
seta pm_shoulderAnim_rockDist "3.0"
seta pm_shoulderAnim_dip_duration "0.5"
seta pm_shoulderAnim_msecs "700.0"
seta tdm_reattach_delay "100"
seta tdm_crouch_toggle_hold_time "400"
seta tdm_toggle_crouch "1"
seta tdm_footfall_sounds_movetype_specific "1"
seta pm_ladderSlide_speedLimit "400.0"
seta pm_mantle_cancel_speed "150.0"
seta pm_mantle_pullFast_msecs "450"
seta pm_mantle_maxLowObstacleHeight "36.0"
seta pm_mantle_minflatness "0.707"
seta pm_mantle_height "0.2"
seta pm_mantle_reach "0.5"
seta pm_weightmod "1"
seta pm_softhinderance_run "1.0"
seta pm_softhinderance_walk "0.5"
seta pm_softhinderance_creep "0.2"
seta pm_softhinderance_active "1"
seta pm_push_max_mass "200"
seta pm_push_heavy_threshold "0.15"
seta pm_push_accel_time "1000"
seta pm_push_start_delay "1000"
seta pm_push_maximpulse "300"
seta pm_pushmod "0.15"
seta tdm_savegame_compress "1"
seta tdm_force_savegame_load "0"
seta tdm_mainmenu_confirmquit "0"
seta tdm_debug_aastype "aas32"
seta tdm_allow_http_access "1"
seta tdm_proxy_pass ""
seta tdm_proxy_user ""
seta tdm_proxy ""
seta tdm_fm_restart_delay "0"
seta tdm_default_relations_def "atdm:team_relations_default"
seta tdm_show_menu_tooltips "1"
seta tdm_show_trainer_messages "1"
seta tdm_menu_music "0"
seta tdm_wideScreenMode "4"
seta r_aspectRatio "2"
seta r_customHeight "1200"
seta r_customWidth "1920"
seta tdm_ai_show_aasfuncobstacle_state "0"
seta tdm_show_health "0"
seta tdm_ai_debug_greetings "0"
seta tdm_ai_debug_transition_barks "0"
seta tdm_ai_opt_nolipsync "0"
seta tdm_ai_opt_update_enemypos_interleave "48"
seta tdm_ai_opt_interleavethinkframes "0"
seta tdm_ai_opt_interleavethinkskipPVS "0"
seta tdm_ai_opt_interleavethinkmaxdist "0"
seta tdm_ai_opt_interleavethinkmindist "0"
seta tdm_ai_search_type "4"
seta tdm_ai_visdist_show "0.0"
seta tdm_ai_search_show "0.0"
seta tdm_showko "0"
seta tdm_showsprop_radius "0"
seta tdm_showsprop "0"
seta tdm_spr_debug "0"
seta tdm_sndprop_disable "0"
seta tdm_ai_acuity_L5 "1.5"
seta tdm_ai_acuity_L4 "1.3"
seta tdm_ai_acuity_L3 "1.1"
seta tdm_ai_show_conversationstate "0"
seta tdm_ai_show_enemy_visibility "0"
seta tdm_ai_sight_scale "1000.0"
seta tdm_ai_sight_thresh "1.0"
seta tdm_ai_showelevator "0"
seta tdm_ai_showdoor "0"
seta tdm_ai_debug_blocked "0"
seta tdm_ai_showAASarea "0"
seta tdm_ai_showgoalpos "0"
seta tdm_ai_showdest "0"
seta tdm_ai_showalert "0"
seta tdm_ai_showtasks "0"
seta tdm_ai_showanimstate "0"
seta tdm_ai_showko "0"
seta tdm_ai_showfov "0"
seta tdm_ai_debug "0"
seta tdm_ai_bumpobject_impulse "250"
seta tdm_ai_tact "20.0"
seta tdm_ai_sight_combat_cutoff "20.0"
seta tdm_ai_sightmin "15.0"
seta tdm_ai_sightmax "40.0"
seta tdm_ai_sight_mag "1.0"
seta tdm_ai_sight_prob "0.7"
seta tdm_ai_showname "0"
seta tdm_ai_showbark "0"
seta tdm_ai_sndvol "0.0"
seta tdm_player_wait_until_ready "1"
seta com_automation_port "3879"
seta in_padInvertPitchAxis "0"
seta in_padInvertYawAxis "0"
seta m_strafeSmooth "4"
seta m_smooth "1"
seta m_strafeScale "6.25"
seta m_yaw "0.022"
seta m_pitch "-0.022"
seta sensitivityMenuOverride "0"
seta sensitivityMenu "1.0"
seta sensitivity "5"
seta in_toggleZoom "0"
seta in_toggleCrouch "0"
seta in_toggleRun "0"
seta in_alwaysRun "1"
seta in_freeLook "1"
seta in_anglespeedkey "1.5"
seta in_pitchspeed "140"
seta in_yawspeed "140"
seta gui_configServerRate "0"
seta com_savegame_preview_format "jpg"
seta com_numQuickSaves "2"
seta com_guid ""
seta com_maxFPS "200"
seta com_fixedTic "1"
seta decl_stack "1"
seta in_padL3HoldWhileDeflected "1"
seta in_padTwoButtonMaxTimeMs "50"
seta in_padLongPressTimeMs "250"
seta com_preloadDemos "0"
seta com_compressDemos "1"
seta con_fontColor "2"
seta con_fontSize "5"
seta con_legacyFont "0"
seta com_product_lang_ext "1"
seta logFile "0"
seta com_showFPSavg "99"
seta com_showFPS "0"
seta com_purgeAll "0"
seta r_skipDynamicShadows "0"
Darkmod.cfg (14,557 bytes)   
stgatilov

stgatilov

16.02.2023 21:20

administrator   ~0015948

I finally managed to reproduce the issue on the testmap.
It does not look anywhere like the tetrahedron on the screenshot.
I have attached a proper screenshot, where the atdm_liquid_water_3 entity with orange bounding box gets scissor rect drawn in blue.
Yeah, it is quite a bit larger than necessary.

The reason for that is that the model surface has large bounding box.
And it is in turn caused by the deform in material, according to this code
            default:
                {
                // the amount here is somewhat arbitrary, designed to handle
                // autosprites and flares, but could be done better with exact
                // deformation information.
                // Note that this doesn't handle deformations that are skinned in
                // at run time...
                srfTriangles_t *tri = surf->geometry;
                idVec3 mid = ( tri->bounds[1] + tri->bounds[0] ) * 0.5f;
                float radius = ( tri->bounds[0] - mid ).Length();
                radius += 20.0f;

                tri->bounds[0][0] = mid[0] - radius;
                tri->bounds[0][1] = mid[1] - radius;
                tri->bounds[0][2] = mid[2] - radius;

                tri->bounds[1][0] = mid[0] + radius;
                tri->bounds[1][1] = mid[1] + radius;
                tri->bounds[1][2] = mid[2] + radius;
                }
                break;

Recall that material deform can arbitrarily modify the geometry of a surface during rendering.
This code is just some crude hack to expand bbox by some moderately large amount, hoping that typical cases won't exceed it.
There is also special case for DFRM_PARTICLE, where good conservative bounds are computed.

In this particular case, the material has DFRM_TURB (turbulent) deform.
While its comment says it modifies XYZ and ST, the code only modifies XYZ.
So in principle we can make it use the "no deform" case for computing bounding box.
5990_larger_scissor.jpg (369,390 bytes)
stgatilov

stgatilov

16.02.2023 21:28

administrator   ~0015949

Removed bbox expansion for turbulent case in svn rev 10274.

Issue History

Date Modified Username Field Change
25.06.2022 16:11 duzenko New Issue
25.06.2022 16:11 duzenko Status new => assigned
25.06.2022 16:11 duzenko Assigned To => stgatilov
25.06.2022 16:11 duzenko File Added: image.png
25.06.2022 16:11 duzenko File Added: render.map
25.06.2022 16:11 duzenko Steps to Reproduce Updated
26.06.2022 18:57 stgatilov Product Version TDM 2.11 => TDM 2.10
26.06.2022 18:57 stgatilov Summary Entity scissors sometimes wrong => Entity scissors sometimes loose
26.06.2022 18:59 stgatilov Note Added: 0014927
26.06.2022 19:03 duzenko Note Added: 0014928
28.06.2022 06:06 stgatilov Note Added: 0014930
29.06.2022 05:17 duzenko Note Added: 0014932
29.06.2022 05:17 duzenko File Added: image-2.png
29.06.2022 05:17 duzenko File Added: Darkmod.cfg
17.09.2022 18:45 stgatilov Relationship added related to 0006099
13.12.2022 18:51 nbohr1more Target Version TDM 2.11 => TDM 2.12
16.02.2023 21:20 stgatilov Note Added: 0015948
16.02.2023 21:20 stgatilov File Added: 5990_larger_scissor.jpg
16.02.2023 21:28 stgatilov Note Added: 0015949
16.02.2023 21:28 stgatilov Status assigned => resolved
16.02.2023 21:28 stgatilov Resolution open => fixed
16.02.2023 21:28 stgatilov Fixed in Version => TDM 2.12