Commit Graph

25 Commits

Author SHA1 Message Date
Garux
43b5148447 remove -metaMaxBBoxDistance
with current 'pre weld' strategy it's not optimization anymore, also wont work as option to merge non welded triangles with adjusted meta score
2021-09-05 14:45:01 +03:00
Garux
191d489d62 * hasten MergeMetaTriangles and SmoothMetaTriangles to perform typically in 0 seconds
* improve quality of metasurfaces and reduce their count in general case
2021-09-05 11:37:00 +03:00
Garux
bafb339c09 MergeMetaTriangles: epsilon compare st, improves merging imprecise sts, e.g. for nonplanar surfaces after q3map_tcgen or just brush face texture projection 2021-09-03 06:23:40 +03:00
Garux
d113eed245 improve MergeMetaTriangles out surfaces quality and reduce count 2021-09-03 06:19:41 +03:00
Garux
7f8e548c2f * hasten MergeMetaTriangles greatly (around 30 times in worst case)
this has negative impact on surfaces count in certain scenario (big axial surface of easily mergable triangles)
it wins predecessor once we rotate such surface
so may be consider choosing sorting plane per lump or mergables
algorithm itself is dependent on test data ordering, thus best option would be tweaking it, not prerequisites
`redundant indexes suppressed` count is always worse with this due to sorting nature, sorting per axial plane helps
assuming this optimization is not important and case dependent
2021-09-01 20:16:57 +03:00
Garux
f067b5d6c3 tweak -meta 2021-08-28 18:37:22 +03:00
Garux
0ad3d89d4a use spatially sorted indices during search of coincident vertices in AddMetaVertToSurface 2021-08-28 10:56:50 +03:00
Garux
e780b45696 enfasten -meta for nonplanar by doing cheap check 1st 2021-08-27 17:13:26 +03:00
Garux
160c1d33db remove -texrange business (assuming it's not relevant for decades)
optimize -meta (shave off 1/3 in worst case)
2021-08-27 12:18:56 +03:00
Garux
2222100316 indent classes, align by spaces 2021-03-24 00:25:15 +03:00
Garux
c7fedadcd1 use std::vector for flagging in SmoothNormals()
functions run about 10% faster due to cheaper access to a flag
2021-03-13 11:16:07 +03:00
Garux
1144be0881 add BasicVector3 uniform constructor 2021-03-11 19:14:07 +03:00
Garux
98f9023cdc minor tweaks 2021-03-11 10:57:17 +03:00
Garux
0737e962de use std::sort instead of qsort 2021-03-09 20:09:08 +03:00
Garux
293fab0ffb manage color-to-byte conversions 2021-03-05 13:37:56 +03:00
Garux
902fb46938 random tweaks 2021-03-04 16:11:00 +03:00
Garux
f9a424b6c8 more c++ 2021-03-02 22:01:09 +03:00
Garux
9857bb955b more c++ math 2021-02-26 01:10:51 +03:00
Garux
4ce944444d rewrite q3map2 math in c++ 2021-02-25 19:41:43 +03:00
Garux
99a5ef0416 refactor entity key values routines 2021-01-30 16:23:31 +03:00
Garux
623163ae9c remove unused markers 2021-01-28 02:12:15 +03:00
Garux
e11aede11a refactor surfaceType_t enum 2021-01-27 19:43:53 +03:00
Garux
20b908e31b remove excess typedef struct declarations 2021-01-23 19:26:50 +03:00
Garux
13524d59ef fix the build 2021-01-16 15:10:59 +03:00
Garux
fafa271a46 turn quake3 tools to cpp 2021-01-15 01:37:23 +03:00