Commit graph

55 commits

Author SHA1 Message Date
AtomicWalrus 50acaec19c Fix handling of filenames starting with ./
Restores a line for removing double slashes that got caught in a comment block
2023-02-26 16:00:09 -07:00
Brian Roberts 05a6a249ea
Merge pull request #748 from Areloch/MiscImportAndToolFixes
Misc Tool and Asset Import fixes and improvements
2022-03-20 18:49:36 -05:00
JeffR 26044677c1 Made renaming of terrain materials on importing terrainblocks to use the full assetId, as it should 2022-03-20 16:42:21 -05:00
JeffR cf8659735b Adjusts handling so if a file being processed for importing is not actually imported as a new, successful asset it does not return an id, allowing tooling to only worry about actual new assets.
Adds utility functions to TerrainBlock to be able to replace names of materials in the terrain file, mostly used for importing legacy files
Adjusts terrainblock save asset logic to be able to save on a non-networked terrainblock such as when loaded temporarily on the server, for tooling purposes.
Changes handling of not-found terrain materials when loading a terrain block so it will create a dummy terrain material with the same name as the not-found, but set the texture as the Warning image, instead of thrashing the original material names data
Adds logic for testing newly imported terrain files' materials and if needbe, replacing them with the new terrain material asset ids.
Adds logic in the project importer for if a would-be level asset's name already exists, we attempt to slap a "Level" suffix onto it to sidestep collisions.
Changed LegacyImport config to try always adding shape suffix to help minimize probable naming collisions.
Fixed handling of mission file's MissionGroup defines by specially checking for MissionGroup objects and processing the line into a Scene() declaration instead.
2022-03-20 16:17:06 -05:00
JeffR b3342ff7e6 Adds handling for import of files marked as ShapeAnimationAsset
Adds filetype handling of dsqs for importing
Improves logic checks to prevent incorrectly redundantly processing incoming assets for collisions, which could mark all assets as colliding instead of all but the first.
Adds better handling for assets marked as for dependency usage when importing
Improves rules for writing originalFilePath only if it's actually from an external directory, and the file actually exists to prevent polluting in redundant or garbage data
Fixes issue where MaterialEditor was not tracking the currently material assetId if the material was changed via the dropdown selector
Adds a sanity check to shapeAnimationAsset load so if the resource does not load properly it doesn't hard crash but instead logs the error and returns safely.
2022-03-20 03:17:31 -05:00
JeffR b8b94fdec9 Standardizes project import copy behavior to validate if we're in-place importing to avoid erroring out needlessly with a new utility function
Fixed wrong variable preventing ImportConfig Editor from refreshing when selecting different configs
Standardized DefaultImportConfig's settings against Legacy Import setting, specifically collision resolution behavior and appending _mat suffix to materials
2022-02-25 00:03:33 -06:00
JeffR 7659b51ac9 Added trimming of parsed object names to ensure whitespace before and after isn't accidentally processed as invalid characters
Also made the classname validity check happen on the other creation keyword types
Added logic so when processing an importing material definition that already has an asset, can handle it if the scriptPath doesn't have the extension in it already.
2022-02-24 01:33:14 -06:00
JeffR 8d8432115b Adjusts formatting when parsing for object and function definitions in the project importer to be more accurate
Adds handling for progrommatic new object delcarations where the class type is defined via () encapsulated code so the project import doesn't mangle it.
2022-02-24 00:48:00 -06:00
JeffR 01de818503 Ran importer on UI module to ensure guis and images are converted to latest standards
Updated all UI module controls to utilize a more standard structure with stack controls instead of the GameMenu ctrls, as well as more standardization of gamepad input handling
2022-02-22 20:12:39 -06:00
JeffR 696c2e2eec Add sanity check for default value results checking when filtering out default values
Add additional utility functions for updating parsed object data in the project importer
Adds logic to find and associate FX materials to their terrainMaterials and adding them to the terrian material asset if found on project importer
2022-02-02 01:11:33 -06:00
JeffR 5e1eb80bc1 Fixed handling issue where it would misparse lines that would contain new/singleton/datablock keywords
fixed incorrect getSubStr function invoke
2022-01-30 19:14:36 -06:00
JeffR 630285def6 Shifts handling of material and terrain material definitions to be written into the asset definition taml file instead of having an extra loose file
Also updates importers to correctly handle this change
Adds ability for taml XML serialization to properly assign array'd fields
Adds 'inheritFrom' field to simobjects for when objects with parent objects are serialized
AssetBase how inherits from SimGroup so it can have objects like material definitions embedded in them for save/load in the taml definition file
Updated loading/handling logic in terrain material asset to be more similar to regular material assets
2022-01-30 11:50:16 -06:00
JeffR 728aa83481 Comments and cleanup 2022-01-20 17:48:01 -06:00
JeffR ecd35df7e9 Implementation of updated handling of Legacy Project importer to better seperate out importer versions as well as more explicit processing of incoming content 2022-01-20 01:14:43 -06:00
AzaezelX de379f8b25 fix metal sound entry for playerdata 2021-11-30 18:19:58 -06:00
JeffR fda722e355 Updates asset importer and project importer to output to separate log files into tools/logs
Add utility console function for getting current datetime
2021-11-03 00:13:00 -05:00
AzaezelX bf646b604f typofix for impoerter 2021-10-26 17:47:19 -05:00
AzaezelX 670b246a2a sound asset conversions - playlist (as a point of significance, that no longer uses mSlots.mTrack[ i ] on the backend. just th equivalent of mTrack[i]. While the former was certainly useful for clustering, it's actively fighting standarization) 2021-10-14 22:33:13 -05:00
AzaezelX 9ab5f61c39 sound asset conversions - ambience 2021-10-14 22:31:00 -05:00
AzaezelX 9af2de3c4b upconverter tweaks 2021-10-14 19:07:48 -05:00
AzaezelX adbd6d0711 sound asset conversions importer script updates - afxmagicmissile for a datablock case and guimltextcrtl for an object-instance case 2021-10-14 15:12:50 -05:00
AzaezelX c99c9cc365 include metal FootMetalSound oversight, include correction for mangled entries where a given varname and a given assetname match 2021-10-02 20:58:44 -05:00
AzaezelX d3693bef8d shifted playerdata down to the Long Lists block. fix player enum ref source side 2021-09-30 14:40:03 -05:00
AzaezelX 65774ff123 converter work pt1 2021-09-30 14:15:42 -05:00
AzaezelX 0595a88345 Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into SoundAssetImplements 2021-09-27 20:13:36 -05:00
Areloch 737fd70c69 Adjusted handling of field converts in the project importer to deal with fields that didn't contain quotation marks 2021-09-27 18:46:20 -05:00
AzaezelX 7b137c2ee8 genProcessor("LightningData"... attempt. will need to re-review. 2021-09-26 17:30:57 -05:00
Areloch 2a8f8c15f3 Shifted long-form check/fetch of sound asset's SFXProfile to a convenience function
Fixed formatting on projectImporter.tscript file
2021-09-18 02:46:15 -05:00
Areloch 17d1253ba2 Converts precipitationData to use sound asset macros
Adds handling for soundProfile fields and lookups of sound assets by SFXProfile name in project importer
2021-09-15 00:41:23 -05:00
Areloch 4cf40defe6 Adds handling to project importer so if incoming gui files have the %guiContent declaration at the start, it's converted to a global to comply with the script interpreter 2021-09-11 02:28:14 -05:00
Brian Roberts 7e887e79cc
Merge pull request #568 from Azaezel/alpha40/upconvertPhysicsShapeData
fix PhysicsShapeData upconvert entry
2021-09-11 01:15:08 -05:00
AzaezelX 3384d7f426 fix PhysicsShapeData upconvert entry 2021-09-10 22:37:05 -05:00
Areloch 6487e2eede
Merge pull request #495 from JeffProgrammer/tsneo
TorqueScript Interpreter 2.0
2021-09-09 19:22:15 -05:00
Areloch 6439cb84d4 Adds handling in project import to process SFXDescriptions and Profiles into assets and remove the redundant OG declarations 2021-09-05 23:47:11 -05:00
Areloch 0ca66b99db Added fix so if a looping sound is preview-playing in the AB and you edit the properties, it doesn't try to reload the asset while it's playing, causing a crash
Added console method for looking up a soundAsset by filename
Added initial pass of project importer for sound assets content
2021-09-05 03:43:41 -05:00
Jeff Hutchinson 485330ec7a Merge remote-tracking branch 'devhead/Preview4_0' into tsneo 2021-08-30 19:39:06 -04:00
Brian Roberts 61cb93643c
Merge pull request #552 from Azaezel/alpha40/classconvertsafety
ensure new (foo) lines being converted are valid according to findObj…
2021-08-30 01:38:35 -05:00
Jeff Hutchinson 6e072dbf91 Merge branch 'Preview4_0_DevHead' into tsneo 2021-08-29 22:28:42 -04:00
AzaezelX 28dd431118 ensure new (foo) lines being converted are valid according to findObjectClass 2021-08-29 01:08:19 -05:00
Areloch 64b98b0c10 Converts most of AFX classes to utilize assets
Adds modified classes to project importer convert logic
2021-08-22 02:15:14 -05:00
Jeff Hutchinson 838395840d script fixes from latest merge and more tests 2021-08-17 20:04:45 -04:00
Areloch 48e994f7bd Shift file handling in importer to a standardized function
Added santizing of strings to filenames, object names and asset names for the importer process
Added sanitizeString console function for above
Added processing of terrainBlock object's fields for importer
Added check to avoid updateTSShapeLoadProgress spam
Adjusted folderPrefix logic to walk up directory to find assetName that isn't already in use.
2021-08-15 03:07:40 -05:00
Areloch 0dddeeb6dd Corrects preload logic for projectiles to only fail if shape is specified, but failed to load
Corrects logic in Project Importer for if cubemapData is defined in material scripts, it can process them correctly.
2021-08-09 18:55:05 -05:00
AzaezelX 58b539653e skip using the extension for the asset.scriptFile entry 2021-08-09 13:48:44 -05:00
Areloch 426f5974da Corrected ShapeAsset array initpersist macro to assign arraySize
Uncommented line in preview build function for material assets so they generate the reduced preview image
Added cubeFace to cubemapData import processing vars checked
Updated ShapeBaseImageData convert vars to properly use asset var names
2021-08-08 23:44:17 -05:00
Areloch 555c563b39 More updating of editor icons to assets
Fixed handling of convex shape editor's active and default materials
Fixed assignment of material for convex shapes via editor
Fixed material editor map assignment logic
Added utility function to detect possible duplicate files in project to ProjectImporter
Added conversion of legacy sky and water classes to importer
Fixed bufferLen issue with guiTreeViewCtrl
2021-08-07 19:27:01 -05:00
Areloch 2f5f585aaf Fixed logic for parsing registerDatablock paths to trim script extensions during import conversion
Fixed creation of materialAsset from AB to properly generate companion script file
Fixed logic in project import that if we import in a legacy module script, we get rid of the newly generated one in favor of the old one
2021-08-07 02:36:38 -05:00
Areloch 88ae8a9665 Added getShapeConstructorFilePath console function on shapeAsset
Fixed typo in import config settings for DuplicateAutoResolution
Converted TSShapeConstructor to utilize assets
Updated shape editor to work with assetified constructors
Converted guiBitmapButtonCtrl to use assets
2021-08-02 04:20:27 -05:00
Areloch 52c83d19e1 Added shapeFile field to TSForestItemData convert setting
Fixed modulePath not setting in some cases for project importer
Fixed not assigning drop and splash textures in precipitation
Fixed stringtable insert for sfxProfile
2021-07-28 12:01:17 -05:00
Areloch abf5a09bc3 Removed duplicate checkbox image
Added asset import conflict resolution option to prepend folder name
Cleanups of Project Importer and fixed importing of material and terrain materials, specifically, fallbacks in the event they are unnamed to utilize the mapTo and internalName fields, respectively
Fixed typos in guiTerrainMaterialDlg
Added AssetBrowser button to GuiEditor
Improved FileObject's PeekLine function to be able to peek forward further via an optional lineOffset argument
2021-07-28 09:26:13 -05:00