Commit Graph
100 Commits
Author SHA1 Message Date
Jan Laupetin 161ab45306 chore: handle iw4 technique flags 2026-03-14 09:09:57 +01:00
Jan Laupetin 503fe89251 feat: load shader args for dx9 shaders 2026-03-14 09:09:57 +01:00
Jan Laupetin 6e19b94b9b chore: use templated loaders for shaders in IW4,T6 2026-03-14 09:09:57 +01:00
Jan Laupetin fbfd418e20 feat: add templated technique compiler for IW4 2026-03-14 09:09:56 +01:00
Jan Laupetin dbe5cffb2f feat: use templated techset compiler for IW4 2026-03-14 09:09:56 +01:00
Jan Laupetin 3bb7f1aa05 chore: use templated vertex decl compiler 2026-03-14 09:09:56 +01:00
Jan Laupetin 5272b9060d chore: use templating for t6 techset compilation 2026-03-14 09:09:56 +01:00
Jan Laupetin 02a3394c2d fix: fix extraction of source templating games 2026-03-14 09:09:55 +01:00
Jan Laupetin 3aac05a516 fix: make sure matrix shader args with less than 4 rows are properly dumped and loaded 2026-03-14 09:09:55 +01:00
Jan Laupetin 2f12092773 fix: indentation in shader dumping error message 2026-03-14 09:09:55 +01:00
Jan Laupetin eae57d9da0 feat: template techset and shader dumping for IW4,T6 2026-03-14 09:09:55 +01:00
Jan Laupetin bb9dba4132 chore: add CommonCodeSourceInfos for IW4 2026-03-14 09:09:45 +01:00
Jan Laupetin 3e85db8110 fix: header transformation plugin not properly handling utf-8 characters 2026-03-14 08:40:26 +01:00
Jan Laupetin 76881dc77f chore: update to vite 8 2026-03-14 08:16:40 +01:00
Jan Laupetin fe05816af0 fix: do not spam zcg executions when building on linux
* make considers the timestamp of every output instead of only for the
  log
* to fix this remove all outputs from the command other than the log
2026-03-06 18:26:44 +01:00
Jan Laupetin 90d7f92ddd chore: replace all usages of removed ClassUtils macros 2026-03-06 00:13:04 +01:00
Jan Laupetin bc16febfe2 chore: remove utilities from ClassUtils that were meant for cpp backwards compatibility 2026-03-05 21:50:00 +00:00
Jan Laupetin f8b3361bbe chore: add build log for zcg 2026-03-05 21:08:39 +00:00
Jan Laupetin 027d47d549 chore: add buildlog to all templated code 2026-03-05 21:08:39 +00:00
Jan Laupetin 5f28bcc58a chore: use TextFileCheckDirtyOutput for RawTemplater 2026-03-05 19:55:32 +00:00
Jan Laupetin d80cdd9712 chore: add TextFileCheckDirtyOutput to FileUtils 2026-03-05 20:30:36 +01:00
Jan Laupetin d469af2328 chore: use namespace for FileUtils 2026-03-05 20:27:47 +01:00
Jan Laupetin 304ebd56a7 chore: do not write ZCG output if up to date 2026-03-05 18:37:34 +00:00
Jan Laupetin 6eb0ec4179 chore: reorganize precompiled index logic into separate file 2026-03-04 22:47:30 +00:00
Jan Laupetin 1611c222cc chore: add logic for computing precompiled index on material pass 2026-03-04 22:00:30 +00:00
Jan Laupetin 925e51cb10 fix: not setting correct flags on technique post processing when reusing assets 2026-03-02 22:09:02 +00:00
Jan Laupetin 12199b5395 fix: not properly respecting code const array boundaries when dumping techniques 2026-03-02 22:09:02 +00:00
Jan Laupetin d0ee167d2d fix: not properly setting common technique shader type 2026-03-02 22:09:01 +00:00
Jan Laupetin bbb282a206 chore: deactivate IW4 material and techset compilation for now 2026-03-02 22:09:01 +00:00
Jan Laupetin 7ab9adc17c chore: handle flag 80 on t6 techniques 2026-03-02 22:09:01 +00:00
Jan Laupetin dcd67adad4 fix: shader arg matrix row count 2026-03-02 22:09:00 +00:00
Jan Laupetin 400c6ca78a fix: use buffer binding point instead of index 2026-03-02 22:09:00 +00:00
Jan Laupetin b2f51b2ae1 fix: technique loading tech flags 2026-03-02 22:09:00 +00:00
Jan Laupetin 5a126157f8 fix: not setting shader arg flags when auto creating 2026-03-02 22:08:59 +00:00
Jan Laupetin c0a7114b24 chore: add tests for techset and technique compilation 2026-03-02 22:08:59 +00:00
Jan Laupetin aec1372c5b fix: vertex decl compiler not recognizing abbreviations with more than 1 digit 2026-03-02 22:08:59 +00:00
Jan Laupetin 5ab3fd7ca0 chore: enable techset debugging on dumper creation level 2026-03-02 22:08:59 +00:00
Jan Laupetin 38cb7d3759 feat: set proper tech flags and sampler flags for loaded techniques 2026-03-02 22:08:58 +00:00
Jan Laupetin a3f250fdca feat: compile t6 techsets 2026-03-02 22:08:58 +00:00
Jan Laupetin 38abe459e1 fix: errors with common techset dumping
* not respecting transposing matrices
* not respecting arrays
2026-03-02 22:08:58 +00:00
Jan Laupetin 86ae57578b feat: add t6 sub asset loaders for shaders 2026-03-02 22:08:57 +00:00
Jan Laupetin 9a527c16fa feat: add t6 vertexdecl sub asset creator 2026-03-02 22:08:57 +00:00
Jan Laupetin 3ef8cc7260 chore: add more details to common techset infos in t5,t6 2026-03-02 22:08:57 +00:00
Jan Laupetin e66030a5df chore: improve game shader types 2026-03-02 22:08:56 +00:00
Jan Laupetin 2d2912741b fix: not properly initializing sub asset pools 2026-03-02 22:08:56 +00:00
Jan Laupetin 2e3b5501b6 chore: extract more information from d3d11 shaders 2026-03-02 22:08:56 +00:00
Jan Laupetin a6d63e9b31 fix: constraint on asset name arrays 2026-03-02 22:08:56 +00:00
Jan Laupetin e749514972 fix: compilation with CommonTechset 2026-03-02 22:08:55 +00:00
Jan Laupetin bf9beb1458 chore: make sure TechsetCompilerT6 sets proper worldVertFormat 2026-03-02 22:08:55 +00:00
Jan Laupetin e61ec8582a chore: use CommonTechset instead of TechsetDefinition 2026-03-02 22:08:55 +00:00
Jan Laupetin 0941a357d9 chore: update package lock 2026-02-28 15:29:40 +01:00
Jan Laupetin f7e0cb3c45 chore: call common djb2 implementations in game hashing funcs 2026-02-23 08:15:05 +01:00
Jan Laupetin 9502ebfc26 chore: add tests for game hashing funcs 2026-02-22 23:36:26 +00:00
Jan Laupetin 7fd818871c chore: use windows-2025-vs2026 in CI for running with VS2026 2026-02-05 18:54:51 +01:00
Jan Laupetin b8b5d4b921 chore: generate vs2026 solutions on windows 2026-02-05 18:54:51 +01:00
Jan Laupetin aa47ffa629 refactor: introduce subasset loading 2026-02-05 18:17:15 +01:00
Jan Laupetin 3b1e65e8cc refactor: move asset type names to IGame implementations 2026-02-05 17:36:56 +01:00
Jan Laupetin e5784d09ed refactor: retrieve asset names from IGame 2026-02-05 17:36:55 +01:00
Jan Laupetin 1540b69ac1 refactor: asset refs are specified via asset name not enum entry 2026-02-05 17:36:55 +01:00
Jan Laupetin 1446d42cbd docs: remove unused changelog file
* changes are noted in GitHub releases
2026-01-29 20:17:24 +01:00
Jan Laupetin 203b222d48 refactor: introduce ci for compiling with clang 2026-01-27 23:49:37 +01:00
Jan Laupetin 38038f8fad fix: clang compilation issues 2026-01-27 23:49:37 +01:00
Jan Laupetin c602170fb3 fix: ignore msvc warnings only on msvc 2026-01-27 18:29:01 +01:00
Jan Laupetin 675e402b16 chore: update gcc to 14 2026-01-27 17:31:15 +01:00
Jan Laupetin a723d1632b chore: adjust premake5 config for beta8 2026-01-26 21:30:13 +01:00
Jan Laupetin 03d85aa890 chore: update to premake 5.0.0-beta8 2026-01-26 20:02:55 +00:00
Jan Laupetin 5b6b82424b fix: marking invalid offset as written in WritePtrArray methods 2026-01-18 17:12:13 +01:00
Jan Laupetin 7c52fde1f8 fix: crash on writing float44 type due to misaligned memory
* the compiler in release builds optimizes to use movaps
* this opcode requires memory alignment to 16 byte
* the written memory buffer may be misaligned at this position
2026-01-17 00:45:22 +00:00
Jan Laupetin f95745fb87 fix: not writing to script string var for embedded script string arrays 2026-01-17 00:45:22 +00:00
Jan Laupetin 47dcab33e9 chore: add systemtest to test rebuilding of vanilla zones 2026-01-17 00:45:22 +00:00
Jan Laupetin 2840489a38 fix: only fill used union members when loading 2026-01-17 00:45:21 +00:00
Jan Laupetin 00546740e4 fix: filling union members that are not supposed to be written
* This causes some pointers to be partially overwritten when filling in the wrong order as well
2026-01-17 00:45:21 +00:00
Jan Laupetin 9f559fdcd0 fix: ReusableAddOffset not respecting differing block and memory sizes 2026-01-17 00:45:21 +00:00
Jan Laupetin 51300bb47c chore: const params in InvalidLookupPositionException 2026-01-17 00:45:20 +00:00
Jan Laupetin 0be778cf5c fix: do not fill in runtime block members 2026-01-17 00:45:20 +00:00
Jan Laupetin 1dc25ee20a fix: use correct written variable for WriteArray zone code methods 2026-01-17 00:45:20 +00:00
Jan Laupetin 7dffc77ed7 refactor: fill structs in templates when writing on x64 hosts 2026-01-17 00:45:19 +00:00
Jan Laupetin 257ef39b20 feat: add fill in ContentWriter classes for writing with x64 hosts 2026-01-17 00:45:19 +00:00
Jan Laupetin 2a1f6158e4 fix: writing bad zone sizes with x64 hosts 2026-01-17 00:45:19 +00:00
Jan Laupetin 6ea2e7faad refactor: use ZoneOutputOffset for written variables 2026-01-17 00:45:19 +00:00
Jan Laupetin 2b2590b8fb fix: not correctly returning bad result for failed zone loading 2026-01-17 00:45:18 +00:00
Jan Laupetin 9900544f71 refactor: return ZoneOutputOffset when writing via ZoneOutputStream 2026-01-17 00:45:18 +00:00
Jan Laupetin ac24e4f893 refactor: combined ZoneOutputStream interface with impl 2026-01-17 00:45:18 +00:00
Jan Laupetin ac9bdd21da chore: use vector for ZoneInputStream block offsets 2026-01-17 00:45:17 +00:00
Jan Laupetin 86b7e55e5b refactor: add game name to generated load and write files 2026-01-17 00:45:17 +00:00
Jan Laupetin 77af856a87 chore: remove ifdefs for disabling certain system tests
* Previously reading written zones was disabled
* Reenable it to test for success in writing correct zones
2026-01-17 00:45:14 +00:00
Jan Laupetin 442926907f docs: add links to badges in README 2026-01-15 19:05:27 +00:00
Jan Laupetin 6d0afb9079 docs: add badges to README 2026-01-15 18:54:41 +00:00
Jan Laupetin 0a06a01e67 feat: dump t5 techsets and techniques 2026-01-13 20:24:00 +00:00
Jan Laupetin e7f126265d refactor: add AssetMarker headers to zcg marker template 2026-01-05 17:43:56 +00:00
Jan Laupetin 660f34df69 chore: add ability for zcg to generate files once per template 2026-01-05 17:43:56 +00:00
Jan Laupetin 11fdb4ad59 chore: do not specify assets for zcg templates 2026-01-05 17:43:53 +00:00
Jan Laupetin b6598c5af3 chore: move string table tests 2026-01-05 09:50:22 +00:00
Jan Laupetin c4a5856bfa chore: add tests for templated image loader 2026-01-05 09:50:21 +00:00
Jan Laupetin 4cdccba016 feat: add embedded image loader for every supported game 2026-01-05 09:50:21 +00:00
Jan Laupetin 33584f6f7b feat: add external image loader for every supported game 2026-01-05 09:50:20 +00:00
Jan Laupetin da2a76f6da chore: update image namespacing 2026-01-05 09:50:20 +00:00
Jan Laupetin 793d7ad5dc fix: do not try to add indirect asset references without name 2026-01-03 18:23:55 +00:00
Jan Laupetin 6e4c9d4675 fix: use ZoneCode in all projects that may include its headers 2026-01-03 14:38:46 +00:00
Jan Laupetin 6c7dd30c78 fix(parser): macros only parse parameters if define specified them 2026-01-03 08:51:37 +01:00