Commit graph

125 commits

Author SHA1 Message Date
Lukas Joergensen 4eabbd5bb0 GuiFilterCtrl: Rename identity function to resetFiltering to avoid clash
The field "identity" previously clashed with the method "identity"
2020-11-15 21:30:45 +01: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
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
AzaezelX 6b2db37f8a followup to array acess breaches: waterobject and guiparticlegraphctrl need to check >=, not just > 2020-07-27 10:45:45 -05:00
Areloch 5b4af68793 Adds ability to get InspectorGroup index, as well as inserting a new inspectorGroup at a specific position in the list 2020-07-13 18:58:00 -05:00
Areloch a71f5cfd9d Missed header changes 2020-07-11 15:58:39 -05:00
Areloch a5404ad216 Adds ability to utilize bitmap arrays and set entry indexes for popup menus
Also enables the ability to fetch the text of a popup menu item
2020-07-11 15:57:13 -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 b1e3706dd6 Removed unneeded deletion of asset definition in various asset deconstructors - was causing crash on shutdown when a new asset was made
Added ability to check if popup menu is currently Visible
Removed unwanted path debug/testing code from tsShapeConstructor
Made a number of default postFX's names more consistent and set up asset definitions for them. Began adding hooks to PostFX editor as well
Refactored Asset Import window with new layout, revamped import behavior to work with new layout concept and easier editing of import 'session'
Updated Asset Browser to utilize a common 'DirectoryHandler' object to standardize/centralize all folder navigation behavior for the asset tool ecosystem
Added new window to select path for assets
Refactored import config editor to be easier to utilize
Added field in editor settings to edit import configs without needing to first try and import assets
Updated a number of asset types' scripts to handle address-based system
Began standardizing a number of 'actions' for the asset browser, including drag-n-drop, renaming, deleting, moving, etc.
Made refreshing behavior of AB more consistent
When making new in AB folder, it will automatically navigate to the new folder
When making a new folder, prompts the folder name via new popup window
Refactored PostFX editor to use newer layout with side list for easier use
2019-12-03 00:09:18 -06:00
Areloch b2fcd5e7fb WIP corrections for drag-n-drop handling for cubemap and shape asset types
Added ability to override radio button behavior when selecting items in popup menus
Added ability to turn on rotation snapping as a setting, with SHIFT just inverting the rot snap mode
Implemented proper asset type filtering, complete with multiple type selection, and listing of active filters in AB footer. Selectable via visibility popup Menu
Moved asset preview button generation from code to template GUI file
added ability to move asset with drag-n-drop(Image asset only so far)
New AB folder icon
Properly link image asset fields to material asset if 'AlwaysPresentImageMaps' config setting is active
2019-11-24 06:52:34 -06:00
Areloch 7b5e1c3c58 @rextimmy fix for GuiWindowCtrl so they snap correctly again
Added asset loose files for editor and bake level files on level asset
Correct return of ConsoleGetType on TypeShapeAssetPtr
Adds shape asset support to TSStatic, now will support either raw shape file or ShapeAsset
Adds onInspect function behavior, so when object is inspected, it can do special editor behavior
Adds callback for when editTSCtrl is resized
Added editor setting to force the world editor sidebar(scene tree and inspector windows) to resize to fit to the right side of the screen automatically instead of float
If assimp loader encounters error, it's output into the console log
Makes root Data item in folder hierarchy tree in Asset Browser able to support right mouse popup menu action
Material and Shape assets now correctly base on current browsed folder
Material asset generation now more properly fills out common maps, as well as handles skipped dependencies better
More theme corrections
Updated TestGrid images asset defs to have proper loose file handling
2019-11-18 03:30:04 -06:00
Areloch e7bf49e801 Moved unneeded modules to Templates/Modules
Added templated getObjectsByClass to Scene for easier engine-side polling of objects, including nested checks for subscenes
Proper init'ing of mGamemodeName in LevelAsset, as well as proper fieldType for mIsSubLevel
D3D11 added logic to handle scaling down of textures in cubemap arrays for lower texture resolution preferences
Added ability to collapse groups programmatically to GuiVariableInspector
Upped PSSM shadowmap max size to 4096
Caught GL deferred lighting/probes up to D3D11
Temporarily disabled forward lighting/probes on GL materials until conversion finished
Upped smMaxInstancingVerts to 2000 from 200 to support slightly more detailed meshes being instanced
Reordered project settings so they load ahead of core modules, so that core modules can actually use project settings
Established current preset file for PostFXManager to use for reverting
WIP logic for forcing probes to update as part of level lighting load step in loading process
Streamlined PostFXManager code, removing unnecessary/redundant files
Coverted HDR, Lightrays and SSAO and ExamplePostEffect to use new PostFX Manager/Editor paradigm
PostFX manager now enacts callbacks so that postFXs' can process their own settings as well as provide editor fields
Changed PostFX editor to work with new callbacks via using VariableInspector
Updated PostEffectAsset's template file so new PostFX's will now automatically register with the PostFXManager and have the needed new callbacks for integration
Made HDR on by default, removed enable field from editing
Made probe bake resolution a project setting
Updated many GL postFX shaders to have proper case for PostFx.glsl
Example module now loads ExampleGUI and ExamplePostEffect during init'ing
Removed unneeded autoload definitions from ExampleModule's module file
Fixed Graphics Adapter settings field to properly display as well as apply setting
Updated many referenced profiles in tools folder to use the Tools specific gui profiles to make theming more consistent
Fixed coloration of tools button bitmap to make theming more consistent
Updated a few theme settings for improved visibility with theme, particularly selected/highlighted text
Moved AssetBrowser field types to separated folder/files
Updated new module creation to properly utilize template file instead of overriding it with a programmatic script generation.
Removed unneded default autoload definitions from new modules
Added WIP for editing Module/Asset dependencies
Updated the PostEffectAsset to properly generate glsl and hlsl files from templates
Updated module editor window to display only necessary fields
Added WIP of TerrainAsset
Added shaderCache gitignore file so folder isn't lost
2019-09-29 06:44:43 -05:00
Areloch 7c3bd49615 Adds ability to adjust padding to guiTextListCtrl's rows
ForcedMaterialMeshMgr tweaked to allow proper setting of override material
Ongoing WIP of update/fixing of options menus
WIP of expanded visualizers, including material complexity viz
Adds no-pie flag when compiling on linux with non-clang compilers
2019-09-06 00:00:17 -05:00
Areloch d720eb8ccd Makes the graphics menu in the stock UI mostly functional again
Adds sanity check to editing of gameasset script action in asset browser
Updates module template file
Updates visualizers
Fixes checking of popup menu items
Adds stub for TerrainMaterialAsset
2019-08-29 00:22:33 -05:00
Areloch ab9fc302fc Added D3D error code interpreter
Added sanity check for findMatch
Finished most of asset importer logic to utilize settings system
Cleaned up code for finding associated files
Added General importer settings category and integrated logic for those settings fields
Updated logic in variableGroup to support callbacks in custom fields
Updated logic in variableInspector to better handle callbacks, as well as being able to manually update when manipulating fields
Updated scripts to utilize project settings values for playGUI and mainMenuGUI names
Improved module-oriented loading of materials
Added util function for populating custom fonts
2019-08-12 01:04:17 -05:00
Areloch e5c12f4aab Reduce console spam from probe manager when not in debug
Added ability to activate height override on inspector fields from script
Further refinements of theme usage as well as editor settings
2019-06-17 23:48:20 -05:00
Areloch 07b28cb29a GFX card profile config file logging moved to debug only
WIP mode of guiSliderCtrl to be a filled rectangle instead of a textured UI
Fixed bug with guiTextEditCtrl losing focus updating history passing malformed strings
Updated WIP options menu
Editor/Project settings WIP
Updated editor theme to be consistent, and feed off the editor settings
Updated popup menus to reference renamed profiles
Added more in-progress modules for examples/stress testing
2019-06-17 02:30:45 -05:00
Areloch 17cec11b97 Added refactor of Editor Settings window
Various fixes for asset handling.
WIP of crash tracking
2019-06-03 02:47:30 -05:00
Areloch 6daf0c8d34 Merge pull request #2338 from Areloch/MoreMenubarFixes
Fixes some outstanding menubar problems.
2019-03-31 12:39:31 -05:00
Areloch 67060e5c38 Merge pull request #2340 from Areloch/popupMenuBGFix
Makes the popups correctly operate anywhere in the space of the canvas
2019-03-31 12:36:15 -05:00
Areloch 7d62d6249f Makes the popups correctly operate anywhere in the space of the canvas
Also corrects a notional issue where if a poup extends past the bottom of the screen, it'll instead appear above the mouse so it doesn't ever get cut off.
2019-03-17 02:33:54 -05:00
Areloch 3a93a30ced Fixes a crash that comes from toggling the editors on and off, then clicking a menubar item
Fixes the menubar not resizing with the Window
Fixes the Editors Menubar item not being repopulated if the editor was closed/reopened
Fixes the Physics menubar item not appearing if the editor was closed/reopened
Fixes issue where findMenu could fail if the StringTableEntry happened to trip against a different capitalization.
2019-03-16 02:38:40 -05:00
Areloch 4e31deb94d Allows special inspectorFields to override the height they use in the rollouts 2019-02-23 16:08:47 -06:00
suncaller 8a7c09c8fe Clean up redundant variables 2019-02-06 15:03:06 -05:00
Azaezel a7fc407284 corrects a pair of conversions. one object oriented, one not. 2018-12-12 14:52:14 -06:00
Areloch 6cf0c9e360 Merge branch 'development' into EngineAPI-Refactor 2018-12-09 14:48:50 -06:00
Areloch 54f1d8c18e Merge pull request #2250 from Areloch/popupMenuFixesPR
Fixes various incorrect popup menu behaviors.
2018-09-05 13:06:26 -05:00
Ratfish Studios fea3724f4e Rearranges the right-mouse click popup menus for the world editor and gui editors to a) be organized more logically and b) be more flexible.
This also fixes some insecure behavior relying on %this value eval'ing, which has also been modified to be better.

Also fixes up some old calls for getting menubar menus by internal name, which is no longer supported, instead using the findMenu function call.
2018-05-08 00:30:15 -05:00
Azaezel 13334b4d5c Merge branch 'development' of https://github.com/GarageGames/Torque3D into memberMess
# Conflicts:
#	Engine/source/sfx/sfxSystem.cpp
2018-04-23 10:08:14 -05:00
Lukas Joergensen 7d91d0a577 Eliminate ConsoleFunction and ConsoleMethod, replace with DefineEngineStringlyVariadic 2018-04-20 22:09:58 +02:00
Lukas Joergensen 0fff33869c Eliminate unnecessary uses of ConsoleMethod 2018-04-17 22:36:32 +02:00
Lukas Joergensen 76908eae3c Eliminate DefineConsoleMethod 2018-04-17 21:01:50 +02:00
Areloch bc1b506205 Merge pull request #2146 from Azaezel/specializationShenanigans
changes find, swap, for_each, and delete_pointer from global to t3d namespace
2018-04-17 03:02:03 -05:00
Azaezel cbce2ee805 Merge branch 'development' of https://github.com/GarageGames/Torque3D into memberMess
# Conflicts:
#	Engine/source/console/consoleFunctions.cpp
2018-03-28 15:42:34 -05:00
Azaezel 36c3a4d371 (crashfix) clean up shadowvar followup. 2018-03-16 16:21:53 -05:00
Azaezel f0c29172ca gui shadowvar cleanups 2018-03-15 14:50:54 -05:00
Azaezel a0eebd01c8 refactor to avoid shadowvars 2018-03-15 00:52:03 -05:00
Azaezel 1c62080f7f cleaned up member::radius 2018-03-13 15:31:00 -05:00
Azaezel c98f257cae more compiler compliant cleanups plus a full set of tsMesh::foo to tsmesh::mFoo class var conversions for consistency 2018-03-13 14:53:23 -05:00
Azaezel 654fc29dc2 bounds to mBounds conflict avoidance 2018-03-13 01:05:15 -05:00
Azaezel 8ec82013ca corrects PopupMenu::checkItem() not checking the item. also prepends m to member variables for the MenuItem class to correct a few more locals hiding classvar reports. 2018-03-12 14:30:49 -05:00
Glenn Smith e6e97e660c Missed a couple +1s here and there 2018-03-07 00:44:46 -05:00
Glenn Smith 79c34c68db Use strncpy instead of strcpy because again, buffer overflows 2018-03-06 02:35:33 -05:00
Glenn Smith 7769da9434 Use strncat instead of strcat to prevent some buffer overflows 2018-03-06 00:48:44 -05:00
Areloch cd5b0a0612 Merge pull request #2198 from Areloch/MenuBarMoreFixup
Fixes up some menubar issues.
2018-02-13 14:55:49 -06:00
Areloch 40fff8ef50 Stabilizes the add/remove behavior of menubars by also tracking the modeless background control the menubars use for proper cleanup as well.
Also fixes an issue where the findMenu call wasn't properly translating the incoming string to StringTableEntry.
2018-02-08 16:00:11 -06:00
Areloch abe4370c8a Some code cleanup, tweak and optimizations for assets, entities and components. 2018-02-04 16:21:07 -06:00