Commit graph

136 commits

Author SHA1 Message Date
Areloch
cd1fd1ccf4 Merge branch 'SoundAssetInitRollin' of https://github.com/Areloch/Torque3D into Preview4_0 2021-09-04 01:38:22 -05:00
Areloch
25a32cba2a Merge branch 'MiscQOLFixes20210828' of https://github.com/Areloch/Torque3D into Preview4_0 2021-09-01 17:44:43 -05:00
JeffR
56b0a0cb85 Initial hook-in of the sound asset's integration into sfxEmitter, as well as some fixups for editor/workflow usage. 2021-08-31 00:54:05 -05:00
AzaezelX
ee3ef531e2 ironically, overly paranoid checks were tripping warnings 2021-08-29 18:32:44 -05:00
AzaezelX
bdf6bd5c69 account for the possiblity of _set##name(StringTableEntry _in entries somehow getting punted nulls 2021-08-29 17:41:20 -05:00
Areloch
ec85e9021c Misc Quality of Life and Bug fixes
Added handling for if preview images on image assets fails to generate, will fallback to using the full image
Added handling for double clicking or drag-n-dropping terrain assets to create them
Improved handling of field labels in variable inspector by making the stringtable be case sensitive.
Added editor settings for handling of asset double click behavior. Can now select between Edit Asset and Spawn Asset. Support is asset type dependent.
Added editor setting for auto-importing loose files when navigating to a folder. If on and the user has flagged to also enable auto-import generally, will auto import all unaffiliated loose files in as assets.
Added editor setting for default module to use when creating new assets. Updated various tooling logic so when creating a new material, if this and the 'Always Prompt Module Target' setting is off, it will fill in the target module and target asset path info based on the default module.
Fixed issue with editors that use managedData scripts where if the path didn't exist, the script file wouldn't be made.
Fixed display issue in terrain editor where if you clear the detail map, the normal/macro/orm maps would disable, but not also clear.
Fixed handling of cleared maps in terrain editor so it no longer fills empty maps in with the no image image.
Fixed handling of creating new material where it would fill in the diffuse with a no texture image as the default.
Fixed issue where canceling out of creating a module would still prompt to create the common default folders.
Fixed issue where the Select Module window couldn't be closed via the cancel or x buttons.
Based on feedback, reduced default size of the Text Pad window.
Fixed issue where the Drop At menu list wouldn't correctly display which item was marked after it was changed.
Fixed spawning shape asset handling so it uses whatever the editor's Drop At setting is.
Improved themeing of regular bitmap buttons in the editor.
Based on feedback, flipped layout of Target Module and Target Path in the Create New Asset window.
Improved handling of setting up the Target Path for when creating new assets. If a path is not set, and the user has a Default Module, it will default the path to that module.
2021-08-28 18:51:27 -05:00
Brian Roberts
0a150e342f
Merge pull request #545 from Areloch/AssetFileCaseSensitivityFix
Enforces filename string case sensitivity for assets' internal filenames
2021-08-23 19:22:22 -05:00
Areloch
cfe122f714 Enforces filename string case sensitivity for assets' internal filenames, which avoids the stringtable messing with the case preventing file name case sensitivity issues. 2021-08-21 23:12:37 -05:00
Jeff Hutchinson
37dc8626f5 MacOS fixes
This fixes an issue where Con::getVariable can't be used in the global scope before the console system is initialized. I'm honestly surprised this error didn't happen on any other platform.
2021-08-21 20:48:26 -04:00
AzaezelX
69abcb862c assetbase crashes: test (most) cases for mpAssetDefinition existing before returning values. return empty if it doesn't. 2021-08-17 15:32:05 -05: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
AzaezelX
a2ecbe53dd gcc seems to have an issue converting nullptr to Resource<TSShape>, so this will at least get it compiling 2021-08-10 03:13:46 -05:00
AzaezelX
cd6e027d1f nother specifier wrapper 2021-08-09 22:31:58 -05:00
AzaezelX
76386f433c fix eronous extra glue code in macro, fix slash direction in include 2021-08-09 22:08:55 -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
34f0f01cea Adds console function to compare file modified times
Adds console function to save a scaled image
Improved logic of generating previews for shape, material and image assets to regen if original asset loose file was modified
Added logic to generate scaled preview image for material and image assets to improve load times of AB
2021-08-08 16:20:58 -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
c76c5f7ee1 Removed unneeded duplicate of blank sky skybox
Fixed various inspector field editor button icons
Fixed drag-n-drop apply logic for material assets
Fixed up some convex shape editor material references
Fixed tools overlay gui profile opaqueness flag
Fixed uvEditor image asset binding/lookups
Fixed decal editor preview display
Fixed shape editor would you like to save your changes prompt
Added additional sanity check for bad material reference in tsMesh
Fixed saving of terrain asset when working in editor default level
2021-08-06 01:06:36 -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
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
AzaezelX
36b31ae19d zip support followup 2021-07-22 21:27:13 -05:00
AzaezelX
b8eaefc21e refactor new IsScriptFile method to be zip-safe 2021-07-22 20:55:46 -05:00
AzaezelX
8976250fdf remove fallback from INIT_SHAPEASSET / INIT_SHAPEASSET_ARRAY as it seems that was causing more harm than good somehow 2021-07-22 12:35:25 -05:00
AzaezelX
f185bef8a3 leverage isScriptFile
(also initialize  scattersky. mNightCubemapName = StringTable->EmptyString();)
2021-07-22 12:02:23 -05:00
Areloch
3e131f5b8e Added changes missed via merge failures.
Removed some unused files/references that were causing errors, related to issues #502 & #512
2021-07-20 20:05:49 -05:00
Areloch
5525f8ecdd Converts all game, gui editor, and system classes to utilize assets
Processed core, tools and default modules to utilize assets
Converted all console types that were string based, such as TypeImageFilename to utilize const char*/the string table, which avoids a lot of type swapping shenanigans and avoids string corruption
Removed unneeded MainEditor mockup module
Removed some unused/duplicate image assets from the tools
2021-07-19 01:07:08 -05:00
Areloch
4d40e3cab5
Merge pull request #449 from OTHGMars/Zip_Test2
Loading from zipped game directories.
2021-07-17 11:03:19 -05:00
AzaezelX
ab1661a851 add additional chars to the flatfile->asset->objectID name santization chain 2021-04-06 15:17:06 -05:00
Brian Roberts
a8e2ec6df4
Merge pull request #475 from Areloch/importAssetSuffixes
Adds import config settings for forcefully adding configurable suffixes for shapes, materials and images
2021-03-14 01:12:29 -06:00
Areloch
a0c8a77043 Adds import config settings for forcefully adding configurable suffixes for shapes, materials and images 2021-02-27 02:43:37 -06:00
Areloch
9a10d52e0b Added logic to correctly associate constructor script file for shape asset to asset as an assetfile 2021-02-21 02:21:50 -06:00
Areloch
85a9a9b608 Implements shape preview caching for shape assets
Also standardizes the loading gui overlay so it can be used to inform that the asset preview generation is happening
2021-01-27 01:54:26 -06:00
Lukas Aldershaab
099dd4f1f3 Parametrize script extension, default to 'tscript' 2021-01-19 21:32:31 +01:00
Areloch
c5cdba750e Fixes some minor errors on MacOS regarding compiling in clang 2021-01-14 18:00:56 -06:00
OTHGMars
8148bdfcdd ModuleManager and AssetManager updated for T3D mount system.
Platform file calls replaced with Torque::FS calls when scanning for or loading files.
2021-01-11 05:03:00 -05:00
Areloch
8585278fe4 Adds autoimport logic for materials if the materialDefinition already exists
Adds some additional utility functions to AssetImporter for easier access to setup
Corrects handling for legacy field names with meshRoad
2021-01-05 00:58:18 -06:00
Areloch
bf5b26f734 Assetifies MeshRoad, Decal Road, and the material slot of GroundCover
Creates a networked and non-networked variant of DECLARE_MATERIALASSET macro
2021-01-03 08:58:53 -06:00
Brian Roberts
03e6b5b096
Merge pull request #433 from Azaezel/alpha40/shapeAssetErrorFollowups
moar asset errorhandling
2021-01-02 11:09:31 -06:00
AzaezelX
5e8862dafc further info by request 2020-12-31 19:38:53 -06:00
AzaezelX
6495ee16c6 report shape file location that failed to load, set loaded status to badfilereference if getAssetById can't even find noshape 2020-12-31 18:54:31 -06:00
AzaezelX
6b53b6581a mac fixes
1) add sdl token for referencing the parent directory of the aplication bundle when determining the root dir
2) shape and mateiral asset macro corrections for a few stray ## redundencies (space, ->, . ect are all conidered token sperators in and of themselves)
2020-12-30 19:36:51 -06:00
Brian Roberts
1fbf46fa90
Merge pull request #425 from Areloch/MaterialMacroMagic
Initial pass at implementing MaterialAsset macromagic utility functions
2020-12-29 00:40:46 -06:00
Areloch
c1cd217557 Initial pass at implementing MaterialAsset macromagic utility functions and applies it to the renderMeshExample object as well as groundPlane 2020-12-27 23:24:29 -06:00
AzaezelX
516a05301f corrected and implemented a usage of shapeasset macros (and stray membervars touched). todo: shapebaseimage, debris. 2020-12-22 12:34:15 -06:00
Brian Roberts
7dc6fc8abf
Merge pull request #415 from Areloch/GroundPlaneAssetify
Converts GroundPlane to utilize assets
2020-12-19 02:35:32 -06:00
Brian Roberts
78a836e433
Merge pull request #409 from Azaezel/alpha40_assetPipeCleanups
asset pipe cleanups
2020-12-19 02:34:57 -06:00
Areloch
3821ddd15a Merge branch 'GroundPlaneAssetify' of https://github.com/Areloch/Torque3D into Preview4_0 2020-12-18 14:12:54 -06:00
Areloch
8f60d03830 Adjusts Asset Importer logic when looking up and saving out a newly created ShapeConstructor so that it doesn't duplicate a definition it one already exists.
Adds _ORM and -ORM suffixes for PBR-ORM map import rule
Tweaks naming convention for IgnoreNode/Meshes and ImportNode/Meshes to be clearer via the prefix 'Always'
Fixes a token typo in suffix parsing, and adds \t to token deliniation for all suffix parsing to asset importer
2020-12-18 00:55:01 -06:00
AzaezelX
b26c87491f need to ensure we've got an asset at all before setting the loaded state 2020-12-14 13:33:49 -06:00