75 Commits

Author SHA1 Message Date
Lioncash
3d1ced47e2 CVertex: Make use of std::array where applicable
Allows dehardcoding sizes and simplifies comparison code.
2020-06-16 17:17:20 -04:00
Lioncash
09f5163184 CStringTable: Make use of size_t
Plays nicer with standard containers. While we're at it, we can use
std::move where applicable.
2020-06-16 15:17:23 -04:00
Lioncash
e18e73cca5 CBasicModel: Make use of size_t where applicable
Same behavior, but without some internal variable truncation.
2020-06-15 19:48:25 -04:00
Lioncash
79f7b62960 CMaterialSet/CModel: Make use of size_t where applicable
Prevents type truncation warnings internally and also provides slightly
better code-gen, given the upper half of 64-bit registers don't need to
be constantly cleared.
2020-06-15 14:49:38 -04:00
Lioncash
12ccb2fbd4 CGameArea: Simplify allocation handling
Eliminates manual new/delete and also makes the lifecycle of allocations
enforced within the interface.
2020-06-12 12:38:54 -04:00
Lioncash
012da6fb6d General: Remove unnecessary inline specifiers and add overrides 2020-06-11 15:49:42 -04:00
Lioncash
03f1aba7e8 CAreaCooker: Collapse for loops into ranged for where applicable
Same behavior, less code.
2020-06-09 07:56:56 -04:00
Lioncash
f727c07d13 CAreaCooker: Make use of in-class initializers where applicable
Simplifies the construction code.
2020-06-09 07:42:51 -04:00
Jack Andersen
6e2bf5be83 Fix MP3 extraction crash 2019-11-16 20:48:07 -10:00
1c80a13c23 Silence Warnings 2019-05-26 18:18:31 -07:00
Aruki
0827c05802 Various crash fixes 2019-02-18 03:54:58 -07:00
Aruki
1e997dac46 Implemented SCAN cooker 2019-01-30 13:48:05 -07:00
Aruki
e9e1ccb8d6 String cooking support 2019-01-12 23:43:41 -08:00
Aruki
eb9236bbea Tweak cooking for MP1 2018-12-30 16:41:43 -07:00
Aruki
c4829f5fda Cleanup & refactoring 2018-12-16 14:00:40 -07:00
Aruki
2287b05bc3 Refactor so PWE compiles with the newly externalized LibCommon 2018-12-11 22:50:46 -07:00
Aruki
84d689e104 Changed EGame to an enum class. Created NGameList and NPropertyMap to change how templates are managed/saved/loaded. Added support for property map keeping track of ID/type pairs. 2018-10-07 17:53:19 -06:00
Aruki
31dac74a64 Property cleanup 2018-09-22 13:36:50 -06:00
Aruki
641cf81dd8 Fixed array property display on UI (they still can't be resized) 2018-07-09 03:54:19 -06:00
Aruki
ce3dfdc397 Massive overhaul of property system done over the last few months. There is unfinished/broken stuff still, but it compiles now. 2018-06-22 15:24:04 -06:00
Aruki
581d5f7267 Changed resource selector widgets so they can pop up a panel with a list of acceptable resources 2017-07-10 15:19:11 -06:00
Aruki
c6e6ccaa89 Unify directory structure for cooked/raw assets 2017-07-01 19:03:56 -06:00
Aruki
4dc11023df Rewrote a chunk of the script cooker. SCGN script layer is now generated and written at cook time. 2017-06-27 06:13:42 -06:00
Aruki
43a3558383 Fixed bug that could produce multiple script instances with equivalent instance IDs 2017-05-14 21:30:32 -06:00
Aruki
7f18a33fae Added support for Prime 3 package cooking 2017-05-09 21:08:52 -06:00
Aruki
f72f82d519 Dropped support for transient resources; I am not using this functionality at all whatsoever and likely won't for a while, so why do I have it? 2017-05-07 20:29:33 -06:00
Aruki
e950634db2 Switch over to using TString to represent filesystem paths instead of TWideString. Fixed FileUtil not handling UTF-8 paths with Unicode characters correctly. 2017-05-04 15:43:25 -06:00
Aruki
bdf0d188c3 Integrated FileIO as part of Common instead of a separate subproject 2017-05-04 12:18:52 -06:00
Aruki
15f0b9338c Moved CompressionUtil to Core (to keep zlib/LZO dependencies out of Common and Math) 2017-03-31 23:42:41 -06:00
Aruki
1b97cd459a Reworked area saving to work with the project system; lots of bug fixes 2017-02-08 00:05:59 -07:00
Aruki
eca833cf89 Changed game exporter to export from a full disc image using nod instead of a pre-extracted disc filesystem; also fixed issue with tabbing in/out with a file dialog open, and fixed a memory leak in CAnimSet 2017-02-06 09:20:18 -07:00
parax0
ed446ccbec Removed audio groups array from CWorld 2016-12-12 01:45:19 -07:00
parax0
f6fd78af14 Lots of work to get MP2 repacking functional 2016-11-07 03:07:00 -07:00
parax0
a18655da00 Added support for tracking event character indices in the dependency tree 2016-10-21 18:16:57 -06:00
parax0
10c87779b3 Added support for tracking AGSC dependencies 2016-09-16 02:47:46 -06:00
parax0
2e1add84be Added support for sound properties, labelled most MP1 sound properties 2016-09-01 18:02:26 -06:00
parax0
0929b20ba1 Renamed file properties to asset properties and modified asset properties to store a CAssetID instead of a CResourceInfo 2016-09-01 00:24:46 -06:00
parax0
8f2b39469a Added versioning support to the serializer; began restructuring CWorld and getting world cooking/serialization working for other games; gave CAssetID an alternate input stream constructor that takes an EGame instead of an EIDLength 2016-08-14 04:56:51 -06:00
parax0
a914736172 Added rel/rso module dependencies to the script template format 2016-08-13 23:57:41 -06:00
parax0
74574c318e Moved EGame to Common 2016-08-13 01:43:55 -06:00
parax0
de18044ae0 Fixed some missed dependencies in a few formats and implemented support for building file lists for paks and MLVLs, and implemented support for package cooking for MP1 2016-08-12 04:27:19 -06:00
parax0
5f1b5da430 Renamed CUniqueID to CAssetID and heavily modified the implementation to drop 128-bit support and use a u64 internally instead of a u8[16] 2016-07-25 03:25:22 -06:00
parax0
2d6dfad2d3 Completely overhauled resource loading in preparation for projects 2016-06-29 17:18:31 -06:00
parax0
3009f06d11 Implemented filesystem handling functions in Common 2016-05-18 20:59:01 -06:00
parax0
ce688fcb8e Applied various fixes to the attachment system, made skeleton rendering more flexible, added the ability for attachments to specify an attach type 2016-05-01 17:32:55 -06:00
parax0
cf84f9909a Added support for attaching assets from properties to locator bones in the World Editor 2016-04-30 06:17:02 -06:00
parax0
98059cedaa Added support for model skinning 2016-04-27 04:27:57 -06:00
parax0
82ad4fb5c8 Mass code cleanup 2016-03-27 13:09:38 -06:00
parax0
0faa4c3630 Replaced uses of std::cout with Log::Write and Log::Error 2016-03-21 15:29:56 -06:00
parax0
3d6993a1ec Fixed an issue in the area cooker where unneeded padding is written to the file if the padding is exactly 32 bytes 2016-03-19 03:00:13 -06:00