Commit graph

176 commits

Author SHA1 Message Date
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
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
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
AzaezelX
0dcd272b87 clean up more texture profile refs to kill spam 2021-10-31 14:38:02 -05:00
AzaezelX
00515fffa8 sound asset conversions - afxmagicmissile for a datablock case and guimltextcrtl for an object-instance case 2021-10-14 15:06:49 -05:00
AzaezelX
f5600826d7 Merge branch 'Preview4_0' into SoundAssetImplements
# Conflicts:
#	Engine/source/T3D/assets/assetImporter.cpp
#	Engine/source/forest/forestItem.cpp
2021-10-11 20:11:27 -05:00
Robert MacGregor
5d26dba7da * BugFix: Clear some MSVC compiler warnings. 2021-10-07 00:27:39 -04:00
AzaezelX
98a079a797 code duplication prune. should aid in stability 2021-10-03 02:56:26 -05:00
Jeff Hutchinson
9c243bc5e2
Merge pull request #596 from OTHGMars/menuControl
GuiGameListMenuCtrl Update
2021-09-25 20:42:10 -04:00
OTHGMars
666065ce6c GuiGameListMenuCtrl Update
Methods to simplify managing localized option lists.
Adds a text key to each option in an option row.
Adds methods for getting the current selections index or key value.
Adds methods for setting the current selection by index or key value.
This change is backward compatible. If the new methods are not called, the control behavior is unaffected.
2021-09-25 02:48:30 -04:00
Jeff Hutchinson
755bbacaa0 Fix specific usage of Con::executef where it was not being assigned to a ConsoleValue before getting it's data out of it. 2021-09-24 19:32:57 -04:00
Jeff Hutchinson
17231ca9fb Merge remote-tracking branch 'devhead/Preview4_0' into tsneo
# Conflicts:
#	Engine/source/platform/types.visualc.h
#	Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript
#	Templates/BaseGame/game/tools/assetBrowser/scripts/assetTypes/terrain.tscript
#	Templates/BaseGame/game/tools/gui/editorSettingsWindow.ed.tscript
#	Templates/BaseGame/game/tools/gui/scriptEditorDlg.ed.gui
2021-09-01 22:26:23 -04:00
Areloch
683c438b09 Improves handling of rendering guiPopupCtrls where if the height extent is taller than the bitmap array height, it'll adjust the height to recenter the displayed bitmap elements.
Streamlined the toolbar for the gui and world editors to utilize a stack, making the behavior and manipulation of toolbar elements significantly more consistent.
Added Settings and Asset Browser buttons to both gui and world editor toolbars for easier access.
Moved all tool toolbars over to work with the stack system to make them more consistent and better formatting
Added saving of asset browser's last position and extent so it remembers it on load.
Added editor setting to close the asset browser after completing a drag-n-drop action.
Added keybind to editor keybind list, making space toggle the asset browser
2021-09-01 01:12:16 -05:00
Jeff Hutchinson
717c7acca9 Merge remote-tracking branch 'devhead/Preview4_0' into tsneo
# Conflicts:
#	Templates/BaseGame/game/data/ui/guis/loadingGui.gui
#	Templates/BaseGame/game/data/ui/guis/mainMenu.gui
#	Templates/BaseGame/game/tools/MainEditor/guis/MainEditorWindow.gui
#	Templates/BaseGame/game/tools/assetBrowser/guis/assetPreviewButtonsTemplate.gui
#	Templates/BaseGame/game/tools/forestEditor/brushes.tscript
2021-08-13 20:14:39 -04:00
AzaezelX
1037b5d718 extraneous entry 2021-08-09 22:24:03 -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
AzaezelX
b73353a446 we want old direct-file references first, then asset macros, since those plug in the old entries to empty if valid. 2021-07-29 11:12:07 -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
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
Jeff Hutchinson
02447f0996 compile fixes. 2021-03-31 22:12:58 -04:00
Areloch
e428ecd6ab Fixes display of internal names on objects shown in guiTreeViewCtrl 2021-02-24 01:05:24 -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
Brian Roberts
52ecd8bb0f
Merge pull request #395 from Areloch/MarkActiveScene
WIP of marking active scene in the scenetree
2020-12-19 02:35:58 -06:00
Areloch
87217e2365 Removes unneeded redundant asserts when the functions already have range sanity checks 2020-12-04 11:22:25 -06:00
Areloch
27cf3466c3 WIP of marking active scene in the scenetree 2020-12-03 00:31:23 -06:00
Areloch
efa84660bc Added handling for gamepad key input consumption as well. 2020-11-21 02:52:39 -06:00
Areloch
bca972ae24 Adds a flag to the guiGameListMenuCtrl to allow consuming of key input events. This allows for overriding other active keybinds that may be in play when a menu is active. 2020-11-21 02:35:05 -06:00
Areloch
db6c63d424 Adjusts guiGameListMenuCtrl.cpp to handle Left and Right keys to adjust options, which simultaneously fixes the 'jiggle' issue on the options menu of the BaseGame base UI
Per Steve's suggestion, put a pause on gameplay sounds alongside the game sim being paused when the pause menu is opened.
Nudges the keybind preview image for guiGameListMenuCtrl to be better centered
2020-10-25 02:51:52 -05:00
Lukas Aldershaab
197a62f6ea Convert dStrcmp to String::compare for more cases 2020-10-04 00:00:01 +02:00
Lukas Aldershaab
c999baf7ed Moves from using dStrCmp to the new String::compare static functions. Keeps things cleaner, consistent, and works with intellisense. 2020-10-03 14:37:55 +02:00
AzaezelX
e88b7a0783 minor cleanups:
clean up mismatched  PROFILE_START+PROFILE_END() that was in/out of the mip packign for loop on the gl side, leaving just the self-cleaning PROFILE_SCOPE(GFXGLTextureObject_copyToBmp); similar to the dx11 side
   void GuiGameListMenuCtrl::removeRow(const S32& row); (the GuiGameListMenuCtrl:: bit in the class iteslf is redundant and making linux unhappy)
2020-09-26 22:43:26 -05:00
Brian Roberts
add299e1b8
Merge pull request #316 from Areloch/UpdatedWindowsSettingsOptions
Updated version of OTHGMars' updated window and resolution options modes.
2020-09-20 16:02:35 -05:00
Areloch
26ef40950b Updated version of OTHGMars' updated window and resolution options modes.
Additional changes include disabling certain options when they are not valid(ie, resolution is disabled when in borderless mode)
2020-09-20 02:06:15 -05:00
Areloch
350d3e6702 Fixes 2 minor mistake corrections 2020-09-20 01:19:08 -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
5f95f9f8c0 Made GuiFadeinBitmapCtrl not only respond to mouse and keyboard events, but gamepad events as well, allowing gamepad inputs to skip opening splash pages
Ensured that guiGameListMenuCtrl adjusts values for rows marked as sliders via the left and right gamepad actions
Corrected the button maps for look and move on the gamepad for the ExampleModule's default movement binds
Fixed ExampleModule's default keybinds so alt+enter correctly toggles fullscreen
Fixed joinServerMenu so it has a guiInputCtrl that can catch keybind events and pass them to the menuInputButtons
Removed erroneous input consumption on OptionsMenuList
Removed unneeded check against Graphics API list
Flipped order of Anti Aliasing option to match ordering of the others
Removed old, unneeded legacy option menu script files
Added logic for message boxes to automatically return active MenuInputButton control to the holder before it was pushed
Added fill color for the UI list gui profile so the sliders render more legibly
2020-07-25 01:29:25 -05:00
Areloch
ef4cc8b573 Updated names of some of the input images to match the names of the inputs to simplify lookups
Altered a few of the input images to improve readability of some of the text
Standardizes the menuInputButton set usage to just use the raw action names rather than a middleman naming scheme for simplicity and standardization
Added comments to menuInputButtons.cs
Split out the menuInputButton containers to simplify and stabilize the code on the messageBox dialog
Removed old reference to script/gui files not there anymore
Simplified the input state check in guiGameListMenuCtrl.cpp
Added a check so we don't try exec'ing the selected list item in guiGameListMenuCtrl.cpp if nothing has actually be selected
2020-07-23 16:26:38 -05:00
Areloch
37420cda66 Updates the BaseGame UI theme to be more legible and visually consistent.
Also standardizes and fixes the menuInputButtons system.
2020-07-23 00:22:15 -05:00
Areloch
758dd20724 Adds logic to guiTextEditCtrl to have placeholder text when the control is empty. 2020-07-11 15:53:21 -05:00
Marc Chapman
913c8753d0 Linux Slash compatability 2020-06-12 06:24:54 +01:00
Areloch
69089e1ee2 Merge branch 'Preview4_0' of https://github.com/TorqueGameEngines/Torque3D into Preview4_0_MenuUIRework 2020-06-01 03:48:20 -05:00
Areloch
a561d590ca Minor cleanups to guiGameListMenuCtrl 2020-06-01 03:32:45 -05:00
Areloch
3b47d41da2 Majority of options menu integration completed
Implemented keybind option type
Updated Pause menu to comply with new style
2020-05-25 00:51:33 -05:00
Areloch
bc27125e90 Initial pass to rework and cleanup the main UI interface
Implements interface buttons that react to input type and visually display keybinds
Updates the T3D icon and splash screen
2020-05-20 17:19:52 -05:00
AzaezelX
9fef1b3cd1 uninitialized variables-gui 2020-05-11 15:03:27 -05:00
Areloch
f7b891442a Updated path handling for loose asset files for CPP, Image, Level, Material, PostFX, Shape, Terrain, TerrainMat and StateMachine assets to be more predictable in when and how they expando the loose file path into a full, useable path
Fixed loose file bindings for all associated slots in level asset, such as postFX file, decals, etc
Expanded TSStatic onInspect testcase to parse materialSlots and hook-in a specialized material field for editing/quick reference from the inspector
Adjusted expand behavior of guiTree to be more reliable
Added internal name 'stack' to inspectorGroup's stack child objects for easier access to add programatic fields
Removed redundant PreMult translucency type code
Added setting of feature so probes work when in forward/basic lit mode
Corrected indexing error in SQLiteObject class so it properly parses with the updated console API
Tweaked the FOV setting logic in GameConnection::onControlObjectChange to not be spammy
Fixed var when trying to bind the camera to the client
Added project setting field to dictate the default render mode between Forward or Deferred
Integrated MotionBlur PostFX into updated PostFX Editor paradigm and exposed the samples uniform as an editable field
Integrated DOF PostFX into updated PostFX Editor paradigm
Updated setting group name for vignette postFX
Shifted shaderCache to be in data/cache along with other cached files
Added helper function to replace strings in a file
Fixed ExampleCppObject asset to have correct loose file references
Adjusted editor default level logic so it can be modifed and then stored, as well as reset back to the original default
Fixed verve reference to root scene group
Adjusted location of a nonmodal gui profile so it loads at the correct time
Reorganized AssetBrowser loading and refresh logic so it doesn't stack multiple refresh requests back-to-back causing lag
Updated the search behavior to search not just the current address, but all child folders as well, making it far more useful
Initial work into zip and folder drag-and-drop asset importing support
Removed the import config setting for 'always display material maps' as it is redundant with the new importer context menu actions
Updated example asset type file
Ensured all asset types have proper handling for move, rename and delete actions
Fixed double-click behavior on folders in the AB
Fixed CPP asset preview
Added better logic to discern if a top-level folder belongs to a module or not in the AB directory browser
Added ability to convert a non-module top-level folder in the AB into a module
Added initial hooks for being able to generate a new Editor Tool, similar to how the AB can generate modules
Renamed CPP asset template files to have the .template so they aren't accidentally picked up by cmake
Fixed convex editor's material handling to work with AB and reference back properly
Updated AB images for folder up/down navigation buttons, and the breadcrumb divider arrow
Made PostFX Editor properly allow for input pass-through so you can still edit the level with it open
Added some additional common text gui profiles
Disabled calls to old editor settings logic in various editors to remove spam
Added callOnModules call so tools can initialize properly when the world editor is opened
Fixed logic test for visualizers
Added ability for cmake to scan tools directory for any tools that add source files
2020-02-04 01:47:28 -06:00
Areloch
66cc6fb9d1 Removes current implement of shadow caching
Also removes EC stuff as it's not ready for prime-time yet
2019-12-13 01:14:03 -06:00
Areloch
09c651c26d Corrected profile for GameObjectAsset type field button
Initial implementation of changeable TSStatic materials via material slots and drag and drop of material assets onto world editor from AB
Updated Volumetric Fog to support ShapeAsset for it's model data
Added cmake option to hide literal filename fields if the class supports asset fields for the same input
Added light viz modes to see diffuse, specular and detail lighting modes(currently just sun)
New raycast console function to return back material of hit object
Moved GameObject logic to SceneObject and started fixing up of editor behavior to allow any SceneObject to be converted into a GO, along with all supported behavior such as instance-template management and spawning GO via drag-and-drop from AB
Fixed inspector field tooltip text to be positioned in inspector footer properly again
Drag and drop of shape asset attempts to drop at raycast position now, instead of just at the camera ray position
2019-12-05 20:42:47 -06:00