Commit Graph

254 Commits

Author SHA1 Message Date
Garux 16dddad640 remove global entity_t *mapEnt; 2021-11-06 13:50:30 +03:00
Garux 522f6f907e rename cmdlib and imagelib to fix name clashes 2021-10-31 14:13:02 +03:00
Garux 512f0a959b manage headers 2021-10-31 10:54:57 +03:00
Garux da98e8fde3 various code cleanups 2021-10-30 16:04:31 +03:00
Garux e62da4c621 * patchMeta: fix: keep playerclip patches for collisions
* autocaulk: do not impact fog brushes with all faces culled (global fog case)
decompilation: detail flag deduction: avoid detail hints, areaportals, antiportals by surfaceparm structural check
change hardcoded surfaceflags use to statically evaluated ones for the given game
2021-10-29 11:29:32 +03:00
Garux 7626f69b02 minor tweaks 2021-10-28 12:25:26 +03:00
Garux 977781a621 minor tweaks 2021-10-26 17:26:35 +03:00
Garux 4726542134 replace Q_EXTERN Q_ASSIGN macro trick by inline variable specifier
remove explicit initialization, where it equals to default zero initialization
2021-10-22 04:13:08 +03:00
Garux bf6389fc26 use #pragma once 2021-10-22 02:19:50 +03:00
Garux 6a7550a6ba shorten special class members declarations 2021-10-14 23:31:07 +03:00
Garux a719e012fe * -mergebsp [options] <mainBsp.bsp> <bspToinject.bsp>: Inject latter BSP to former. Tree and vis data of the main one are preserved.
* -mergebsp -fixnames: Make incoming BSP target/targetname names unique to not collide with existing names
	* -mergebsp -world: Also merge worldspawn model (brushes as if they were detail, no BSP tree is affected) (only merges entities by default)
2021-10-13 22:50:43 +03:00
Garux fa1933fff5 secure image_t business
no need to keep in mind its destructor
2021-10-06 15:28:47 +03:00
Garux 9660fbb6f1 * unlimit MAX_IMAGES 2021-10-06 10:51:32 +03:00
Garux 44ced506e3 autopacker: use LoadBSPFilePartially
LoadBSPFilePartially: support RBSP
2021-10-05 13:44:30 +03:00
Garux 82d038f6d1 remove global error prone char name[ 1024 ] 2021-10-04 09:59:17 +03:00
Garux a0e79e8ecd refactor autopk3
unlimit list sizes
	* -pk3, -repack: support multiple bsp files input by command line
2021-10-02 19:13:28 +03:00
Garux 5283f631e7 std::vector<rawGridPoint_t> rawGridPoints 2021-09-28 05:07:56 +03:00
Garux d1ccdb0fcf std::vector<bspDrawVert_t> yDrawVerts 2021-09-27 21:50:46 +03:00
Garux 1b1e6769e8 std::vector<fog_t> mapFogs 2021-09-27 15:40:39 +03:00
Garux efa324ebe6 remove unused stuff 2021-09-27 15:12:53 +03:00
Garux ecf9a46e78 std::vector<bspAdvertisement_t> bspAds 2021-09-27 13:29:59 +03:00
Garux ce0dd55cc5 std::vector<bspFog_t> bspFogs 2021-09-27 12:56:08 +03:00
Garux 4642753564 std::vector<bspDrawSurface_t> bspDrawSurfaces 2021-09-27 06:14:12 +03:00
Garux 7993cc8a1f std::vector<int> bspDrawIndexes 2021-09-26 22:10:46 +03:00
Garux c58bd839da std::vector<bspDrawVert_t> bspDrawVerts 2021-09-26 21:41:46 +03:00
Garux 560060a908 std::vector<byte> bspVisBytes 2021-09-26 20:34:41 +03:00
Garux 28dfbaa5ab std::vector<bspGridPoint_t> bspGridPoints 2021-09-26 20:01:26 +03:00
Garux e4d6e63e91 std::vector<byte> bspLightBytes 2021-09-25 19:16:25 +03:00
Garux f5c1a11a66 std::vector<bspBrushSide_t> bspBrushSides 2021-09-25 10:17:51 +03:00
Garux 9f63742fda std::vector<std::uint8_t> opaqueBrushes 2021-09-24 17:35:58 +03:00
Garux 260dc59d4a std::vector<bspBrush_t> bspBrushes 2021-09-24 17:05:00 +03:00
Garux a20717c364 std::vector<int> bspLeafBrushes 2021-09-24 16:27:10 +03:00
Garux 6066fe2cc2 std::vector<int> bspLeafSurfaces 2021-09-24 16:16:02 +03:00
Garux b1f32e6faa std::vector<bspNode_t> bspNodes 2021-09-24 16:06:34 +03:00
Garux bccd3bafd7 std::vector<bspPlane_t> bspPlanes 2021-09-24 15:43:24 +03:00
Garux 76d2b565b3 std::vector<bspLeaf_t> bspLeafs 2021-09-24 15:25:58 +03:00
Garux 6267f1d0af std::vector<char> bspEntData 2021-09-24 13:57:17 +03:00
Garux 58911934e0 std::vector<bspShader_t> bspShaders 2021-09-24 13:39:04 +03:00
Garux 6e2fc92576 std::vector<bspModel_t> bspModels 2021-09-24 12:11:11 +03:00
Garux 0e0a295330 * new: bsp export/import in json format; Usage: q3map2 -json <-unpack|-pack> [-v] <mapname> 2021-09-23 03:11:43 +03:00
Garux 29ba8c4876 refactor command line arguments parsing 2021-09-19 11:58:00 +03:00
Garux b78513f9f8 refactor InitPaths()
get rid of MAX_OS_PATH
2021-09-17 19:50:36 +03:00
Garux 97ad9bf5c5 separate path manipulating functions
unlimit VFS_MAXDIRS
2021-09-15 08:07:05 +03:00
Garux e1186dd734 subdivide files 2021-09-13 22:29:44 +03:00
Garux ef635cd95c remove direct uses of MAIN_C macro 2021-09-13 16:33:29 +03:00
Garux 68b8d7d5dc refactor game configs: using class inheritance to avoid massive duplication 2021-09-13 16:11:01 +03:00
Garux 18c741a960 remove unused side_t field 2021-09-08 19:45:04 +03:00
Garux 204c3138e2 emit warning on expected practical engine fog limit overflow 2021-09-07 08:14:04 +03:00
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 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