Commit Graph

427 Commits

Author SHA1 Message Date
Aruki 4084375dce Finishing touches on PWE v1.2.0 2017-07-26 03:42:57 -06:00
Aruki f980bc7536 Added support for tracking extra dependencies in Corruption areas (necessary to avoid crashes) 2017-07-26 01:30:52 -06:00
Aruki 95d0279027 Fixed a couple issues with the resource browser and fixed an error in the 32-bit name map 2017-07-26 01:29:40 -06:00
Aruki 18482cbae6 Added drag/drop support to directory tree view 2017-07-25 18:34:02 -06:00
Aruki ca40c26154 Directory tree view now updates to reflect changes when moving/renaming folders 2017-07-25 04:02:48 -06:00
Aruki 5e79d88bb8 Minor bugfix - Prime 3 is not Wii de Asobu 2017-07-25 00:50:50 -06:00
Aruki 588c4aa0bd Added support for building Wii de Asobu/Trilogy ISOs 2017-07-24 23:51:09 -06:00
Aruki e4d7c37541 Added support for exporting Trilogy and Wii de Asobu builds 2017-07-24 21:08:12 -06:00
Aruki 305fbbdeed Added ability to look up asset IDs with the search bar 2017-07-22 17:39:49 -06:00
Aruki 4f2828e0f8 Added asset lookup by ID, fixed a bug with asset ID display, added "go to parent directory" icon 2017-07-22 16:26:49 -06:00
Aruki 89d668a810 Added ability to display referencers/dependencies of assets 2017-07-20 20:56:29 -06:00
Aruki 905173a0a0 Added ability to create/delete directories 2017-07-20 20:48:12 -06:00
Aruki 16e310fb2f Update resource selectors when their asset is renamed, fixed default world editor split sizes, disabled model editor save button outside of MP1 2017-07-18 03:07:42 -06:00
Aruki db277d7a15 Added ability to rename resources/directories in the resource table view 2017-07-16 03:24:14 -06:00
Aruki 932e2bff7a Changed resource cache to save with the basic binary serializer to improve read/write time 2017-07-15 23:19:26 -06:00
Aruki bfe541a35d Added null progress notifier, optimized CResourceStore::BuildFromDirectory a little 2017-07-15 22:55:26 -06:00
Aruki a813c4c61c Fixed table view updating to properly show changes after moving resources/directories 2017-07-15 22:24:59 -06:00
Aruki dbe8b7922c Added support for dragging/dropping resources; you can use drag/drop to rearrange resources/folders in the resource browser now, and you can drag/drop resources onto resource selector widgets 2017-07-14 18:41:56 -06:00
Aruki fe9a074029 Added context menu to the resource browser; fixed search results not displaying correctly 2017-07-13 01:41:46 -06:00
Aruki 137c10f28f Major resource browser UI overhaul 2017-07-12 20:45:14 -06:00
Aruki 31dec78050 Moved /WX flag in the .pro files into a win32 block 2017-07-12 00:22:04 -06:00
Aruki 097ab23687 Fix to .qmake.conf so MSVC compiler flags are only set on Windows 2017-07-12 00:17:42 -06:00
Aruki 0ffbaefcde Added ability to edit the game name in opening.bnr; slightly reorganized world editor menu options 2017-07-10 16:43:53 -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 2348b8514f Changed resource selector so you click the resource name to find it instead of having a separate find button 2017-07-09 23:55:29 -06:00
Aruki 096ef45bac Added support for building Wii ISOs 2017-07-09 15:44:42 -06:00
Aruki 665a098d50 Integrated latest changes from nod, and updated the structure of the Disc folder for compatibility with the upcoming Dolphin directory blob updates 2017-07-09 13:44:06 -06:00
Aruki 2ddba0cacc Removed unneeded ToLower() call 2017-07-08 13:42:31 -06:00
Aruki cbdebd2f7e Fixed some issues with asset name generation in MP3/DKCR and fixed a memory leak in the character editor 2017-07-08 13:38:03 -06:00
Aruki 21efd3999f Fixed issue causing the viewport axes to sometimes not render correctly 2017-07-07 23:14:41 -06:00
Aruki 5c1d4f70ae Fixed save and save+cook buttons being enabled when no area is open 2017-07-07 20:52:14 -06:00
Aruki 8b84b638ac Fixed all DKCR name generation issues 2017-07-05 01:10:57 -06:00
Aruki 6a01bf5982 Removed raw extensions 2017-07-04 19:55:44 -06:00
Aruki 2c21276f5a Use uppercase extensions for editor resources 2017-07-04 19:32:12 -06:00
Aruki 3fa1279d29 Lots of changes to how resource database/entry data is serialized; resource database file is now binary and merged with the cache data file. Binary reader/writer now use 32-bit sizes. 2017-07-04 19:02:56 -06:00
Aruki 4652e125e5 Resource database can now keep track of empty directories 2017-07-04 13:34:14 -06:00
Aruki 9a52fe52d4 Added ability to rebuild the resource database from the project resources folder. Editor can detect if the resource database is corrupt on load and if so prompts the user to repair it. 2017-07-04 04:59:22 -06:00
Aruki 1f3df14b02 Configured asset name map and resource entries to be able to track whether or not a resource/directory name is auto-generated, and made adjustments to the name generation system to not override custom-set names 2017-07-02 15:56:30 -06:00
Aruki 4b73d0abcc Added resource metadata files 2017-07-02 02:17:04 -06:00
Aruki 5a398423e1 Applied some fixes to the binary reader/writer classes 2017-07-02 02:12:01 -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 2081835ae6 Spiffed up progress dialog visuals a little 2017-06-26 20:41:17 -06:00
Aruki 46b65a5bcd Added support for the remaining DKCR formats; DKCR repacking works now 2017-06-26 20:34:58 -06:00
Aruki 87906aafb9 Fixed bugs with copy/pasting instances 2017-05-23 19:58:36 -06:00
Aruki 09bcf4114c Updated disc extraction/building progress bar code to use the new progress reporting functionality in nod 2017-05-22 00:26:24 -06:00
Aruki 8e819fd454 Fixed new link line not showing up in the world editor 2017-05-21 19:20:27 -06:00
Aruki f5654dcfa7 Removed includes for deleted header files 2017-05-21 18:07:19 -06:00
Aruki 0a9b052413 Added progress bars for most major blocking operations 2017-05-21 18:01:09 -06:00
Aruki 31621874a6 Added preliminary support for building new ISOs 2017-05-20 23:29:09 -06:00
Aruki 4ffd1f0a2d Remove the stupid "-component" garbage from MP1 instance names 2017-05-18 13:57:31 -06:00
Aruki f9f6d1f963 Fixed bug where asset properties on new instances are created with the wrong length 2017-05-14 21:30:50 -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 77cda50153 Modified world info sidebar so it handles DKCR much more smoothly 2017-05-14 01:49:15 -06:00
Aruki b45eaae106 Fixed major issues when exporting DKCR 2017-05-14 01:48:47 -06:00
Aruki 7f18a33fae Added support for Prime 3 package cooking 2017-05-09 21:08:52 -06:00
Aruki 560706d285 Fixed issues in MP3 package list building 2017-05-09 14:16:41 -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 283444cea4 Fixed broken UV anim modes 2017-05-07 19:25:46 -06:00
Aruki e112c93498 Switch to using forward slashes in file paths 2017-05-05 14:06:42 -06:00
Aruki fc29370427 Switch CStringTable over to using UTF-8 internally 2017-05-04 15:58:06 -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 336744ed49 Split asset name map into separate 32-bit and 64-bit files (necessary to avoid name conflict errors) 2017-05-04 01:14:51 -06:00
Aruki 9d6798b7ae Fixed up MP3 asset name generation, implemented a bunch of extra checks and safeguards to ensure asset names/directories are valid 2017-05-03 03:07:34 -06:00
Aruki 3fc35b7c09 Fixed log spam while exporting MP3 + fixed world asset name being generated incorrectly 2017-04-30 23:45:56 -06:00
Aruki 88c11555c0 Added support for CHAR, SAND, and SCAN dependencies in MP3 2017-04-30 22:28:37 -06:00
Aruki 11ccd23baf Removed zlib and LZO from the Common/Math pro files 2017-03-31 23:49:40 -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 e138cd7035 Removed dependencies on GLM 2017-03-31 23:33:11 -06:00
Aruki cd8f4147c2 Added a couple new utility/convenience functions in FileIO and Math 2017-03-30 01:25:50 -06:00
Aruki 98cd617b3e Added support for loading Corruption particle dependencies 2017-03-01 00:52:25 -07:00
Aruki ac2430e61c Minor fixes/adjustments 2017-02-21 00:09:03 -07:00
Aruki d350e983d9 Updated POI map sidebar icon, fixed minor spacing issue in the world info sidebar 2017-02-20 23:40:19 -07:00
Aruki e89d44f7a7 Moved POI mapping dialog to be a sidebar instead, fixed standable collision visualization in MP2/3 2017-02-20 16:02:05 -07:00
Aruki a88afe31e3 Added support for CAUD dependencies, dropped redundant asset ID in dependency trees, various MP3 fixes 2017-02-20 03:42:04 -07:00
Aruki 5485d42b56 Bunch of fixes to get MP3 exports working on a basic level; lots of fixes still needed 2017-02-18 19:41:39 -07:00
Aruki 68840e69f9 Changed over to new FOURCC macro 2017-02-17 22:38:25 -07:00
Aruki 423613c1c1 Added 16x16 World icon, remove recent projects that no longer exist 2017-02-17 18:04:06 -07:00
Aruki bdb753dca2 Added project settings dialog; added build name lookup functionality 2017-02-15 01:00:48 -07:00
Aruki 3697401ebb Dropped support for resource collections in package definitions 2017-02-14 19:20:22 -07:00
Aruki c5de322ac7 Fixed various bugs and crashes and moved more functionality into the world editor 2017-02-13 13:44:02 -07:00
Aruki 00a48e69f8 Added world/area info sections to the world info sidebar 2017-02-12 23:46:22 -07:00
Aruki 009c42f281 Moved edit mode buttons onto a toolbar, fixed a couple bugs 2017-02-12 14:19:51 -07:00
Aruki 4d87ef0312 Added functionality to change edit mode, made resource browser accessible from the world editor 2017-02-12 10:41:13 -07:00
Aruki ce0c544168 Added new WIP UI to the world editor for loading worlds/areas 2017-02-12 00:34:04 -07:00
Aruki 9928a599be Initial work towards making the World Editor the main application window 2017-02-11 18:35:33 -07:00
Aruki 568cd67994 Node rotation/scale now transforms correctly around the pivot point 2017-02-10 23:55:07 -07:00
Aruki 882973d9d5 Improved error handling and reporting when loading/saving project files; added file lock class to prevent the same project from being opened in multiple PWE instances 2017-02-10 14:52:47 -07:00
Aruki 6d77604667 Added shader sharing mechanism; added "cook all dirty packages" button; other various tweaks and fixes 2017-02-09 10:54:38 -07:00
Aruki 9b6376af68 Fixed asset name map conflict checks to be case-insensitive, new icons for export dialog disc filesystem tree, regenerated asset names 2017-02-08 12:40:09 -07:00
Aruki a7b0a2480c Reimplemented save & repack button to work in the project system 2017-02-08 11:20:33 -07: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 b3a0e52b6f Fixed crash after generating asset names, added MP2 auto-generated names to the map 2017-02-06 15:10:54 -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
Aruki fbdf9023d1 Upgraded to VS2015 64-bit compiler 2017-02-04 09:36:37 -07:00
Aruki 7f9bed653b Added type filtering to the resource browser 2017-02-02 21:20:54 -07:00
Aruki c53352c290 Implemented "find" button on resource selector widget 2017-02-01 21:01:14 -07:00
Aruki 548fcb2f8e Modified resource browser to use a filesystem browser view 2017-02-01 20:23:51 -07:00
Aruki c51d79cc42 Added "edit" button to resource selector context menu 2017-02-01 10:54:53 -07:00
Aruki 4e8ecdb79c Created new resource selector widget class 2017-02-01 08:43:42 -07:00
Aruki 8a66e393e7 Added CResTypeInfo class 2017-01-31 21:56:53 -07:00
Aruki 4f03c2431e Added editor game info system, exporter now fetches game build version, merged asset name maps for all games, resource browser can now import/export names to/from a map XML, reworked asset name generation to more closely match Retro's organization scheme, bug fixes 2017-01-31 11:23:28 -07:00
Aruki 5ac292ebc5 Made search bar in resource browser feel more responsive 2017-01-29 08:01:33 -07:00
parax0 678ca01fb1 Merge branch 'master' into ContentExporting 2017-01-29 07:33:14 -07:00
parax0 57c2830b04 Fixes for standable collision tris visualization in Metroid Prime 3 2017-01-29 05:01:41 -07:00
parax0 9654cf1428 Merge branches 'CollisionRendering' and 'release' 2017-01-16 01:31:25 -07:00
parax0 7cc8e2a0c9 Updated version number for public release 2017-01-16 01:02:03 -07:00
parax0 c62a01e4d9 Added a couple more collision view features; set up a proper UI for changing collision render settings 2017-01-14 10:32:41 -07:00
parax0 a2762e034e Lots of collision surface color tweaking 2017-01-11 08:30:40 -07:00
parax0 08dee84367 Set up game-neutral collision materials; Jump Not Allowed flag now flags that surface as unstandable; other minor fixes 2017-01-11 06:29:30 -07:00
parax0 be40dfdf02 Added a basic UI to change collision render settings, added the ability to color collision based on the surface type 2016-12-26 23:02:32 -07:00
parax0 78baa42bce Added fog to the collision shader, made changes to enable rendering different collision materials separately (also, murry crimmas) 2016-12-25 14:47:59 -07:00
parax0 c0fb54888d Rewrote collision shader to use generated normals with fake lighting instead of generated UV coords 2016-12-24 03:05:51 -07:00
parax0 712e545c7b Fixed editor viewport rendering black when opening multiple editor windows at the same time 2016-12-24 02:11:25 -07:00
parax0 d96a3c2af7 Added functionality to import filenames from .pak.contents.txt files 2016-12-24 00:47:45 -07:00
parax0 ed446ccbec Removed audio groups array from CWorld 2016-12-12 01:45:19 -07:00
parax0 2e44e5b119 Added functionality to generate asset names 2016-12-12 01:33:46 -07:00
parax0 efa85036c2 Added basic support for tracking DUMB dependencies 2016-12-03 14:32:41 -07:00
parax0 f6fd78af14 Lots of work to get MP2 repacking functional 2016-11-07 03:07:00 -07:00
parax0 040caca896 Added support for loading meta-animations and meta-transitions (yay! animation exclusion doesn't crash anymore!) 2016-10-27 07:18:59 -06:00
parax0 595e4b931e Moved animation-related classes to their own subfolder 2016-10-26 18:12:08 -06:00
parax0 3942c09e89 Added support for omitting unused animations from paks (needs work to not crash) 2016-10-26 06:15:08 -06: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 f6ae1376ac Added functionality to determine what AGSC a sound ID belongs to 2016-08-31 19:42:12 -06:00
parax0 1f357b4250 Fixed crash occurring when closing the world editor 2016-08-31 02:53:48 -06:00
parax0 a7b381f301 Made a bunch of changes to make the resource store system more friendly to multiple stores instead of just a single active one, and set up a resource database for editor assets 2016-08-31 02:09:13 -06:00
parax0 1de2691f33 Enabled MSAA 2016-08-30 19:05:28 -06:00
parax0 4fd3e9c437 Skip viewport render if editor window is minimized (probably more fixes that can be applied similar to this) 2016-08-30 01:09:54 -06:00
parax0 3f3735ac7a Created application class to manage editor windows, improved camera AABox orbit 2016-08-30 00:47:02 -06:00
parax0 d263610d43 Added ability to double click a resource in the resource browser to open it for editing 2016-08-28 04:07:17 -06:00
parax0 20bddd5ed7 Modified all editor file formats to use the serialization system; changed dependency caching so all resource cache data is in one file 2016-08-26 19:33:33 -06:00
parax0 3dc0d71403 Implemented binary serializer classes 2016-08-23 20:42:05 -06:00
parax0 9a243f94ac Heavily modified the dependency tree system and applied other various fixes and updates to work towards supporting Echoes package cooking 2016-08-19 02:13:02 -06:00
parax0 881bb28d84 Added support for loading all dependencies of MP2 ANCS, FRME, and SCAN 2016-08-16 03:00:31 -06:00
parax0 bc35e15a6a Added support for parsing MP2 particles 2016-08-15 00:40:13 -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 0f2c0d5b39 Implemented serialization support and initial support for raw resource formats 2016-08-09 21:58:27 -06:00
parax0 b582e7208e Finished dependency gathering support for MREA and MLVL 2016-08-09 21:36:41 -06:00
parax0 3bca8410b0 Added support for gathering dependencies of ANCS and FRME; changed CDependencyGroup to use a vector instead of a set 2016-08-03 13:01:48 -06:00
parax0 11a7b86120 Added support for loading dependencies of EVNT and STRG 2016-07-27 03:24:15 -06:00
parax0 7f2cac6216 Added support for loading dependencies of CSNG, HINT, MAPW, and MAPU 2016-07-27 01:47:47 -06:00
parax0 1a0aed95ec Added unsupported format loader with support for particle formats and RULE; overhauled CFourCC implementation 2016-07-26 16:12:07 -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