Commit graph

253 commits

Author SHA1 Message Date
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
AzaezelX
f95a78d2e8 misc asset pipeline cleanups
AssetImporter::validateAsset make sure the modelDef looked for is valid
AssetImporter::importShapeAsset had a stray +"_"+embeded in it when it came to stitching togeather filenames and extentions
2020-12-14 13:32:45 -06:00
Brian Roberts
5534384c54
Merge pull request #390 from Azaezel/alpha40_assetErrorcodes
variation on #387 that also introduces errorcodes
2020-12-08 23:50:07 -06:00
AzaezelX
8bb43dd5ae error string interpreter, example of usage in shapebase::preload, plus flips the datablock filter back on to save some network bandwidth. 2020-12-03 15:37:51 -06:00
Areloch
e8564680e4 Better handling for finding modules by file path. Mainly used in asset importer 2020-12-02 23:57:17 -06:00
AzaezelX
220771d2fe variation on #387 that also introduces errorcodes 2020-12-01 19:16:36 -06:00
AzaezelX
5de19404d9 mac compile fixes
1) `/` not `\` for includes
2) had to clean up a few extra ## bits that work fine winside, but trip up macs (only needed when stitching, had 5 spots where that was pointless)
2020-11-06 02:11:13 -06:00
Areloch
388a700a53 Implements material asset handling for GroundPlane object
Adds handling for finding material asset akin to shape and image assets
Updates the material asset inspector field to follow the current standard
Updates prototyping material assets to correctly have materialDefinitionName assigned
Fixed material asset import step to properly assign materialDefinitionName
Fixed typo in material editor icon name
Added logic to editAsset function call so it can also parse assetIds
Changed DefaultEditorLevel to utilize FloorGray material
Adds proper NoMaterial asset for fallback purposes
2020-11-01 23:32:34 -06:00
Brian Roberts
072b5ecb19
Merge pull request #357 from Areloch/ImageAssetHookins
Updates macromagic to properly set up for init'ing when image assets are set in material and terrain materials
2020-10-17 16:21:24 -05:00
Brian Roberts
3851612b91
Merge pull request #361 from Areloch/LevelAssetLoadConsistency
Updates some level asset functions and script handling
2020-10-17 16:21:01 -05:00
Areloch
f4f60e1ae7 Improves default suffix handling for asset importer on image assets under a material asset 2020-10-16 17:03:30 -05:00
Areloch
837983c767 Adds script function to access full path of the level asset's preview image file
Updates script function descriptions to be correct
Updates chooseLevelDlg functions to be more efficient and consistent, and use the exposed get methods for getting preview images and the like properly
2020-10-13 18:44:42 -05:00
AzaezelX
4250e1d1b4 simplification of the Class::_set<slotname>Asset methods, (as well as early outting before dAtoi(index) hurt itself if index was invalid)
also since I was in there, fixed isrgb accidently being flipped on by default
2020-10-12 04:43:47 -05:00
Areloch
f0068c2435 Updates macromagic to properly set up for init'ing when image assets are set in material and terrain materials 2020-10-10 22:48:13 -05:00
AzaezelX
d1cc5964c4 fix GCC compile 2020-10-08 18:17:35 -05:00
Brian Roberts
d50f1f0b81
Merge pull request #342 from lukaspj/fix/replace-dstrcmp
Replace uses of dStrCmp with new String::compare
2020-10-03 17:01:12 -05:00
Lukas Aldershaab
197a62f6ea Convert dStrcmp to String::compare for more cases 2020-10-04 00:00:01 +02:00
AzaezelX
0c7811bd1a shift pbrconfig to ORM 2020-09-30 13:51:12 -05:00
AzaezelX
22b0785c73 augment imageasset with initMapSlot and bindMap class insert macros (and array variants) to make the conversion process for folks shifting from 3.x to 4.x cleaner, as well as autocreation of getter/setter methods andadditoinal acessor macros for consistency 2020-09-30 13:50:23 -05:00
Areloch
8956559bfd Various misc. tweaks and fixes based on static code analysis to minimize/fix memleaks, crashes, or other performance impacting code. 2020-09-19 18:25:10 -05:00
Areloch
8fbad31b43 Fixes the hook-ins so when a shape asset is changed, tsstatics now are correctly triggered for a reload 2020-09-13 17:57:19 -05:00
Areloch
3c0c106051 Reorgs the editing of postFX so the editor settings edits the default config, and Scene > edit postFX to edit scene
Changes the saving of postfx from saving via the editor to instead save on level save
Reorganizes the core postfx folder to subfolders for better organization, as well as moving the shaders to group with the respective postFX
Changes the postfx editor so it only edits postFXs that are actively enabled in the scene, and only saves out similarly.
Adjusts the level download logic to pass asset id for both data compactness compared to the full level filename, as well as easier lookup reference for associated files like the postFX preset file or decal files from the asset def.
Updated the PostFXAsset template to provide an up-to-date starting point/template.
2020-09-11 02:28:15 -05:00
Areloch
7405453123 Fixes issue where it would try and load a SIS file even if it doesnt exist
Fixed warning about use of invalid function 'setEnabled' instead of 'setActive'
Fixed formatting of a schedule call in ExmapleGameMode
Fixed EditorOpenMission logic to correctly get and use levelAsset
Removed unneeded continues from menuInputButtons' refresh()
Updated settings.xml to have sorted order for future consistency
2020-08-26 13:40:04 -05:00
Brian Roberts
5544951b5d
Merge pull request #302 from Areloch/soundAndAnimationAssetImport
Integrates sound and shapeAnimation assets into the importer
2020-08-25 00:23:05 -05:00
Areloch
1942535923 Integrates sound and shapeAnimation assets into the importer
Added drag-n-drop spawn action for soundAssets
2020-08-24 20:24:50 -05:00
Areloch
d06c99a088 Adds function to get material definition by mapTo usage
Re-enables logic for looking up existing material(generally just for in-place autoimport) and creates the material asset off of that. Also adds logic to look up the mapTo if it exists if the material name lookup fails.
Adds initial pass at re-enabling the sis file support for shape importing. In the event the UseManualShapeConfigRules setting is disabled(which it is by default) it will try and find the matching sis file and apply the rules from that to the config. Once the processing/import is done on the shape, the cached values of the main config are restored again.
Adds initial fbx.sis file. Needs to have the fields standardized to the config names.
2020-08-24 04:41:17 -05:00
Areloch
40dd926873 Adds function for sceneObjects to report utilized assets
Add reporting of used assets to tsStatics and TerrData
When saving a Scene, it will write static object asset dependencies to it's levelAsset
Shifted level loader logic to pass up the levelAsset rather than full level path
Made it so when level is loading, the levelAsset loads its dependencies. When the level is ended, as part of cleanup, they are unloaded
Shifts defaultEditorLevel to be an actual asset and made the ToolsModule load assets
Fixes the Save As action to correctly save out to the new level asset
Fixed the autoLoadAssets logic to be cleaner and not manually check types
Removed extra, unused DefaultEditorFile file
2020-08-19 18:30:42 -05:00
Areloch
686975c8ee shifts getImageFilename to getImagePath on ImageAsset
Adjusts references to utilize getImagePath to ensure things using the image asset gets the proper full path
Adjusts image import logic to import finding associated images
Adds logic so if a roughness map is imported, the generated material asset has the invertSmoothness flag on.
2020-08-13 01:35:24 -05:00
Areloch
69bfbb0978 Adds functions to get the full path for level and shape asset files
Updated choose level UI to use getLevelPath function so it works again
Added a check for mis.dso for choose level UI as well in case it was compiled
Updated open asset in shape editor logic to use getShapeFile so it works again
Fixed on-exit crash after drag-n-drop importing of assets into the AB by properly using the import config object as a pointered object
Added sanity check when inspecting a TSStatic, if there isn't a materials inspector group for whatever reason to prevent a crash
Added filter logic so if in select mode for a specific asset type, it won't show datablocks, prefabs or other loosefiles
Removed unneeded setting of AB's current address path when creating a new terrain material asset
Added logic for forcing field validation in the create a new asset window. This fixes a problem where if you'd typed in a field but didn't hit enter and then immediately hit the done button, the typed string wasn't used.
2020-08-12 13:11:13 -05:00
Brian Roberts
d1a79ae5eb
Merge pull request #280 from Areloch/YetMoreMiscAssetFixes
Even more misc asset fixes
2020-08-09 14:09:29 -05:00
Areloch
79ecc2f4a0 Updates the rest of the asset types to utilize separate expanded path variables to avoid breaking assetDef saving
Fixes select mode for the Asset Browser to properly filter to the selecting type
Fixes the imageType in the asset import window inspector to properly set to the importing image asset's discovered type if valid
Fixes AssetBrowser asset selection return so it returns back a valid assetId
Fixes TerrainMaterial save crash by ensuring we fill in the diffuseMapAsset
Removes saving of TerrainMaterial being saved to a generic script file if one isn't found for an existing TerrainMaterialAssets
2020-08-09 01:32:27 -05:00
Brian Roberts
641c75b721
Merge pull request #279 from Areloch/MoreABAndImporterFixes
More various Asset Browser and importer fixes
2020-08-08 15:12:01 -05:00
Areloch
d01341708e Removes extra assetImportConfigs file
Fixes name handling when finding associated image files on materials
Makes parseImageSuffix return back the case-correct suffix given the image's filename
Fixes import session reset logic to not have infinite looping happen when activated if files are in the session still(used mainly when import config is changed)
Makes sure materials are not processed if they are found in the import config's ignoreMaterials list
Makes sure active import config is properly on importer when it's changed in the Import window
Tweaked asset browser folder filtering logic so it always rejects .git folders from displaying, and also made the core, tools, cache and shaderCache filtering behavior consistent
Fixed navigation of root-level folders if double-clicking on them through the main window
Ensured import session is reset after an import happens so no extra files are left over in the importer's list
2020-08-08 13:01:50 -05:00
AzaezelX
284ad3e083 from @OTHGMars: AssetImporter type and path for material look-ups.
(and fix for pbrconfig<map> entry)
2020-08-08 00:54:06 -05:00