Commit graph

3835 commits

Author SHA1 Message Date
JeffR 50973b7f6f Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into MiscFixes2022049 2022-04-10 18:54:33 -05:00
AzaezelX 0136af477f getAssetIdByFilename loaded state fix
getAssetIdByFilename should set the <type>Asset->mLoadedState = AssetErrCode::BadFileReference; so we know we're using a fallback
2022-04-10 17:29:55 -05:00
JeffR 5c8d8fab00 Changes behavior with suffix appending of asset importer so it doesn't contaminate the original "clean" name, which is used for setting the mapTo value of material definitions
Also adds a sanity check when applying the type suffix to see if it's already there to avoid needless doubleups
Fixes offsetting/positioning behavior on icon buttons to actually respect the icon position variable
Adds sanity checks to ensure we're not trying to utilize a in-process-of-deleting decoy dummy
Fixes handling of sliders in option menus to properly store and test unapplied values
Fixes handling of display device setting to properly store and test unapplied values
Adds additional logic to creation of shape and material asset previews to attempt to force-load dependencies to improve likelihood that they'll actually be loaded when we go to generate the preview.
Temp disables creating cubemap 'assets' via the RMB context menu in the AB
2022-04-10 01:40:15 -05:00
Brian Roberts ab90f288c1
Merge pull request #751 from Azaezel/alpha40/sdl2Sync22MAR22
update sdl to https://github.com/libsdl-org/SDL 22March 2022
2022-04-09 05:52:30 -05:00
Brian Roberts be3be2eb7d
Merge pull request #760 from Areloch/ForestBrushGroupToolingFixes
Fixes tooling of Forest Editor to be module-friendly
2022-04-08 01:29:06 -05:00
JeffR bfe3d4d02b Shifts handling of forest brush and item elements into standard simsets for consistency
Updates the forest editor tooling to utilize the new sets, and adjusts the creation of new Brushes in the forest editor to have user select a target module first.
This ensures all a module's brushes are grouped into the new ForestBrushGroup class which auto-registers into the ForestBrushSet, thus allowing modules to have their own sets of brushes that automatically hook into the editor workflow.
2022-04-07 18:19:13 -05:00
Brian Roberts 67b5afcfbe
Merge pull request #758 from Azaezel/alpha40/spawnDisplayAug
display the item to be spawned
2022-04-07 11:48:20 -05:00
JeffR 976c0bca79 Fixed uninitialized values for renderMeshExample and renderShapeExample which would cause a crash on creation
Added utility method to prefab to be able to get the internal simGroup that contains it's children
Adjusted logic for mounting items in GuiShapeEdPreview to utilize assetIds for the shapes
Moved the Asset and AssetBrowser editor settings populate functions to the AssetBrowser script to better organize things
Fixed command usage for General, Player and Observer spawn point creator entries to use the correct callback commands
Fixed logic for creator callback commands that don't just route through the class name based structure
Added RMB context menu actions for opening asset file or folder locations in OS file explorer
Fixed lookup of animation assets when editing a shape's animations in the shape editor so it provides the assetId of the anim if it exists
Fixes handling of mounting in the shape editor so it utilizes assets and the asset browser like everything else
2022-04-06 01:08:20 -05:00
AzaezelX e1a127715e sanity checks 2022-04-05 20:17:51 -05:00
AzaezelX ed33c70a23 display the item to be spawned
given a valid datablock name, use that meshes shape to display the spawnsphere mesh, rather than the default one
2022-04-05 18:54:09 -05:00
JeffR 6b28f1f151 Fleshes out remaining missing editor settings entries/categories
Makes GUIAssets exec scripts before the gui file to allow onAdd methods to work
Adds missing getForestPath and getNavmeshPath methods and updates asset move logic to utilize them
2022-04-05 00:29:58 -05:00
JeffR d044ae0702 Removed unneeded default irradiance and prefilter cubemaps, and their convars
Added getGUIPath console function to guiAsset
Corrected console function documentation for getScriptPath in MaterialAsset
Added getter console functions to PostEffectAsset
Added getAnimationPath console function to PostEffectAsset
Fixes handling of mapto with the reskin usage when generating preview renders for ShapeAssets
Standardizes getShapeFile to getShapePath on ShapeAsset to better match formatting of other getters on assets
Adds sanity checking for getStringWidth to prevent crash if there's an issue with the font being ready at time of request(from Az)
Earlies out on rendering of impostors if it's the deferred bin to prevent unneeded duplicate rendering messing up results(from Az)
Fixed duplicate naming of quality levels on LightingQualityList
Added check so if _makePrettyResString is handed a 'human formatted' resolution string(as in, has <width> x <height> it can handle that properly
Shifted yes/no and on/off option lists to globals for ease and consistency of handling on options menu
Improves check for unapplied graphics options on options menu and applies them all at once
Add sanitizing of variable names so getVariable doesn't have issues when looking up array variables in optionsMenu logic
Adds better tracking of what options menu category is shown so refreshes don't reset it
Add better handling for changing resolution in options menu and getting it to apply properly
Adds better utility functions for setting bools vs optionsLists vs quality lists and updates options fields to use the most appropriate
Removes redundant setting of $pref::SFX::channelVolume vars in defaults.tscript
Removed unneeded extra logging from asset browser drag-n-drop actions
Adds item to RMB context menu in AB to regenerate preview images
Fixes move command for asset types(needed to properly reference the full path of the associated files) and added it for shapes, animations and terrains
Added logic so when the dropdown for selecting a target module on the Create New Asset window is changed, it forcefully updates the target path to point to the module to avoid erroneous paths being provided
Adds proper clamping of values to Forest Editor's brush size in the editor bar. Could be set to below 1 even though it would visually clamp to 1.
Temporarily disables fields and handling of 'open in Torsion'.
Fixes bad pixel in gui/images/tab_border.png which was causing it to fail to generate bitmap array properly
Makes the New GUI option from menubar in GUI Editor use same Create New Asset method as everything else
Disables access to the CubemapDesc reflector field in the material editor as it's not nominally used now in favor of probes
Adds proper loading of roughness and metalness fields in material editor
Fixes the default ReflectProbePreviewMat to use a better base DiffuseMap (No Material) rather than the occluder
Fixes disable display for some options in the advanced panel in the shape editor so they look more fitting to everything else
Adds check to avoid spam of markItem errors in the event requested tree item is invalid
Fixed remove material button and command in TerrainMaterial Editor
2022-04-03 20:00:30 -05:00
JeffR bae6a3f514 Fixes assignment of the mapTo field for terrain FX materials to point to the assetId rather than just the assetName, fixing the material mapping lookups
Fixes project import to comply to above change
Makes Material default mEffectColor to white instead of whatever default value it comes up with due to memset
2022-03-31 18:58:06 -05:00
JeffR 81aa43a4bd Fixed formatting to match the standard for TerrainMaterialAsset inspector fields
Added utility functions to TerrainMaterialAsset for getting the material and fx material definitions
Fixed logical flaw with the initialization code that could cause the materialDefinition to be nulled in terrainmaterialassets
Fixed layer handling in GroundCover to properly work with TerrainMaterialAssets
Added logic to properly exit out of the onAdd in the event no internal name is assigned or if there is a collision. This prevents duplicates from appearing in the terr mat editor when creating a new material
Fixed issue where going from a creator item in the AB to selecting a particular asset type would break the filtering because select mode removed collections and creator items, changing all the item ids and breaking references.
Added sanity check to prevent attempting to acquire non-assets in the AB, such as creator entries, which would cause console spam
Added optional field to provide an override new asset name to the New Asset window
Added logic so in the event no FX Material is found when importing a terrain material, it will create a stub entry so it always has one defined
Added logic to handle situations where a terrain has a reference to an assetId, but the asset does not exist for whatever reason. Will prompt to create the missing asset, then continue on with the regular saving/editing process as normal
Fixed issue where the terrain material editor would try and reference the preview images being used in the display on the editor instead of the proper assetId itself
2022-03-29 01:40:07 -05:00
Brian Roberts c64671ff91
Merge pull request #753 from Areloch/miscFixes20220327
Misc Fixes for 2022/03/27
2022-03-27 04:36:49 -05:00
JeffR dff83182e2 Added sanity check to ensure that the requested file to be scaled via saveScaledImage actually exists
Shifts integration of other modules with the OptionsMenu so other modules can inject their own options categories to a callOnModules hook
Updated ExampleModule to use new options menu integration angle to show example option
Deleted unneeded dropdown_textEdit_image asset def from baseUI
Fixed incorrect internal values for the terrainIcon_image asset def that made it present as a redundant terrain material asset
Cleaned up old, bad loadFilters calls and replaced them with the proper refresh() calls.
Removed old, bad calls for jumping through the asset browser's tree from when it was still hardcoded organization, which cuts down a lot of error spam
Cleaned up some of the asset type's preview image assignment code to be more reliable
Made terrain materials now use a similar preview proxy shape as regular materials
Fixed erroneous duplicate GuiInspectorTypeShapeAssetPtr::onControlDropped, which was breaking drag-n-drop actions of shapeAssets into inspector fields
Added proper logic for drag-n-drop actions of imageAssets into inspector fields
Add sanity check after creating new asset to avoid redundant attempts at initialization of the new asset
Fixed ConvexShape Editor tooling so you can now use the UI to apply the selected material to the selected surface
Added tools menu to the menubar with the Project Importer entry so the PI can be launched from either tool
Implemented ability to drag-n-drop imageAssets onto MaterialEditor map fields and have it work
Implemented ability to drag-n-drop imageAssets onto TerrainMaterial Editor map fields and have it work
Made the TerrainMaterial editor dialogue have a non-modal background so you can interact with the editor as normal while it's up
Add sanity check to avoid attempting to mark EditorTree items if we couldn't find it's id
renamed BaseMap references in terrain material editor to diffuseMap for consistency
2022-03-27 03:05:48 -05:00
JeffR 69d547fd72 Adjusted handling for the bitmap and bitmapAsset fields for guiBitmapButtonCtrl to forcefully update the button states when changed, ensuring that the bitmaps refresh when changed via the field
Added callback for onResize to guiWindowCtrl so controls - such as the EditorTree - can be properly resized in certain circumstances when the window is changed
Added getIncrement() and getRange() to GuiGameSettingsCtrl to better facilitate options manipulation on the script side
Corrected some of the console method documentation strings in GuiGameSettingsCtrl
Removed some unneeded, extraneous files and their asset definitions that came from odd import conversions. Where applicable, created cleaned up versions to make naming conventions and references stable
Fixed canvas mode update text typo: FSAA -> FXAA
Added logic to DOF, Light Rays, SSAO and Vignette postFX's to check both the preset setting AND the user preference before enabling.
Shifted initialization order so PostFX's are loaded before we configure the canvas, to ensure stuff like the FXAAPostFX exists and can be toggled on on load
Fixed multiple issues with options menu:
 When using gamepad, unable to navigate from categories to options. Fixed so can now traverse as normal
 Input limitations on gamepad necessitated changing of how setting applying happens, is now done as a 'apply or discard' prompt when leaving the options menu
 Added proper handling for adjusting settings with gamepad with left/right inputs
 Fixed issue where the unapplied change for an option was sometimes being processed as an object name rather than an implicit string. Now made to be explicit strings to avoid issue.
 Made the menu button input for "Select" to go from categories to options gamepad only, and hidden when in the options list
 Fixed issue where changing window mode didn't correctly affect resolution option. Now set up so changing this field correctly refreshes the resolution option. Specifically, when on borderless, the resolution field does not show, preventing confusion as it is always full resolution
 Generally have the options list refresh when changes happen to allow any and all fields to be able to dynamically respond to other options having changed improving flexibility.
 Cleaned up old, unused, commented out functions
Added ability on OKCancel message boxes to override the button text if needed
Fixed issue with AssetBrowser where the shrink/grow icons next to the preview size slider were not anchored correctly.
Adjusted callback logic so if preview slider is clicked on, rather than dragged, it will correctly update the zoom values
Added sorting to Modules List dropdown for the AssetBrowser
Improved standardization of double-clicking in AssetBrowser. Now defaults to editing action if regularly browsing and selecting if in select mode. Still allows regular per-type overrides as normal
Moved definition of GuiDisabledTextEditProfile to gui profiles.ed.tscript file, removed duplicates to stop error spam
Adjusted default settings value for double-click action in AB to be edit to prevent unstable behavior
Removed old file refs from Load Recent list in the default settings
2022-03-26 22:36:37 -05:00
AzaezelX 2614274639 update sdl to https://github.com/libsdl-org/SDL 22March 2022 2022-03-23 01:43:08 -05: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 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
AzaezelX d883575d0f fix compilation flaws 2022-03-17 17:38:41 -05:00
Brian Roberts 3411dab754
Merge pull request #742 from Areloch/invisibleFileFix
Tweaks handling of "invisible" files
2022-03-16 03:30:45 -05:00
Brian Roberts dad0149dfe
Merge pull request #741 from Areloch/systemCommandFunction
Adds a systemCommand console utility function
2022-03-16 03:30:33 -05:00
JeffR b36776d567 Tweaks handling of "invisible" files, files which start with a ., effectively making them have no filename and only an extension.
This allows the engine to actually process and work with such files.
2022-03-15 21:17:37 -05:00
JeffR 1496ffac6e Adds a systemCommand console utility function, which invokes the standard system() function call, and also has an optional callback return parameter. 2022-03-15 21:10:55 -05:00
AzaezelX 8dcd74ff18 point baseline fog color at the right target hen in deferred mode 2022-03-09 18:21:47 -06:00
marauder2k7 382ee60d86 Sky Sorting
-Change: ScatterSky is always drawn behind other sky objects (since it has sun and moon)
2022-03-08 20:18:47 +00:00
marauder2k7 bbf92846c2 Update scatterSky.cpp 2022-03-08 19:52:47 +00:00
marauder2k7 1d5a36c4c0 Spheres for Skies
-Added: SkySphere a full sphere skyBox
-Change: ScatterSky now renders a dome instead of the top face of a cubeSphere
-Change: Creator now has skySphere

TODO: Simplify sphere creation
PossibleMethod: Add the sphere creation functions to one place to be shared around.
2022-03-08 19:50:36 +00:00
JeffR f1f73e41bd Fixes handlong of loading non-DDS images to better handle pointer references with the GBitmap resources.
Also adds a sanity check for the source or dest strings so they can't be empty strings
2022-03-06 22:55:05 -06:00
JeffR 7fe85ab7d5 Fixes saveScaledImage to handle DDS format files, since DDS's go through a separate resource loader 2022-02-25 16:55:05 -06:00
Brian Roberts 10c3188171
Merge pull request #730 from Areloch/BaseUIModuleStandardizePR
Base UI module standardize pr
2022-02-23 10:45:00 -06:00
JeffR 938e4930ae Git didn't properly actually commit new files. 2022-02-22 23:28:28 -06:00
JeffR 6a357d8dfb Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into Preview4_0 2022-02-17 18:30:23 -06:00
JeffR ed36cf2c5c Changes for BaseUI Update 2022-02-17 18:04:31 -06:00
AzaezelX 540e82b95c template mixins need this-> specified 2022-02-14 19:50:37 -06:00
JeffR 28bf6c5b8f Ensures that the capturing flag is toggled regardless of how we invoke for a probe to bake(previously it was only done with the batch bake) 2022-02-14 08:58:19 -06:00
Brian Roberts b9cd83a898
Merge pull request #726 from Areloch/DefaultValueSaveFix
Improves logical checks for the default value so it's more sane and stable
2022-02-14 01:11:56 -06:00
JeffR a0f8b29da7 Improves logical checks for the default value so it's more sane and stable
Allows creation of polyhedrons via constructor with a origin and vector format, allowing to have default polyhedron values on triggers and physical zones
2022-02-14 01:07:39 -06:00
JeffR e04f844240 Scaling correction to probes in deferred mode to improve parallax adjustment
Ensure that probes are masked to be rendered during bake passes so they can contribute during a bake allowing multibakes
Adjusted order of the connect data for the forward shaders to fix a mis-port issue
2022-02-13 19:24:01 -06:00
JeffR c1a88ec423 Complied connect var data in GL to D3D for the wsPosition
Made the use of ints for the cubemapIdx in the shaders consistent
2022-02-12 17:32:30 -06:00
JeffR 79eebdd5f3 Cleaned and repacked work to update the probe bin and reflection probe behavior to clean and standardize it. 2022-02-12 15:53:40 -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 b4e346aa3f Adjustments to save out code when writing fields such that if the TAML writer is marked as not writing defaults, it doesn't. And makes the regular simobject save out not write default values as the default behavior 2022-01-31 20:57:57 -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
AzaezelX eeff4d858a clean up ambiguous reference 2022-01-22 03:27:22 -06:00
OTHGMars bed3be278c GuiBitmapCtrl named texture fixes.
Adds StringTableEntry when bitmap is set via setBitmapHandle.
Prevents existing bitmap handles from being dropped in onWake (they are preserved in onSleep).
2022-01-21 19:47:41 -05:00
JeffR ed13bdfdd2 Changes the -> syntax check from exclusively checking simgroups to checking simsets, allowing both to be used 2022-01-21 16:01:44 -06:00
JeffR 1952820ef2 Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into UpdatedProjectImporter 2022-01-20 17:48:17 -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
Brian Roberts e2a2f26828
Merge pull request #717 from lukaspj/fix/improve-taml-xml-formatting-no-tampering
Improve tinyXml2 output formatting
2022-01-17 05:03:24 -06:00
JeffR 15ef8b4fbe Cleaned up implementation of #712
Also updates other game classes like the shapebase to utilize the sound asset hooks properly.
2022-01-03 20:57:10 -06:00
Lukas Aldershaab 3ef57168b2 Cleanup fsTinyXml implementation 2022-01-03 21:16:34 +01:00
Lukas Aldershaab 5abd66dfa3 Split PrettyPrinting functionality from VFS printing 2022-01-03 21:10:26 +01:00
Lukas Aldershaab 165459c90b Improve tinyXml2 output formatting 2022-01-02 12:18:25 +01:00
JeffR b70faae38f Updates the handling of the baking of shape asset previews to generate them with support for view angle control to improve visibility, as well as supporting overriding of a material in the preview bake
Also utilizes the updated bake handling to have material asset previews render as a sphere shape asset, overriding with the material asset's material, improving distinction of what is a material asset vs image asset
Also updates the sphere preview mesh to be more generic and not only for reflection probes
2021-12-24 17:26:45 -06:00
Robert MacGregor 9cf6c42fa1 * Adjustment: Tweak more manual memory management to use dStrcpy and use the VFS for directory queries always now. 2021-12-21 14:52:31 -05:00
Robert MacGregor abb4e558dc * Adjustment: Rework the TORQUE_SECURE_VFS paths in the assetImporter to use dStrcpy instead of manual memory management. 2021-12-21 02:15:16 -05:00
Robert MacGregor 0e93373824 * BugFix: When querying against root with Torque::FS::DumpDirectories, correctly return directories with their path.
* Adjustment: Add commenting to some of the new programming.
* Adjustment: Tweak fileCreatedTime and fileModifiedTime functions to use the VFS.
2021-12-20 19:26:32 -05:00
Robert MacGregor b63122ea76 * BugFix: Corrections to the VFS dumpDirectories function to properly honor the depth parameter. 2021-12-19 01:51:19 -05:00
Robert MacGregor 46b8c3d15d * BugFix: Correct the VFS dumpDirectories function not honoring noBasePath properly. 2021-12-19 01:18:52 -05:00
Robert MacGregor 7665076b19 * Cleanup: Minor cleanup of test code and an unused include. 2021-12-19 00:54:11 -05:00
Robert MacGregor 66f9336995 * Adjustment: Tweak the asset importer to use the Torque VFS functions. 2021-12-19 00:28:15 -05:00
Robert MacGregor cbe7ee13d6 * Adjustment: Change several filesystem functions to use the VFS.
* Feature: Initial implementation of a VFS dump directories function.
2021-12-18 23:37:49 -05:00
Robert MacGregor 948bc43d85 * Feature: Augment VFS file information with creation times & update some console functions to use VFS. 2021-12-18 03:56:11 -05:00
Robert MacGregor 277cdf67b0 * Feature: Initial secure VFS implementation with asset import capability. 2021-12-17 21:16:42 -05:00
rextimmy e1398895b3 fix opengl device not returning the correct anisotropic value 2021-12-15 20:09:18 +10:00
Robert MacGregor deb994cb13 * BugFix: Correct a windows-only pathing issue in terrMaterial. 2021-12-14 19:44:44 -05:00
JeffR 434c6c26fe A clean implementation of Lukas' Fix side projection #684 PR with Az's addendum fix rolled in 2021-12-13 15:56:14 -06:00
Robert MacGregor cc45f9e9a4 * BugFix: Fix a Windows ASAN reported allocation mismatch error. 2021-12-13 00:04:24 -05:00
JeffR a8b3d874a1 Fixes mapping of imposter images to be packed as part of the shape asset, and fixes paths to be formatted more sanely. 2021-12-10 00:01:26 -06:00
Jeff Hutchinson 73b023a4b7 Fix console warning when calling void functions in console
Forgot to add this check when rewriting the interpreter.
2021-12-08 21:00:50 -05:00
Brian Roberts 0e06e2853e
Merge pull request #691 from Azaezel/alpha40/terrainTrickery
use internalname for terrain layers
2021-12-05 19:32:29 -06:00
Robert MacGregor 5fa7c62ba9 * BugFix: Don't use the register keyword in the console grammar files. 2021-12-03 20:33:02 -05:00
AzaezelX 1b282e0baf use internalname for terrain layers
stops bugs like spaces in filenames and the like from occuring due to pointing right at the diffuse flat file name, as well as corruption from using a different diffuse in the material later

(cherry picked from commit c1227dbdd0dd61c25970eeaac128c6cbe5d25947)
2021-11-29 13:54:13 -06:00
Brian Roberts 346a84d16c
Merge pull request #688 from Azaezel/alpha40/guibitmapbuttonColorModulation
adds colorization to GuiBitmapButtonCtrl
2021-11-28 12:49:18 -06:00
Brian Roberts a7e804c7c3
Merge pull request #689 from Azaezel/alpha40/soundcleanups
cleanups for sound assets
2021-11-28 12:49:10 -06:00
AzaezelX 663335e556 TSStatic::updateMaterials() crashfix 2021-11-27 14:29:30 -06:00
AzaezelX 93faa243ac cleanups for sound assets
removed redundant get<foo>Profile calls, correctly used a few in proxmine
2021-11-27 00:32:25 -06:00
AzaezelX d074343b50 adds colorization to GuiBitmapButtonCtrl 2021-11-26 20:13:59 -06:00
Areloch a5944aff19 Adjusted callback handling of asset inspector fields when invoking AB to select asset for more consistent behavior and better handling of updating the objects and inspector
Added logic to forcefully acquire newly imported asset definition to better try and ensure it's loaded immediately after import
Added logic to asset importer so if a file is not found for an importing material asset, if populate maps is on, then it will try and find a matching image asset in the destination module
Added logic to tsStatic to better handle fields being updated via the editor, forcing updates and refreshes of the shape and materialSlots
Fixed handling of guiBitmapButtonCtrl so it will update the bitmap used when edited via the Gui Editor
Updated image ref to the hudFill image asset for the console GUI
Cleaned up names for the default camera model/material
Defaulted import config to utilize the Prune action instead of rename for more predictable default behavior
Added icons next to AB's preview slider bar for additional visual feedback of slider intent
Added missing checkbox to asset import window and cleaned up scaling behavior
Fixed handling of drag-n-drop behavior in GUI editor so it doesn't block further interaction
Added logic for drag-n-drop of image assets to GUI Editor so it will create a GuiBitmapCtrl with the image
Added handling for drag-n-drop import of folders of assets to AB/Asset Import
Added missing asset import config option to indicate if config supported import of sound assets
Added logic when opening asset import config editor, where if there is a default import config set in the settings, it will open that one by default
Hid the collision section of the import config editor, as those options are currently unutilized
Improved behavior for Create New Folder window in the AB, now always pushing to the front, and also selecting the text by default, so the user can just start typing the new name
Also added return and escape key accelerators to Create New Folder window for better UX
Fixed display of editor windows, adding a distinct blue color to highlighted windows' title bar and fixing display of minimize/maximize/window/close buttons
Moved GUIEditor's onControlDropped function to the AB script to match placement of sibling world editor function
Fixed issue with material editor where the ORM Config map slot was getting the normal map instead of the correct ORM map
2021-11-26 16:40:15 -06:00
Robert MacGregor 41e5988c46 * BugFix: Correct a scoping error with ConsoleValue in the updated code in GuiInspectorField. 2021-11-24 14:14:24 -05:00
Robert MacGregor 4dea3810b9 * [SFXDescription] BugFix: Correct a data corruption issue in converting legacy channel values. 2021-11-24 13:46:18 -05:00
Robert MacGregor f1a48df676 * [GuiInspectorField] BugFix: Correct data corruption potential caused by casting the result of Con::evaluatef directly to a const char. 2021-11-24 09:16:09 -05:00
AzaezelX 0527865462 set cubemapsaver profile to one that preserves sizes
also aug size mismatches for the popup so they're reported
2021-11-21 14:28:51 -06:00
Brian Roberts 797020286b
Merge pull request #668 from Ragora/feature-turret-typemask
Feature: Implement a TurretObjectType bit for typemasks
2021-11-20 23:32:15 -06:00
Brian Roberts df4624e88a
Merge pull request #674 from Ragora/adjustment-unix-platform
Adjustment: Generalization of platformX86UNIX to platformPOSIX
2021-11-20 19:27:48 -06:00
Jeff Hutchinson 7ac62f42a3 Fixed a leak with console stack in the interpreter.
Issue was pushing a new frame in the global scope. Everytime a global scope was called, 1 ConsoleValue got allocated that was never freed. After 4096 'global scope' function calls, the engine would blow. Also cleans up an extra rogue usage of push/pop with the saver helper.
2021-11-20 19:08:02 -05:00
Areloch 04b0883a31 Assimp checks against lowercase extensions, so we force the extension of the file to lower before fetching the importer.
Also adds sanity check that the importer was actually found before we try and use it.
2021-11-19 23:14:06 -06:00
Robert MacGregor 88cfa4533b * Cleanup: Remove a comment referencing the now-removed DisplayPtrManager. 2021-11-17 22:08:08 -05:00
Robert MacGregor d1fde1f54b * Cleanup: Fully remove the DisplayPtrManager class as it was not actually being used by anything. 2021-11-17 21:58:17 -05:00
Robert MacGregor b986589804 Merge remote-tracking branch 'main/Preview4_0' into adjustment-unix-platform 2021-11-17 21:38:48 -05:00
Brian Roberts 75adcb9b7c
Merge pull request #676 from JeffProgrammer/ts-errors
Optionally allow to treat script assert as warning
2021-11-17 17:03:32 -06:00
Jeff Hutchinson 2e03108856 Optionally allow to treat script assert as warning
This commit allows us to treat variable use before assign errors and local variables inside of the global scope as warnings instead of asserts. This will allow for easier porting of legacy scripts. It is highly recommended use this as an aid to port scripts, but can be used in production if needbe.
2021-11-17 18:01:35 -05:00
AzaezelX 6474413aaf fix reported ASAN crash 2021-11-16 12:40:22 -06:00
Brian Roberts b5bd242e23
Merge pull request #673 from Areloch/useImagePreviews
Shifts utilization of gui elements in editors that point to 'normal' image assets to utilize generated previews instead.
2021-11-15 12:39:33 -06:00
Areloch eb24b63be4 Shifts utilization of gui elements in editors that point to 'normal' image assets to utilize generated previews instead.
This reduces console spam about mismatched texture profiles and improves stability.
2021-11-14 21:39:51 -06:00
Brian Roberts 4f04213cd9
Merge pull request #671 from Azaezel/alpha40/brdfFixes
brdf handling corrections
2021-11-14 13:46:47 -06:00
Robert MacGregor 247b12e795 * BugFix: Correct many include paths and build platformX11 on non-Apple Unix. 2021-11-14 14:45:42 -05:00
Robert MacGregor a24149ba3b * Adjustment: Tweak the include paths for platformPOSIX.h. 2021-11-14 14:05:16 -05:00
Robert MacGregor 6583134ef2 * Adjustment: Initial work on moving x86Unix platform code into a more common POSIX platform. 2021-11-14 13:56:12 -05:00
Areloch 2af12c52e1 Shifted check for FBX importer in assimp shape loader code to utilize stringtable 2021-11-14 01:28:16 -06:00
Areloch f14375983b Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into MiscFixes2021114 2021-11-14 01:26:16 -06:00
Areloch 97484247ae Fixes Settings window not being able to be brought forward over AB
Adds checkbox to mark as not showing Import Window each time
Added loaded import config to import log output
Fixed targeted material map slot field names
Added helper function for playing a sound asset via AssetId
Updated import config to have some more common suffixes
Updated editor settings to have Import Window show by default
Changed AB context menu from listing item as "Refresh Asset" to "Reload Asset" for improved clarity
Removed unneeded duplicate editor settings window script file
2021-11-14 01:26:04 -06:00
AzaezelX b60d51969e brdf handling corrections
1-handle the brdfTexture in linear space, not srgb.
2-clamp surface.NoV across the board for consistency. (solves several new and ongoing artifacts)
2021-11-13 19:05:26 -06:00
Jeff Hutchinson 949813956d Add Object Inheritence Acceptance Test 2021-11-11 22:57:09 -05:00
Brian Roberts 91469c25ab
Merge pull request #667 from Azaezel/alpha40/scaleShenanigans
fix fbx importer lookup for setting formatScaleFactor
2021-11-11 18:33:11 -06:00
Robert MacGregor 2b15c9e89d * BugFix: Correct the vehicle types double-tapping their onAdd and onRemove callbacks - rigidShape handles dispatching the script callbacks. 2021-11-11 16:41:28 -05:00
Robert MacGregor 227b1e3f51 * Feature: Implement a TurretObjectType bit for typemasks. 2021-11-10 19:34:32 -05:00
Areloch 8d310b8d5d Merge branch 'alpha40/scaleShenanigans' of https://github.com/Azaezel/Torque3D-1 into Preview4_0 2021-11-09 19:10:50 -06:00
Areloch d06bc790e3 Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into Preview4_0 2021-11-09 19:06:57 -06:00
AzaezelX f9496559c9 fix fbx importer lookup for setting formatScaleFactor 2021-11-09 01:05:42 -06:00
Brian Roberts e0e3ebc69d
Merge pull request #637 from Azaezel/alpha40/guiRotation
blatantly ganked from T2D; adds rotation as an option for drawbitmap
2021-11-08 16:08:17 -06:00
AzaezelX 8fa652a327 by request, changed fspin and the new "rotation" for bitmap gui elements to a more generic "angle" to preserve thedistinction between rotating a gui and rotating a 3d object. 2021-11-08 16:07:44 -06:00
Robert MacGregor 2c7dc4e783
Merge branch 'Preview4_0' into bugfix-crash-variableinspector 2021-11-08 15:42:44 -05:00
Brian Roberts 4e51ac17bd
Merge pull request #661 from Azaezel/alpha40/namedtexturetargs
better handle old style references to named texture targets
2021-11-08 14:38:11 -06:00
Brian Roberts e53012a938
Merge pull request #660 from Azaezel/alpha40/tsStaticNodeLookup
new method tsstatic.getNodeTransform
2021-11-08 14:37:50 -06:00
Brian Roberts 721f14a284
Merge pull request #665 from Azaezel/alpha40/TriggerSelfReferencing
fill out a %this variable for trigger callbacks
2021-11-08 14:37:39 -06:00
Brian Roberts e87ce245e9
Merge pull request #662 from Areloch/MiscImportFixes20211105
Misc asset import QOL and bugfix changes
2021-11-08 14:37:03 -06:00
Robert MacGregor a8116bbaf5 * [AssetImporter] BugFix: Correct ASAN reported out of bounds reads in the asset import programming. 2021-11-08 15:31:07 -05:00
Areloch 9f51cc7e4c Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into Preview4_0 2021-11-08 12:51:13 -06:00
AzaezelX 733b71ccad fill out a %this variable for trigger callbacks 2021-11-07 14:52:25 -06:00
Areloch a3351390c6 Expands handling of the collada enumerator so if the material is not named the same as the image file, it performs a lookup to find the associated material. 2021-11-06 22:36:59 -05:00
Robert MacGregor a6a7d6e1a1 * [Tokenizer] BugFix: Correct a malloc/delete mismatch in the tokenizer programming. 2021-11-06 20:34:12 -04:00
Areloch bd0a070d03 Merge branch 'MiscImportFixes20211105' of https://github.com/Areloch/Torque3D into Preview4_0 2021-11-06 19:09:55 -05:00
Brian Roberts 8293ac7b49
Merge pull request #656 from Ragora/bugfix-module-deinitialization-order
BugFix: Correct Module deinitialization Ordering
2021-11-06 18:15:21 -05:00
JeffR b3cd08520e Disables generation of the materials script files by the internal shape import processor. Material script files are now only generated by the AssetImporter as part of the shape injest process.
Renames validateImportingAssets to hasImportIssues for AssetImporter console method for clarity
Updated console method documentation for AssetImporter methods
Fixed logical error for material asset generation if the import config was set to use existing materials but one was not found.
Fixed logical error when a shapeFile has a material with a texture mapped to it is not in the same directory as the shape, it would not correctly find the texture
Adjusts AssetImport window logic so it will display the window in the event of import issues being detected, or the asset is being re-imported.
Updates the AssetImport window activity log to use the new AssetImporter's log for consistency.
2021-11-05 17:49:48 -05:00
AzaezelX e211f502e8 better handle old style references to named texture targets 2021-11-04 15:44:43 -05:00
Brian Roberts 4d56b34bbb
Merge pull request #651 from Ragora/bugfix-asan-tsshapeedit
BugFix: Correct an ASAN use-after-free Error in TSShapeEdit
2021-11-03 22:19:50 -05:00
Brian Roberts dec886036c
Merge pull request #659 from Ragora/bugfix-delete-and-new-mismatch
[TAML] BugFix: Correct a delete and new[] mismatch in tamlWriteNode
2021-11-03 21:17:16 -05:00
Brian Roberts 1a0b66b5e3
Merge pull request #655 from Ragora/bugfix-asan-sync-fetch-and-add
BugFix: Correct an ASAN reported memory error caused by incorrect usage of __sync_fetch_and_add
2021-11-03 21:17:07 -05:00
Brian Roberts efed9358f7
Merge pull request #649 from Ragora/bugfix-asan-guigamelistmenuctrl
BugFix: Correct an ASAN reported memory access error in GuiGameListMenuCtrl
2021-11-03 21:16:47 -05:00
Brian Roberts 2bb4d34efd
Merge pull request #658 from Azaezel/alpha40/imageArrayProfileFixes
imageasset array profile fixes
2021-11-03 21:15:59 -05:00
Brian Roberts e4428cf75a
Merge pull request #657 from Areloch/SeparateImporterLogFile
Updates asset importer and project importer to output to separate log files into tools/logs
2021-11-03 21:15:51 -05:00
AzaezelX 19e4643707 new method tsstatic.getNodeTransform
used to look up a given node's transform by explicit name in a tsstatic object
2021-11-03 21:15:00 -05:00
Robert MacGregor 400db2da88 * [TAML] BugFix: Correct a delete and new[] mismatch in tamlWriteNode reported by ASAN. 2021-11-03 18:27:26 -04:00
AzaezelX 69afd3d370 Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into alpha40/imageArrayProfileFixes 2021-11-03 12:48:47 -05:00
AzaezelX e45b959d7d correct imageassetarrays having a singular texture profile as oposed to a type per.
while that certainly works for most cases it falls apart when dealing with postfx where it's an unnamed array of variable types of inputs.
shifted the profile assignment to #define INIT_IMAGEASSET_ARRAY(name, profile, index) so there's still a really obvious point where you can see the default setting, even if it's not in the more desireable OG definition spot
for postfx in particular, given we can swap that, provided an example of how to do just that
2021-11-03 12:30:52 -05: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
Robert MacGregor 38e7bb9232 * BugFix: Correct the possibility of the Sim module being deinitialized after the Scene module despite the Sim module being dependentant on the Scene module. 2021-11-02 18:52:54 -04:00
Robert MacGregor 2311d7d683 * BugFix: Correct an ASAN reported memory error caused by incorrect usage of __sync_fetch_and_add. 2021-11-02 18:11:42 -04:00
Brian Roberts e372545cc6
Merge pull request #647 from Azaezel/alpha40/guiProfileCleanups
clean up more texture profile refs to kill spam
2021-11-02 16:39:25 -05:00
Brian Roberts 7c1574355f
Merge pull request #653 from Ragora/bugfix-asan-tabcomplete
BugFix: Correct an invalid memory access error caused by the tab autocomplete
2021-11-02 16:38:18 -05:00
Robert MacGregor 215a93e9af * BugFix: Correction for compiling on x86 Unix devices. 2021-11-02 17:36:22 -04:00
Robert MacGregor b33e1b400b * BugFix: Correct a crash in the variable inspector caused by keeping pointers into tVector managed memory. 2021-11-02 17:32:26 -04:00
Robert MacGregor 2b53c065ce * BugFix: Correct an invalid memory access error caused by the tab autocomplete in the console when attempting to tab complete at the start of the input while there is text to the right. 2021-11-02 13:55:57 -04:00
Robert MacGregor 2eefb4972f * BugFix: Correct an ASAN memory access error in TSShapeEdit caused by reading a reference from the same vector we are pushing to at the same time. 2021-11-02 09:11:25 -04:00
Robert MacGregor 724e4f423c * BugFix: Correct an ASAN reported memory access error when calling updateHeight on GuiGameListMenuCtrl when an invalid profile is initially set. 2021-11-02 08:21:22 -04:00
Robert MacGregor dd03af5041 * BugFix: Corrections to the Unix file IO to allow for compilation on ARM Unix devics. 2021-11-01 08:52:35 -04:00