Commit graph

1570 commits

Author SHA1 Message Date
AzaezelX 373508f622 add a generic fallback for gamebaseObject spawning via the "add" menu that fills in a generalized datablkock dropdown popup based on class name if a specified one does not exist 2023-11-09 11:51:58 -06:00
AzaezelX fbcfe02098 clean up "Add" menubar categoes on the 3d object side via the following:
SceneObject now defaults to a category of "misc"
getCategoryOfClass now checks parent classes for what categories they hold so that variants can inherit
categories are in one of a few rough groups and subgroups depending on actual mapper needs/usages
2023-11-08 20:42:47 -06:00
Brian Roberts 105e45c56b
Merge pull request #1119 from Areloch/AssetPropEditRefreshFix
Ensures that when the asset is edited via the asset properties window the asset is refreshed in the backend systems as well
2023-10-24 18:42:53 -05:00
Brian Roberts 9ac8bfed8b
Merge pull request #1120 from Areloch/WorldEditorAddMenuAdded
Adds an Add menubar item to the World Editor menubar
2023-10-24 18:42:41 -05:00
Areloch 473e566b70 Adds a separate gui profile for the popupmenus themselves that has a lighter border color, making it easier to keep track of the layout
Fixes the C++ asset creation and management function names so the AB can create C++ assets now
removes duplicate menuBuilder script file
2023-10-24 17:53:37 -05:00
Areloch 4bf7b0d5c0 Adds an Add menubar item to the World Editor menubar that populates SceneObject classes for spawnablility based on the categories assigned to the class itself 2023-10-24 17:36:58 -05:00
Areloch c3ea12f9df Ensures that when the asset is edited via the asset properties window, the asset is refreshed in the backend systems as well 2023-10-22 11:32:54 -05:00
Areloch c2d1e9d654 Expands functionality of MenuBuilder to act as primary API for building out menus
Shifts "Help" menubar entry in world editor to use new API structure as example/test
Removes extraneous 'MainEditor'
Adds EditorCore module
Moved Menubuilder to EditorCore module
Fixes Help Menu editor settings so they properly point at modern documentation and forum URLs
Fixes handling of MenuBar so when inserting new items, ensures the menubar refreshes as would be expected
Adds remove function to menubar to remove a menu
Removes old commented console methods from menubar file
Adds checks for onMouseDown and onMouseUp for PopupMenu so items that are submenus aren't clickable like normal items
2023-10-22 00:47:29 -05:00
marauder2k7 54959f0d19
SFXEmitter play pause and stop buttons (#1115)
-Add buttons to the inspector for SFXEmitter that will play pause and stop the sfxEmitter.
NOTE: Purely effects the state of the emitter when in the editor this will not effect sfxEmitter functionality in a level.
2023-10-21 18:09:19 -05:00
Areloch 8232d0f6dd Fixes the handling of the temp editable asset definition in the asset properties inspector so it'll save sub-objects as expected 2023-10-18 11:37:27 -05:00
AzaezelX 268603f36c clean up ServerAssetValidator when closing server 2023-09-27 15:45:54 -05:00
Areloch ca767efa34 Misc formatting fixes for material and shape editors 2023-09-14 17:35:39 -05:00
Brian Roberts 626de074cc
Merge pull request #1085 from Areloch/AudioOptionsUpdateFix
Fixes the issue of changing audio settings causing the SFX re-init'ing to fail
2023-09-10 19:44:43 -05:00
Areloch bde2fc1e72 Fixes some misformatting of the simView dialogue file 2023-09-10 19:07:08 -05:00
Areloch 2a390e98e9 Fixes the issue of changing audio settings causing the SFX re-init'ing to fail 2023-09-10 18:47:27 -05:00
Areloch 33f35d35d4 Implementation of Nils' UI work for updated theming, functionality and style for the editors suite 2023-09-08 22:44:18 -05:00
Areloch 0cc974929a Re-adds the logic to set up the project's torsion file to the updated cmake generation 2023-09-08 17:08:35 -05:00
Areloch 37c85bb7ee From Nils' UI work
- Updates various images in core and UI to be more standardized to the default theme
- Updates some spacing, sizing and coloration of gui controls and profiles
2023-09-05 00:05:32 -05:00
marauder2k7 5427e941ce UnitTest
Change unit tests to run without script
runTests now just holds a purely script test example
Test Explorer in VS now works with tests
NB do not use test explorer on purely script based tests.
2023-07-27 21:02:27 +01:00
AzaezelX 2866b3afd6 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into alpha41/cmake_adjustments 2023-07-21 08:53:46 -05:00
AzaezelX a0f2f2bf06 define particles then emitters
saves a re-execution attempt
2023-07-20 08:54:52 -05:00
AzaezelX f1df1c5fba Merge branch 'development' into alpha41/cmake_adjustments 2023-07-08 01:32:45 -05:00
Areloch cb766f2878
Merge pull request #1033 from marauder2k9-torque/GuiInspectorFields
Add multi dimensional entries to inspector
2023-07-07 22:59:27 -05:00
Samuel Skiff cde584253d OpenGL fixes for HDR post effect 2023-07-07 00:51:11 -05:00
AzaezelX 0e1e36bbbb Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into alpha41/cmake_adjustments 2023-07-06 19:39:18 -05:00
marauder2k7 b0e02d6380 Merge remote-tracking branch 'upstream/development' into GuiInspectorFields 2023-07-04 07:15:27 +01:00
marauder2k7 4abd6d6bc2 Merge remote-tracking branch 'upstream/development' into GuiInspectorFields 2023-07-03 19:19:14 +01:00
AzaezelX 5e6a95866a localization utiity methods
to better adress https://github.com/TorqueGameEngines/Torque3D/issues/1036
2023-06-22 17:52:32 -05:00
AzaezelX fd758b1736 fix forest element inspector 2023-06-17 11:31:32 -05:00
marauder2k7 639ca1c03a Update profiles.ed.tscript
missing profiles
2023-06-10 17:00:09 +01:00
AzaezelX 52093cbde5 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into alpha41/cmake_adjustments 2023-06-08 13:31:34 -05:00
AzaezelX c61439c2f9 Merge branch 'cmake_adjustments' of https://github.com/Ragora/Torque3D into alpha41/cmake_adjustments
# Conflicts:
#	Engine/lib/assimp/INSTALL
#	Engine/source/console/fileSystemFunctions.cpp
#	Tools/CMake/basics.cmake
#	Tools/CMake/modules/module_testing.cmake
2023-05-27 18:18:17 -05:00
AzaezelX b1f118898e add TypeHints for inspector viewing
typehints operate as an additional label for a given class in the inspector, allowing one to specify what class-entry to use as a tag
examples: Prefab displays prefab filename
TSStatic displays the used shape asset name
SFXEmitter displays the played sound asset
GameBase derivatives display the datablock used
2023-05-23 12:35:07 -05:00
Areloch 667a0db760 Fixed getAssetBy... functions so the lookup loop is more stable and doesn't fail if null results return
Added sanity check to reflectionProbe preview shape so if the material didn't load right, it doesn't crash
Added logic to better control if module groups as a whole should fail if a module dependency in that group fails, defaulted to off
Added sanity check if a shape's material failed to load so it doesn't crash when checking accumulation rules
Added search bar to SimView control for easier use
2023-05-08 21:18:23 -05:00
bank 1099c2d80c
Fix callbacks from PopupMenu
Since 4.0 release, the TorqueScript doesn't keep local vars in stack
when calling `eval()`.
2023-04-21 20:48:01 +03:00
AtomicWalrus 75625dc679 Reverse depth & 32F buffer format
-Adds reversed depth projection model, dramatically increasing depth buffer effective resolution.
-Adds 32F depth 8U stencil format GFXFormatD32FS8X24 (following DX naming conventions). Note this is a 64-bit format, and likely not suitable for mobile platforms. Revert to GFXFormatD24S8 in renderManager.tscript for mobile & "ancient" platforms.
-Corrects alignment of texture type details array.
2023-04-14 20:13:28 -06:00
Brian Roberts c08fa359d2
Merge pull request #1009 from Azaezel/alpha41/moduleFileReload
adds a  reloadModuleFiles(%moduleGroup); command
2023-04-11 18:29:40 -05:00
AzaezelX 1b1497d439 adds a reloadModuleFiles(%moduleGroup); command
method checks last module.filename execution via getTimeStamp() the last time it was run, and compares fileModifiedTime to see if the next time that file had been altered.
called in moduleExec
2023-04-08 21:27:43 -05:00
Lukas Aldershaab 1d28ddf734 Cleanup and improve 2023-04-06 15:28:09 +02:00
Brian Roberts 81bf7fc538
Merge pull request #996 from Azaezel/alpha41/furtherFontFixes
cut control chars for font population
2023-03-18 15:03:37 -05:00
Brian Roberts 3529a31d0f
Merge pull request #997 from Areloch/ExpandedEditorToolstuffs
Adds expanded ability to create and insert specialized script-based inspector fields
2023-03-18 15:03:20 -05:00
Areloch bd07ce4f2a Adds a Prototyping datablock for a pick-up able item 2023-03-18 14:56:47 -05:00
Areloch f9f022a1b9 Added proper default setting for alwaysPromptModuleTarget editor setting
Swapped the scan checking for editor scripts with dso being preferred first
2023-03-18 14:53:42 -05:00
Areloch 2f40b843d4 Adds expanded ability to create and insert specialized script-based inspector fields
Adds logic during the editor script initialization to let game modules have embedded tools
Changed setting to force prompt for target modules when creating things like datablocks to minimize confusion about where they save to
2023-03-18 02:22:47 -05:00
AzaezelX fd02044d20 cut control chars for font population
zip referenceablilty for font files
2023-03-17 23:02:27 -05:00
AzaezelX 73e3b44e12 guiprofiles augs
guiprofiles now have additional options: borderSEL and borderERR in keeping with the fillcolor variants. fontColors now also takes an optional ERR entry on the backend, though that remains unleveraged at time of writing.
guiiconbuttonctrl now uses the expanded list in conjunction with renderFilledBorder
asset browser profiles now contain a AssetBrowserProtoProfile that type-profiles derive from for consistency in border selection, highlight, (and down the line error)  colors and border thickness while maintaining type-sepcific border color entries for general display
2023-03-16 17:21:07 -05:00
Brian Roberts d887c27d95
Merge pull request #994 from Azaezel/alpha41/fontcachegen
revise populateallfonts()
2023-03-15 18:22:44 -05:00
AzaezelX 07b3cba378 fix font cache attempting to start with char 0x0, time delay generation by one second per to mitigate ap choke 2023-03-15 18:22:14 -05:00
AzaezelX f22464b056 revise populateallfonts
rewritten to be a full itteration of all unique combos of font+size used by any currently loaded guicontrolprofile
2023-03-15 06:24:25 -05:00
AtomicWalrus 4b678a3e3b Prevent double onAdd script call for GameBase objs
Adds a check to skip this the first time onNewDataBlock is called (when the object is created) to prevent double-calling onAdd
2023-03-15 00:05:01 -06:00
AtomicWalrus e552b904ab Only project to farplane to avoid hang/crash w/ high fardist
Unproject depth (z coord on input) is normalized, 0=nearclip, 1= fardist
2023-03-13 00:42:22 -06:00
Brian Roberts bab419fd65
Merge pull request #986 from Azaezel/alpha41/assetCleanups
Alpha41/asset cleanups
2023-03-09 21:10:22 -06:00
AzaezelX ee2fc4804a pt2: name conflict resolution for files gened from an ealier rev of the autoconvert wizard 2023-03-07 16:09:11 -06:00
AzaezelX 9a5e0829ff misc asset bit cleanups
pt1) camera_shape misconversion leftovers
2023-03-07 15:15:12 -06:00
AzaezelX b72472ee05 tag the terrain material diffuse tool label with more context
the name alone doesn't make it clear that that texture is stretched over the whole map and sampled to create the _basetex.dds files
2023-03-04 16:03:05 -06:00
AtomicWalrus 50acaec19c Fix handling of filenames starting with ./
Restores a line for removing double slashes that got caught in a comment block
2023-02-26 16:00:09 -07:00
Brian Roberts a51bccf222
Merge pull request #973 from AtomicWalrus/KeyBindingScriptFixes
Key rebinding script fixes
2023-02-26 14:27:43 -06:00
Areloch 33ac4a0864 Corrects the dirt lens image reference from filepath to assetId to not have overhead having to look up the asset each frame when setting the postFX 2023-02-26 12:58:50 -06:00
AtomicWalrus 732d76d17c Key rebinding script fixes
Fixes two issues:
-Bindings after the first page were not pointing to the correct remapping entries when actually remapping. Were populating the name and button image correctly, but first item on every page pointed to first item on first page.
-Keybinds were never being saved to file if your action maps all had long-form ("human readable") names defined.
2023-02-25 03:14:30 -07:00
AtomicWalrus 13fec9bb80 Squashed commit of the following:
commit 678d0ea2357915c6502af90083f1d34b6b21b7b4
Author: AtomicWalrus <headlesschickens.inc@gmail.com>
Date:   Mon Feb 20 20:46:15 2023 -0700

    Removed some commented-out code

commit 4a149157f7a7b781e2246b1417b144625ff559cd
Author: AtomicWalrus <headlesschickens.inc@gmail.com>
Date:   Mon Feb 20 20:42:03 2023 -0700

    Remove un-used instance of the blendHardness var

commit e5dc42adef00ed371cbc89b731ae16889ba68d9a
Author: AtomicWalrus <headlesschickens.inc@gmail.com>
Date:   Mon Feb 20 18:57:51 2023 -0700

    Cleanup un-needed conditionals and other leftover code

commit dccd10010e058f00cd41f5c5c111443f9cb71721
Author: AtomicWalrus <headlesschickens.inc@gmail.com>
Date:   Mon Feb 20 18:05:31 2023 -0700

    Use validator instead of protected field (2)

commit 4cc7f1d32fcc6ab788de54bb38763283fbd5533e
Author: AtomicWalrus <headlesschickens.inc@gmail.com>
Date:   Mon Feb 20 18:03:40 2023 -0700

    Use validator instead of protected field

commit e8d7e1731e383a99e8a0539d23a3b04f9c252491
Author: AtomicWalrus <headlesschickens.inc@gmail.com>
Date:   Mon Feb 20 15:34:48 2023 -0700

    Terrain macro textures and blending hardness
2023-02-20 20:47:46 -07:00
Brian Roberts 2d946f693a
Merge pull request #965 from Azaezel/alpha41/moduleExec
callonmodules perf tweaks
2023-02-18 00:51:41 -06:00
Areloch 0e0cc0b83a Ensures that if no client camera is defined when attempting to swap into an editor camera mode, it makes one so that the normal editor camera modes can work as expected
Adds sanity check to default onNewDatablock function on the GameDatablock namespace in case the onAdd or onRemove functions aren't defined, we don't spam the console
2023-02-18 00:40:55 -06:00
AzaezelX 992a610d9f callonmodules perf tweaks
callonmodules skips out on file execution tracking
new moduleExec method retains the old functionality for module file execution filtering
2023-02-17 05:49:16 -06:00
Brian Roberts 36771d9f0b
Merge pull request #959 from Azaezel/alpha41/guiiconBorderfix
fix GuiIconButtonCtrl not taking borderThickness entires
2023-02-15 14:37:43 -06:00
AzaezelX 57037080b2 add an ignoreLighting entry to materials
by request:, flag to utterly ignore lighting in favor of the base texture
2023-02-14 20:57:44 -06:00
AzaezelX 76a7b024e8 fix GuiIconButtonCtrl not taking borderThickness entires 2023-02-14 17:32:31 -06:00
Areloch 5c52d565bc Fixes the command build for the Navmesh's Follow test tool so it doesn't create a parse error 2023-02-02 00:30:02 -06:00
AzaezelX e83028d9ae preserve glowmap operating as faux lights for probes via oversaturation
(cherry picked from commit 5a2e04838e)
2023-01-20 23:51:36 -06:00
marauder2k7 556937ec09 Initial Commit
(cherry picked from commit 05a2f8c4cf)
2023-01-20 23:51:03 -06:00
Brian Roberts 95b8028e5a
Merge pull request #943 from Azaezel/alpha403/emissiveToReciveShadows
emissive  to recivesShadows
2023-01-09 15:28:30 -06:00
AzaezelX 543eac4720 clean up lefotvers 2022-12-29 13:54:26 -06:00
AzaezelX 645f88d4af emissive to recivesShadows
now we've got a glow mask and multiplier, ditch the emissive flag in favor of a proper recivesShadows
2022-12-29 13:38:30 -06:00
AzaezelX 8821f62b0c misc fixes
utilize specialty case soundarray macros.
 slim duplicate entries in vehicle already hand;ed by rigidshape.
create a gamebasedata::onnewdatablock which calls onremove and onadd for the db for those classes like wheeledvehicle that expect mounting logic to occur
2022-12-27 21:10:15 -06:00
Areloch 00c27095f7 Establishes a common namespace for Module ScopeSet objects to make it easier to work with function calls out of module namespaces 2022-12-22 00:02:34 -06:00
Brian Roberts ad78f8686c
Merge pull request #932 from Azaezel/alpha402/LevelLoadInjection
adds a mechanism to inject additional steps into mission loading
2022-12-18 11:05:09 -06:00
Brian Roberts 7d02eea6e4
Merge pull request #938 from Areloch/OptionsAndRemappingFixes
Misc fixes for options and key remapping
2022-12-16 01:26:12 -06:00
Areloch f2585fea4d Fixes handling of click/activation events on keybind options ctrls so clicking on it at all activates it, instead of needing to click on the button image specifically
Adjust the scaling of the options rows to be a consistent 50/50 divide between the options name and the actual options values to make the layout and scaling consistent
Fixes key remapping behavior to work properly
Added SubHeader text gui profile that is centered
Made the remapping gui control be stylistically consistent to messageboxes
2022-12-16 00:35:16 -06:00
Brian Roberts d8b2ffbce0
Merge pull request #933 from Azaezel/alpha402/bloomBashing
bloom operates off of color>1.0. adjust defaults to suit
2022-12-15 02:33:12 -06:00
Brian Roberts 7c90f6e680
Merge pull request #937 from Azaezel/alpha402/rtTrouble
fix bad rtParams refrence
2022-12-15 02:32:41 -06:00
AzaezelX 4deae92c48 fix bad rtParams refrence 2022-12-14 23:07:35 -06:00
AzaezelX 29e06fc327 refactor, with the following wrappers to keep in mind:
Core_ClientServer.clearLoadStatus();
Core_ClientServer.inishMapLoad();
Core_ClientServer.FailMapLoad( %moduleName, %isFine);
Of special note: the postevent method must only take one entry, so we store off  Core_ClientServer.failedModuleName = %moduleName; priorto triggering the event so that the failing module can be reported.
2022-12-12 14:07:52 -06:00
AzaezelX 78cb2e1d80 adds a fail state method+event to the load chain
at time of writing:
    Core_ClientServer.GetEventManager().postEvent( "mapLoadFail", false );
kicks players and closes the server
    Core_ClientServer.GetEventManager().postEvent( "mapLoadFail", false );
proceeds to continue loading reguardless
2022-12-12 13:02:11 -06:00
Areloch 6f8df41c6d Remove debug messaging that isn't needed with the drag-n-drop field behavior 2022-12-08 20:18:51 -06:00
Areloch 6162c5da05 Updates the behavior and layout of the ImageAsset, MaterialAsset and ShapeAsset inspector field types to be clearer, with previews and obvious edit buttons
Also fixes drag-n-drop behavior from the AB into the image and shape fields to ensure they update as expected.
2022-12-08 20:00:55 -06:00
AzaezelX 1eb59e77e8 bloom operates off of color>1.0. adjust defaults to suit 2022-12-08 18:36:58 -06:00
AzaezelX 2e47e7d823 adds a mechanism to inject additional steps into mission loading
leverages the EventManager and ScriptMsgListener() classes to set up a third mission load stage triggered by the following flow:
function <module>::onLoadMap(%this) starts an execution chain that leads to <module>::finishMapLoad()
each  <module>::finishMapLoad() MUST contain the line
     Core_ClientServer.GetEventManager().postEvent( "mapLoadComplete" );
once all have called back that they have finished thier tasks, players finish loading into a hosted mission
2022-12-08 14:34:50 -06:00
Areloch 44c894d335 Adds utility function to clean up and standardize the remapping handling for keybinds
Adds sanity check so if no remappable binds are found for an actionMap, it isn't listed in the controls menu
Updates ExampleModule's keybinds to use new utility function
2022-12-06 00:16:13 -06:00
Brian Roberts a304198abb
Merge pull request #930 from Azaezel/alpha402/fixORMChanMap
fix orm vs single channel mapping
2022-12-03 08:55:43 -06:00
AzaezelX 4c50270e25 fix orm vs single channel mapping 2022-12-03 08:54:30 -06:00
Areloch 48680558c7 Fixes the movemap toggle in the options menu 2022-12-03 00:57:03 -06:00
Brian Roberts 120691abee
Merge pull request #923 from Azaezel/alpha402/puppies
adds wetness
2022-11-29 12:33:21 -06:00
AzaezelX af1a93f2e1 bloom fix fallback
-in case a better solution doesn't come along by tuesday
2022-11-27 23:01:36 -06:00
AzaezelX d23ee397e6 adds wetness
cliffsnotes:
   $Core::WetnessTexture = "core/rendering/images/wetMap.png"; //for the influence degree map
probes/skylight have a new canDamp boolean, set to off for probes, on for skylight by default.
:levelinfo has a dampness multiplier (0-1)
kicked up numTextures from 8 to 16 for shaderdata and postfx since that hit the 8 texture-in prior limit, and we've already adopted apis that can handle the higher count
2022-11-21 21:12:23 -06:00
Brian Roberts d40351414f
Merge pull request #920 from Azaezel/alpha402/ramblinRoad
add MeshRoadEditorGui::onRoadCreation callback
2022-11-17 13:48:00 -06:00
Brian Roberts aa7fc26c39
Merge pull request #921 from Azaezel/alpha402/asAboveSoBelow
assign default skybox and groundplane values on creation
2022-11-17 13:47:50 -06:00
AzaezelX d92bc693d3 assign default skybox and groundplane values on creation 2022-11-14 22:06:19 -06:00
AzaezelX 15d5aafadb add MeshRoadEditorGui::onRoadCreation callback
use it, and the RoadEditorGui::onRoadCreation one to assign default road matrials on initial creation
2022-11-14 21:30:13 -06:00
AzaezelX 22f9d54c0b from @GoldenThumbs: HDR editor bloom fix 2022-11-08 10:29:48 -06:00
Brian Roberts 84f1e673fc
Merge pull request #915 from Azaezel/alpha402/sortSorting
correct the moduleDependencySort callback
2022-10-31 19:10:58 -05:00
AzaezelX 9f5824ca3e use default (rue) case for findModules in callonmodules 2022-10-30 14:07:33 -05:00