Commit graph

1276 commits

Author SHA1 Message Date
JeffR 9c654d7932 - Fixes the display of the preview in the MaterialAsset fields
- Hides the special-case direct filepath field for ShapeAsset persist fields macro
- Shifts the handling of TSStatics so the shape instance will load materials on the server as well as the client. This opens gameplay options as well as allowing rebaking of meshes functionality more easily
- Expands AssetBase's isValidAsset utility function to actually check validity instead of just returning true
- Adds isValid utility function to AssetPtr
- Added new field flag that makes the field not write out to file
- Removed legacy iconBitmap field from GuiIconButtonCtrl because it was causing errors
- Fixed group filtering check of guiInspector to ignore case
- Removed unneeded isFile checks for common datablock script files in Prototyping module script
- Removed test datablocks from Prototyping module
- Removed unnecessary container control from AssetBrowser
- Adjusted preview regen logic of AssetBrowser so it doesn't trip if you're simply resizing the window
- Fixed issue where row-vs-column layout logic for AssetBrowser when resizing window was fiddly
- Added handling for when Dragging and Dropping datablock from AssetBrowser to spawn, it'll prompt if it spawns the actual object, or a spawnsphere that spawns said object. In the event of an PlayerData will also prompt if it should spawn an AIPlayer
- Added ability to take a TSStatic that uses a baked down mesh and are able to restore it to the cache prefab, or trigger and in-place rebake to refresh it if something has changed in the original contents via RMB menu on the scene tree
- Added ability to explode prefab to RMB menu on scene tree
- Added ability to convert selection to prefab or bake to mesh in RMB menu on scene tree
- Tweaked sizing of the DatablockEditorCreatePrompt window to not have cut off elements and easier to see/work with
- Added sanity check to datablock editor creation
- Fixed preview display of material in Decal Editor
- Made compositeTextureEditor use the cached preview of images
- Fixed sizing/spacing of gui selection dropdown as well as resolution dropdown of GuiEditor
- Fixes MaterialEditor to properly save the group collapse state when editing
- Adds ability to in-flow edit and create datablocks in the NavMesh Editor for the testing panel, and makes the datablock dropdown searchable
- Fixed issue where opening the ShapeEditor via the edit button on a ShapeAsset field would cause the action buttons on the top bar to not show
- Fixed error in shape editor where when exiting it was erroneously checking for a clear value of -1 rather than 0
- Removed unneeded top tabbook and tab page for main editor panel
- Fixed issue where reset button of TerrainBrush Softness Curve editor didn't actually reset
- Resized Object Builder window to not cut off elements and have enough width to show more data
- Added a TypeCommand field type to Object Builder and changed spawnscript field of SpawnSphere to use it rather than a simple text edit field
- Allow SpawnSphere in ObjectBuilder to be passed in spawn class and spawn datablock default info
- Injects button to controllable objects when Inspecting them to make it easy to toggle if you're in control of it or not
-
2025-08-25 23:35:28 -05:00
Brian Roberts 2af8bf25d5
Merge pull request #1536 from Areloch/ForestEdDirtyFix
Fixes dirty status behavior of Forest Editor
2025-08-12 12:30:53 -05:00
JeffR ff2a4daa9f Ensures that when performing certain actions like painting, erasing, cutting or pasting, it will mark the forest editor as dirty so it will save as expected 2025-08-12 00:46:52 -05:00
AzaezelX 00ee42e2a8 fix directx rendertarget crash
asset brower previews were asserting due to a cornercase rt assignment
also ditch mipgen for rts targetting a texture profile that's marked as nomip, and adjust hdr uopsampling shader to compensate for overdarks
2025-08-11 23:21:20 -05:00
Brian Roberts 0404b743f6
Merge pull request #1534 from Areloch/EscapeMenuActionmapFixes
Fix escape menu keybind not working
2025-08-11 09:19:24 -05:00
Brian Roberts 638e819f2d
Merge pull request #1533 from Azaezel/alpha41/connectionCleanups
clean up spawn chain
2025-08-11 09:19:13 -05:00
JeffR 970aba9766 Fixes design oversight where the general game menu keybind was being overridden due to order of operations issues with an offscreen canvas demoing the options menu
Fixed via several solutions to prevent issue from cropping up again.
Firstly, Adjusted behavior script-side so game menu keybind is pushed with the PlayGUI since almost every single game will use the game menu
Secondly, added logic so that the guiInputCtrl, when going to push an ActionMap(if it has one) will check if it's root canvas is active.
Thirdly, to allow guiInputCtrls to respond to a canvas becoming active, such as a GUi-on-Material surface displaying a menu and it's activated, an offscreen canvas becoming active now trips a signal that guiInputCtrl listens for.
2025-08-11 00:06:42 -05:00
AzaezelX 73abc69a82 typofix 2025-08-09 22:22:34 -05:00
AzaezelX 26ea1b60fc ensure controlling client object is removed post onClienLeaveGame so each controllable object module doesn't have to remmber to do so 2025-08-09 19:54:51 -05:00
AzaezelX 229cc9709e postSpawnComplete listener cleanup 2025-08-09 19:35:06 -05:00
AzaezelX 2be21425df clean up spawn chain
ensure among other things that we're only subscribed to the completion or failed events for a given loading stage once all of them have checked in
also for callonobjectlist, see what module::callback method in particular is being itterated through for that stages batch when debugging
2025-08-09 12:54:29 -05:00
AzaezelX 12fdab166f Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into mipwip 2025-08-06 11:51:17 -05:00
JeffR c894728644 - Fixes issue with resizing for the inspector panel of the updated MatEd where it would cut off
- Fixes refresh behavior where it'd refresh while you were doing a 'long action' like dragging a slider or range value
- Fixes issue where the scroll position would reset when modifying some fields
- Fixed issue where saving a composite texture could save it to the game root directory
- Fixed issue where opening the mat ed for the first time with an object selected could have the inspector not inspect the object
2025-08-06 01:34:59 -05:00
AzaezelX ff3188daee typofix 2025-08-05 14:50:30 -05:00
AzaezelX 06e82ddc81 preliminary gl conversion 2025-08-05 10:21:27 -05:00
AzaezelX 958e0d5127 correct for mip weighting 2025-08-04 18:16:13 -05:00
AzaezelX 65e92fc50c Merge branch 'development' into mipwip 2025-08-04 11:04:49 -05:00
Brian Roberts c7d966c0de
Merge pull request #1528 from marauder2k9-torque/Recast-Update
Recast refactor
2025-08-04 08:50:11 -05:00
AzaezelX cacd8a6064 mipwork, laregly courtesy of @mmarauder2k9-torque 2025-08-03 20:25:31 -05:00
JeffR bfc1a7e03c Removed extra wipwork script that isn't needed now 2025-08-03 12:11:44 -05:00
JeffR f3cad0d77e Converts the ad-hoc design of the Material Editor to utilize the same inspector interface as most everything else does.
- Overhauls the material editor to simplify and streamline the logic behind it since the inspector does most of the work
- Tweak a few order positions of materialdefinition fields to work better
- Sets AO, Rough and Metal channel fields to use an enum type for human readability
- Updates the MaterialPreview gui control to work with assetIds
- MatEd now supports setting of parent material to inherit from
- Creating a new material now can prompt selecting an existing material to inherit from
- Can now edit the mapTo value of a material in the matEd
- New standalone Composite Texture Editor window for convering AO, Roughness and Metalness maps in a material to an ORMMap
- Can also star the creation of a composite texture via RMB context menu in AB on an image asset
- Moved logic of CubemapEditor from MatEd to it's own stuff
- Made ImageAsset fields now be more clear when they have nothing assigned, and also have a clear button to empty the field's value so it's consistent across the board
- Reorganized the layout of the gui and image files for the MatEd to be easier to navigate
- MaterialEditor now overlays the EditorGUI instead of being forcefully embedded in it, allowing easy editing of the MatEd Gui via the Gui editor
2025-08-03 12:03:02 -05:00
marauder2k7 c2b347af7c ai test classes
protoplayer protocar
2025-08-01 19:42:02 +01:00
marauder2k7 9d98d55b1e fix tree selection 2025-07-28 10:02:52 +01:00
marauder2k7 888e72ad28 Update navEditor.tscript
typo
2025-07-28 08:30:46 +01:00
marauder2k7 b5d6601b96 add cover tool
add cover tool
some more cleanup
navmeshselecttool needs to use collideBox
duDebugDrawTorque now has the transparent blending option
2025-07-28 08:24:20 +01:00
marauder2k7 24ec55e8bc cleanup
add select tool
cleanup more from guinaveditorctrl and scripts
2025-07-27 19:32:52 +01:00
marauder2k7 3946017556 add follow logic
select follow target and toggle follow for a specific object. Only way to unfollow is to move the following bot to an arbitrary location
2025-07-27 17:25:09 +01:00
marauder2k7 715a2484a0 Update navEditor.tscript
filter out vehicle
2025-07-27 12:47:26 +01:00
marauder2k7 f730d0bf1c added spawning
Tile test tool now spawns classes and data
Test avoidance added to aicontroller and ainavigation
2025-07-27 12:43:19 +01:00
marauder2k7 9039435d12 Update navEditor.tscript
woops
2025-07-26 10:41:03 +01:00
marauder2k7 6d36e17d91 added navmesh tester tool
Added ground work for tester tool
tester tool works but needs to fill out list of acceptable datablocks and spawnclasses
navpaths now share 1 navmeshquery
AIControllerData now has a vector of area costs for different polyareas
General cleanup
2025-07-26 10:34:19 +01:00
marauder2k7 e55d3b6f82 Update NavEditorGui.gui
fix textsliderctrl not losing focus, reason for the issue was incorrect profile
2025-07-25 10:11:08 +01:00
marauder2k7 496e427d76 add radius controls
update the scripts for the offmeshcontool
radius controlled by slider ctrl
2025-07-25 09:44:49 +01:00
marauder2k7 d1771756c2 updated drawmodes and rendering
DebugDraw for recast now caches the results
We now have a drawmode dropdown selector
drawmode changes come from the gui itself no longer from console values
all recast drawmodes are supported with the exception of drawmodes that add abilities like navqueries until the nav tester tool is imlpemented.
2025-07-24 14:25:02 +01:00
marauder2k7 80473e10b5 added first tool
Added the tileTool with the ability to select tiles
Abstraction layer for navmesh tools created.
2025-07-23 15:08:29 +01:00
marauder2k7 99db60e3f3 Update assetBrowser.tscript
fix folder navigation in asset browser

fix found by Abbey
2025-07-11 12:31:27 +01:00
JeffR e7db5bb4a1 Shifts the visibility modes dropdown menu in the editor to an easily expandable menu so modules can hook into it 2025-07-10 00:22:19 -05:00
JeffR b9d9c52786 Flips the datablock order exec to always guarantee particle data is loaded ahead of emitter data when making a new module 2025-07-07 16:18:01 -05:00
marauder2k7 c6ec2fd6a1 Merge branch 'PreviewAssets_UseAsset' into SoundAsset_Refactor 2025-06-19 13:36:49 +01:00
marauder2k7 26e18cdfe8 feedback from az
scripts changed to reflect a better standard of loading offscreencanvas on client and not on the server
2025-06-18 21:17:13 +01:00
marauder2k7 6f9c4158d8 gui offscreen material test
added interaction static guioffscreencanvas to capture mouse events
added test shape
2025-06-18 17:05:35 +01:00
marauder2k7 a276ad2505 Update cursors.tscript
missed UI cursors
2025-06-18 09:29:12 +01:00
marauder2k7 51b1e3b07e update cursors
GuiCursor needs to be changed to use bitmapAsset
guiTypes.GuiCursor safety around rendering getBitmap()
2025-06-18 09:27:47 +01:00
JeffR d35a305149 Fixes issue of not being able to create GameModes or blank MaterialAssets from the Asset Browser 2025-06-17 19:08:45 -05:00
JeffR a3620c6e51 Fixes missing parentheses that is causing the script to not compile 2025-06-16 18:23:12 -05:00
Brian Roberts 0aaddcddb4
Merge pull request #1500 from marauder2k9-torque/MissionArea-RemoveTerrainDependency
remove terrain dependency from mission area
2025-06-16 16:36:24 -05:00
marauder2k7 fc9f221ac0 Prepend symbol for image files
Prepend image filenames in imageassets with "@" symbol so expand and collapse works correctly for files relative to that asset.taml file.
2025-06-16 08:33:11 +01:00
marauder2k7 50f74368b3 various fixes around preview assets and imageassets text field
Imageasset text field now displays correctly in inspector
previews now use assets again
assetBrowser hides previewCache folder
2025-06-15 22:07:12 +01:00
JeffR 8b7629d679 We don't want to be generating autosaves of the default and template levels as that can just cause weirdness. 2025-06-15 10:50:32 -05:00
marauder2k7 0a1e3f74ed remove terrain dependency from mission area
Mission Area now captures the entire level bounds based on objects in the scene
Terrain is no longer required for mission area to be set
2025-06-15 12:41:47 +01:00
AzaezelX 14c8ea28c8 offload spawnControlObject on controllable death to gameplay modules 2025-06-09 17:13:57 -05:00
JeffR 970394c42d Corrects handling for creating new folders via asset/AB workflow
Also fixes issue where Make Selected a Mesh action wasn't working properly because it lacked a ShapeAsset createNew method
2025-06-03 15:13:33 -05:00
JeffR 0e6c33f78a Fixed gui editor drag and drop behavior for image, shape, and sound
Ensure BitmapFile is given a proper default
2025-05-30 20:21:13 -05:00
JeffR 8ed3bab44c Re-added prefix handling for named texture lookups for image asset fields
Changed render-out of shape preview images to use png
Added filter against previewCache folder
2025-05-28 17:47:23 -05:00
JeffR 0fa8b97f91 Reimplements ability to utilize direct file load alongside ImageAsset fields when utilizing the ImageAsset macros
Updates Asset Browser generated preview images to not utilize full assets, but just the preview image files themselves
2025-05-27 17:12:03 -05:00
Brian Roberts a43458677a
Merge pull request #1481 from Areloch/MiscFixes_20250525
Misc Fixes and improvements including updated autosave handling
2025-05-27 08:03:08 -05:00
marauder2k7 d21bd8dab4 Update materialEditor.ed.tscript 2025-05-27 09:04:33 +01:00
JeffR d227e2e056 renames Camera_image asset to comply to caps formatting to fix assert on case-sensitive platforms. 2025-05-25 15:30:13 -05:00
JeffR bb7ee38bf4 - Reimplements autosave logic to handle levels, subscenes and terrains in a more consistent, reliable way.
- Adds entry to RMB menu in Asset Browser to restore an asset to a backup copy taken from autosaves
- Adds reparent out-of-bounds objects button to SceneGroup inspector
- Adds ability to have SubScene have a different loading bounds from the actual subscene bounds, allowing load triggering to happen ahead of the bounds of the subscene itself
- Fixes asset importer handling of animFPS field to be the correct type
- Adds onInspect handling to GameBase allowing better handling for any game class type with editor integration
- Add getAssetLooseFileCount and getAssetLooseFile to AssetManager to be able to iterate over all loose files associated to an asset
- Add standard/default preload function def to forestItem
- Fixes handling of text placement on GuiIconButtonCtrl when text is set to the right
- Adds setGlobalCenter utility function
- Adds ability to set guiInputCtrl active state
- Matched util functions for tracking if left and right mouse buttons are down to EditTSCtrl alongside the existing middle mouse
- Add empty element sanity check to appMesh loader
- Add callback for GameBase when game is created
- Add default graphics options config for steamdeck
- Fix typo in assetImportConfig default
- Filters SceneGroup utility buttons in inspector to only show for relevent class types
2025-05-25 07:40:10 -05:00
Brian Roberts 95c496f872
Merge pull request #1468 from marauder2k9-torque/CompileAll
Restore compileAll functionality
2025-05-18 10:05:13 -05:00
marauder2k7 183d8e904f Update core.tscript
returns the ability to compile all scripts and gui files
2025-05-18 16:03:48 +01:00
Brian Roberts 2a9aa3a9d5
Merge pull request #1461 from Azaezel/alpha41/CreateCompositeCleanups
cleanup strays
2025-05-18 08:29:05 -05:00
AzaezelX 26d0e427de shift prototyping UI into tools proper
was prototyped in the prototyping module. now properly resides in tools
2025-05-17 16:25:07 -05:00
AzaezelX 37f28dfbd7 cleanup strays
handle clearing composite input textures
we no longer have a material value labeled emissive.
2025-05-16 10:54:00 -05:00
JeffR 311878829c Fixes the layout of the Torque SimView window so the layout is correct and also adds in the search functionality that had been removed accidentally 2025-05-15 20:22:11 -05:00
JeffR 65c290a770 Simplified the code to the important part as we do the position math previously.
Also added the stub for the onGUIEditorDropped
2025-05-15 12:50:21 -05:00
JeffR c6213f0d12 Fixes the handling of creator entries in the asset browser 2025-05-15 11:14:53 -05:00
AzaezelX 9b2ccb8bd5 fix controller autoasignment script
the navmesh editor will try and bolt on an aicontroller initially referencing a datablock.aiControllerData for any given thing clicked on.
make sure if you saved a file with one still referenced, it wont try to use the old one
2025-05-14 10:17:55 -05:00
Brian Roberts c0d87cd3f1
Merge pull request #1454 from marauder2k9-torque/FixCompile-imageAsset
Fix after merge of image_asset
2025-05-12 19:27:30 -05:00
marauder2k7 f86497434e is named target
clear out texHandles on teardown of imageAssets.
2025-05-12 22:17:01 +01:00
marauder2k7 18b1b6d1d0 Update image.tscript 2025-05-12 21:51:16 +01:00
AzaezelX e13abbcf00 kill stray merge leftover 2025-05-12 15:51:15 -05:00
marauder2k7 e1c01cd49a Merge remote-tracking branch 'upstream/development' into imageAsset_refactor_rev3 2025-05-12 14:45:41 +01:00
AzaezelX 4ba93dafc3 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into aiSubsystem 2025-05-03 15:25:36 -05:00
Brian Roberts 798936ebd2
Merge pull request #1325 from Areloch/Standardized_AB_AssetManagement
Updates most of the handling of asset types to follow a more standardized type-registration system.
2025-04-29 13:19:50 -05:00
AzaezelX 618ddbc9ba Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into aiSubsystem
# Conflicts:
#	Engine/source/T3D/player.cpp
2025-04-28 14:28:54 -05:00
AzaezelX c6f19e5cae fix nav editor stop comand 2025-04-28 12:49:48 -05:00
AzaezelX be35c27411 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into alpha41/DamageModel
# Conflicts:
#	Engine/source/T3D/vehicles/vehicle.cpp
2025-04-28 10:53:53 -05:00
Brian Roberts 2ac15f74f2
Merge pull request #1443 from Azaezel/alpha41/controlModel
add a controlmap entry
2025-04-28 10:50:02 -05:00
AzaezelX 2ae10c7ce1 add reload status to onNewDataBlock callback
and skip calling onremove/onadd if we're not reloading
2025-04-27 19:49:13 -05:00
AzaezelX b643aa41a2 take flight floor and ceiling into account for yaw too
ditch roll compensation as it was causing more problems than it was solving
2025-04-26 21:04:06 -05:00
AzaezelX 8fa132707d fix stop button 2025-04-26 10:37:42 -05:00
AzaezelX 20976b485c Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into aiSubsystem 2025-04-26 10:11:13 -05:00
JeffR 7b7de1f10f Adjusts the handling of the disconnect call to not utilize package overrides, but instead a callOnModules invoke like most other cross-module calls.
This allows the editor to issue a disconnect call properly again.
2025-04-22 18:20:12 -05:00
AzaezelX 6200a6f1fb add a calibrateable mHeightTolerance
for players this defaults to 0.001, for wheeledvehicles, 2.0, and for flyingvehicles, 200
fix naveditor cript not looking up the object.datablock.aicontrollerdata
fix AIWheeledVehicleControllerData not binding the relevant ::resolvespeed
also the relevant ::resolvespeed now lowers the throttle post-turning
add AIFlyingVehicleControllerData
2025-04-21 14:58:11 -05:00
AzaezelX 32d95d3b8b put AIPlayer support back, and it as the default class to spawn 2025-04-20 15:29:26 -05:00
AzaezelX 1fad2c7372 AIWheeledVehicleControllerData wipwork 2025-04-17 20:01:36 -05:00
AzaezelX d0b0070ec7 set navmesh test tool bots to damage enabled and navmeshignore 2025-04-17 18:15:41 -05:00
AzaezelX 4fb92f02a3 completed list of roughly ported over scripthooks.
todo: need to figure out why followobject is only hitting the first path node. likely  amixup with goal handling
2025-04-17 01:27:08 -05:00
AzaezelX 5b2c0c7703 add a controlmap entry
for players, vehicles, and turret datablocks
add a client command to setMovemap(%object.getDatablock().controlMap)
2025-04-13 14:51:30 -05:00
AzaezelX 860ac41181 handle enabled->disabled->destroyed filters properly 2025-04-10 13:08:43 -05:00
AzaezelX 9007aa9532 basic vehicle eject onDestroyed code
leverages Parent to also call the rest of the deletions
also fix setdamagedirection for players driving vehicles instead of either on thier own
2025-04-08 19:50:47 -05:00
AzaezelX 5cf54580e6 Generic Damagemodel
included in root/data/ as a module so theres a generic folks can riff off of
additionally, includes a physcs based damage option inspector exposed augment for velicity based collisions, as well as utilities for applying damage to the object a given thing is mounted to
further. also fixes a lack of vehicles being able to use thier mvTriggerCount4 and 5 for the additional 2 mountpoints allowed
2025-04-06 16:09:14 -05:00
AzaezelX 8ef5760b5d fix make a mesh sometimes shifting position in level
leverage the fact that when we create the backup prefab, that compresses down to one selected object
from there we can get it's position and use that for the bake location
2025-04-05 16:38:27 -05:00
marauder2k7 7c4d41ee21 Merge remote-tracking branch 'upstream/development' into imageAsset_refactor_rev3 2025-04-05 15:59:02 +01:00
AzaezelX 3b2651c0ab typofix for bad %client.spawnDataBlock filtering 2025-04-02 17:40:37 -05:00
AzaezelX 8ac9da0e9f fix spawn failure reports
also force the fallbacks on failures
2025-04-01 20:48:50 -05:00
JeffR 0bf38aacf3 Made the Asset Properties inspector ctrl be a regular GuiInspector control
Standardized the image asset action menu and editing callbacks while leaving it open for modification/expansion later as needed
2025-04-01 02:10:13 -05:00
JeffR 5566f8a396 Updated handling of subscenes in assets to be it's own distinct definition to avoid parsing and detection issues, as well as fields to be handled distinctly between the types 2025-03-30 16:36:15 -05:00
JeffR c2af4e578b Merge branch 'Standardized_AB_AssetManagement' of https://github.com/Areloch/Torque3D into development 2025-03-30 15:03:43 -05:00