Commit graph

5129 commits

Author SHA1 Message Date
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 ab83ecb591 make sure tilesize is in world units
tilesize now stays the same size as the world units provided
2025-07-23 05:55:05 +01:00
marauder2k7 d4d552e8e0 recast update
Added chunkytrimesh - this class splits up the geometry the navmesh is interested in into kdtree for fast traversal, makes the actual navmesh generation work with smaller chunks.

Now only 1 RecastPolylist per navmesh this can be saved out in a future commit.

This is a history commit, all functionality works same as it did before but it matches recasts recommended setup more closely. Future additions may break backwards compatibility.
2025-07-22 14:39:36 +01:00
marauder2k7 26ebdd093b test commit to fix debug draw
pass all draws through duDebugDraw instead of calling our class directly.
2025-07-20 16:10:27 +01:00
AzaezelX 64da8ab168 non aiturret fixes
bump maxheading up to it's proper 180 degree max
bump netpipe for the turret rotations to the *controlling client* but not others to 11 bits per axis
leave the to-others fidelity slim
2025-07-19 11:45:18 -05:00
AzaezelX 03c99f845b fix crash with unclean exit
for player, if we're unmounting because we're being deleted, don't bother animating
for tsthreads in general, not much point in removing the threadlist, then checking if it's scaled
2025-07-14 08:08:22 -05:00
Brian Roberts 214b72ca7d
Merge pull request #1519 from Azaezel/alpha41/openglCleanups
misc opengl cleanups
2025-07-09 18:57:40 -05:00
AzaezelX 192f997f26 proper report formulation 2025-07-08 20:35:32 -05:00
AzaezelX 280ce94cfc misc opengl cleanups
allow GFXGLDevice::setVertexStream to use all 4 streams
clean out volatilebuffers at GFXGLDevice::endSceneInternal().
2025-07-08 14:14:16 -05:00
AzaezelX 4eae51992e shapes are optional for projectiles. not mandatory.
and stop yelling in the console mid way through loading.
2025-07-07 16:49:56 -05:00
Brian Roberts 5dbcaf55c7
Merge pull request #1516 from Azaezel/alpha41/preLoad2
sometimes you won't have debris
2025-07-06 22:50:10 -05:00
AzaezelX 0c3e0b1c05 sometimes you won't have debris 2025-07-06 22:49:52 -05:00
Brian Roberts 5c9e34a90c
Merge pull request #1515 from Azaezel/alpha41/preLoad
try to load shapes during preload
2025-07-06 22:35:33 -05:00
AzaezelX e8ccb3443a try to load shapes during preload
it's half the point of the protocol
2025-07-06 19:51:55 -05:00
AzaezelX 1b6a0a5f74 further filtering for updatePlayerAttachment
*just* check pathshape/staticshape/terrain for determining if we are attaching/detaching from a pathshape
and don't bother if we're not enabled and not falling
2025-07-05 18:01:01 -05:00
AzaezelX 0f2e4b80e6 add grace hieght for pathshape snapping eval
leverage minFaceDistance plus current hieght to try and ensure stepping down into a pathshape/tsstatic within the 0.1 ot -1.0 detection range range doesn't snap you through another one.
2025-07-03 16:57:00 -05:00
Brian Roberts c1925d9536
Merge pull request #1509 from marauder2k9-torque/ShaderGen-FeatureArgs-Langelement-unification
Shader gen feature args langelement unification
2025-06-29 07:34:26 -05:00
marauder2k7 050d704e77 requirements for windDeformation unified featuer 2025-06-23 02:18:42 +01:00
marauder2k7 ac909e26bd Update featureSet.cpp 2025-06-23 02:18:40 +01:00
marauder2k7 8c7ddb7cf1 Ground work for node editor
Added ability to shader features and shaderGen to create multiple instances of the same feature with the option of calling a static creation function that can take arguments in the form of a struct.

FEATUREMGR now has createFeature to take advantage of this.

The node editor requires this ability as the same node could be used multiple times with different arguments so in its update function we will be calling

```FEATUREMGR->registerFeature(feature_type, (optional default constructor), createFunction);```

then adding it to the feature set with the required arguments to build the shader feature.
```FeatureSet->add(feature_type, index, ParameterStruct);```
2025-06-23 02:18:39 +01:00
Brian Roberts 51b953a931
Merge pull request #1508 from Azaezel/alpha41/aikeybindFix
expand setMoveTrigger to take true or false
2025-06-22 17:59:32 -05:00
AzaezelX 63e3632d00 expand setMoveTrigger to take true or false
have aiplayer actually use it
give a copy to AIController
2025-06-22 16:04:13 -05:00
Brian Roberts f1cf4147a8
Merge pull request #1506 from marauder2k9-torque/SoundAsset_Refactor
Shape Asset Refactor and Image Asset fixes and tweaks
2025-06-21 21:09:28 -05:00
marauder2k7 ff442f5230 keep same naming 2025-06-20 17:13:20 +01:00
marauder2k7 fd7342668c streamline shape asset
shape asset now has the same import "@" as image asset
cut out extra filename parameters that arent needed
refresh hopefully fixed
2025-06-20 15:58:20 +01:00
AzaezelX 17187f4fc2 reduce tsstatic netload
don't bother transmitting animation configs if we're either not animating, or unable to do so
2025-06-19 22:42:31 -05:00
marauder2k7 542563feaf Update ShapeAsset.h
fix linux and mac being pedantic about NULL = 0
2025-06-19 17:32:09 +01:00
marauder2k7 9208cdfcd6 tsforestitem and forestitem 2025-06-19 17:24:43 +01:00
marauder2k7 08f52cfa16 add extra checks
add extra checks around an empty stringtableentry for assets and bitmap controls
2025-06-19 16:58:44 +01:00
marauder2k7 1949ff9d7b projectile 2025-06-19 16:29:59 +01:00
marauder2k7 51f4255c14 explosion and guiobjectview 2025-06-19 16:27:16 +01:00
marauder2k7 2b973abdcf physics shape and physics debris 2025-06-19 14:32:32 +01:00
marauder2k7 5d641929cf player and ground cover 2025-06-19 14:10:00 +01:00
marauder2k7 c6ec2fd6a1 Merge branch 'PreviewAssets_UseAsset' into SoundAsset_Refactor 2025-06-19 13:36:49 +01:00
marauder2k7 ca1604170d initial commit
change the macro to use the refactor (exact same structure as the imageasset macro)
2025-06-19 13:34:07 +01:00
marauder2k7 45f1447d2b Update ImageAsset.h
add check for if _in matches the filename that is already set for image asset, this stops the set being called twice when loading the same image asset
2025-06-19 07:53:32 +01:00
marauder2k7 1918ecfdd6 feedback from az
fixes for interaction from az
2025-06-18 20:44:37 +01:00
marauder2k7 b5cd9d0c73 Update guiCrossHairHud.cpp 2025-06-18 17:08:40 +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 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
marauder2k7 794a8c900d Update ImageAsset.cpp
add change notification on intialize asset use this callback to update information about the image on refresh. Remove notification when the asset is removed and when the imagefile changes
2025-06-17 16:49:07 +01:00
marauder2k7 48b512ef73 move population of image metadata to onAssetRefresh 2025-06-17 15:06:07 +01:00
marauder2k7 3d77b59b71 Update assetImporter.cpp
refresh asset so image asset can write out its image metadata
2025-06-17 14:57:18 +01:00
marauder2k7 67f217ada1 Update assetImporter.cpp
asset importing for images shouldnt execute a file copy, original file path is enough as it is relative to exe
2025-06-17 12:20:47 +01: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
marauder2k7 47bff2f0eb Update guiMissionArea.cpp
simplify logic around skipping objects that push the mLevelBounds outside F32_MAX
2025-06-15 17:15:59 +01:00
Brian Roberts dfbfe094bb
Merge pull request #1497 from Azaezel/alpha41/spamSuppression
don't trace setShaderConsts or onNewMessage callbacks
2025-06-15 10:52:45 -05:00
marauder2k7 4fc182444e Update guiMissionArea.cpp
set a minimum size for the level bounds, this stops the mouse drag issue until it is sorted out properly
2025-06-15 16:23:57 +01: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
JeffR 4be2f05bb1 Disables the behavior for building and exporting polyLists for SceneGroups as you can just do so on the individual items, and it can cause erroneous behavior like looping if triggered improperly. 2025-06-11 00:30:36 -05:00
AzaezelX 83a3ef877e don't trace setShaderConsts or onNewMessage callbacks
they spam up the console to uselessness when using the trace(true/false) command
2025-06-09 13:35:32 -05:00
AzaezelX 2e15018ad3 minor followup to #1494
we do try and avoid auto for places that aren't mutatable patterns so folks can scan what's going on under the hood
2025-06-06 11:00:12 -05:00
Brian Roberts ccd30a19cc
Merge pull request #1495 from Azaezel/alpha41/safeSafties
add extra safeties to safe_delete macros
2025-06-06 10:56:46 -05:00
AzaezelX aebd497fd6 make sure device and texture manager are still around when making a deletion request of them 2025-06-06 10:56:02 -05:00
AzaezelX 2c15877d5a add extra safeties to safe_delete macros 2025-06-06 10:45:05 -05:00
Nick-IronTower 01ffdae89a GFXStateBlockDesc memory leak fix. 2025-06-06 14:52:20 +03:00
AzaezelX a3d2d13d39 remove stray methods.
revisit loadedstate shortcutting of already loaded textures
2025-06-01 12:41:31 -05:00
Brian Roberts f709130e72
Merge pull request #1489 from Areloch/DirectImageFileOption
Direct image file option
2025-05-31 07:18:24 -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
Brian Roberts 4ccbc37322
Merge pull request #1491 from Azaezel/alpha41/shaderConstConkOut
remove shaderconst timer clamp
2025-05-30 20:10:07 -05:00
AzaezelX 1e2b6c4e35 remove shaderconst timer clamp
looks ike the postfx shaderconst update cycle rate limiter is the source of our flickering
2025-05-30 20:01:30 -05:00
JeffR 5397c168bc Merge branch 'DirectImageFileOption' of https://github.com/Areloch/Torque3D into development 2025-05-30 00:08:29 -05:00
marauder2k7 ea751eb62f Update bitmapSTB.cpp 2025-05-30 04:00:45 +01:00
JeffR 41957cb98f Compares path and filename, excludes png in case the user swapped a dds for a png or the like 2025-05-29 16:06:04 -05:00
JeffR 029427d51c Fixes imageAsset lookup so if we're looking up a full filename path, we compare the actual full paths 2025-05-28 23:23:08 -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
AzaezelX 8bd145d54f use of get<some name> methods that already return nulls/false when attempting to load
in contexts where we would want to try first (pt2)
2025-05-28 17:45:02 -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
AzaezelX 40974dd14b use of get<some name> methods that already return nulls/false when attempting to load
in contexts where we would want to try first
2025-05-27 17:07:08 -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
JeffR 51a43d5be1 Fixed bad return type for AssetManager::getAssetLooseFile 2025-05-26 22:18:14 -05:00
AzaezelX 2f19db7607 overflow avoidance 2025-05-26 15:17:01 -05:00
AzaezelX 76b33ab57b unintialized variable cleanups 2025-05-26 15:16:48 -05:00
AzaezelX 6596865d92 overflow avoidance 2025-05-26 15:16:18 -05:00
AzaezelX ddac695252 unintialized variable cleanups 2025-05-26 14:20:22 -05:00
AzaezelX ba09744c6b volfog destructor safties 2025-05-25 23:04:10 -05:00
AzaezelX 7a97ad6099 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into alpha41/sfxShanked
# Conflicts:
#	Engine/source/T3D/sfx/sfxEmitter.cpp
2025-05-25 22:09:53 -05:00
AzaezelX 9fe13d6a32 sfxEmitter destrctor safties
be more paranoid
2025-05-25 21:56:56 -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
AzaezelX 0c67f3642b clean up sfxemitter 2025-05-21 21:14:40 -05:00
AzaezelX 73af7f6c3e third case 2025-05-21 11:06:50 -05:00
AzaezelX 38de3d866c fix a couple cases of old direct references
use getBitmap(), not mBitmap
2025-05-21 11:02:31 -05:00
marauder2k7 f40c20d2f4 Update gfxGLShader.cpp
restore assertfatal if the bindPoint ==-1 as these require a location, ubo uniforms location returns -1
2025-05-21 07:16:45 +01:00
marauder2k7 ab36fe24ec fixes for opengl uniform buffer loading
This fix allows uniform buffers to be used with glsl shaders.

Small issue with uniform buffers not being initialized correctly.
2025-05-21 07:10:54 +01:00
AzaezelX c7275300fb dial back a case of stringtable over use 2025-05-20 14:01:03 -05:00
marauder2k7 78667ca43f Update ScriptTest.cpp
use case insensitive tests when interacting with script
2025-05-20 16:14:53 +01:00
marauder2k7 4a1019619f Update platformMemory.cpp
undo experimental changes to platformMemory.cpp
2025-05-20 10:11:25 +01:00
marauder2k7 700bf32a2a Update minimum requirements and libs
This updates the minimum required cmake version and the libs that have updates for this.
Ogg updated to master as of 20052025
Libsndfile updated to master as of 20052025
Opus minimum cmake version changed
vorbis minimum cmake version changed
2025-05-20 10:09:42 +01:00
Brian Roberts 8756e35853
Merge pull request #1472 from Azaezel/alpha41/leakleak
scrub memlogs
2025-05-19 20:32:14 -05:00
AzaezelX ab5fcc00e9 scrub memlogs
ensures you can run leaktrace multiple times without a restart without accumulations
2025-05-19 20:32:00 -05:00
Brian Roberts cfdb8fe959
Merge pull request #1467 from Azaezel/alpha41/PostfxProdding
postfx throttling
2025-05-19 20:24:38 -05:00
AzaezelX 5ab2419826 more stringtable leveraging 2025-05-19 12:09:21 -05:00
Brian Roberts 874229047c
Merge pull request #1470 from Azaezel/alpha41/learkReportClarity
mem report cleanups
2025-05-19 07:35:28 -05:00
AzaezelX aeea20f078 mem report cleanups
ditch reporting ram adresses. it complicates comparisons
remove console filtering
spool report std::atexit
sort report by magnitude, then frequency
2025-05-19 05:59:36 -05:00
AzaezelX 391de9f62c use the stringtable to hold generated docstrings
among other things it removes doubles
2025-05-18 13:34:08 -05:00
AzaezelX 091b75930b postfx throttling
don't execute shadercont updates via callback more than the standard tick
don't execute preprocess more than once, unless explicitly reloading
2025-05-18 09:59:12 -05:00
Brian Roberts 2a9aa3a9d5
Merge pull request #1461 from Azaezel/alpha41/CreateCompositeCleanups
cleanup strays
2025-05-18 08:29:05 -05:00
marauder2k7 ecd8102688 Update consoleFunctions.cpp
add isPlayerBuild functon to see if this is a playback only build of torque.
2025-05-18 13:23:45 +01:00
JeffR cac068d2c5 Adds the necessary ifdef flags to re-enable the ability to build with tools disabled 2025-05-17 18:41:15 -05:00
Brian Roberts 557101b338
Merge pull request #1463 from Azaezel/alpha41/rewdebugLeaktracking
allow relwdebug leak tracing
2025-05-17 13:59:12 -05:00
AzaezelX c160401c72 allow relwdebug leak tracing
use TORQUE_ENABLE_ASSERTS, not just DEBUG for a filter
2025-05-17 13:58:48 -05:00
marauder2k7 f24e9f5195 Update mathTypes.cpp
TransformF can take 7 or 3 values so on false just set position for now. We may need to change ParseProperty to return a count for such cases as this and be able to tell whether its just position, rotation or both being set
2025-05-16 17:27:34 +01: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
marauder2k7 f64c7ce7aa Update materialDefinition.h
the values holding the channel selection were set to floats when they were expecting integer values.
2025-05-16 16:16:41 +01:00
marauder2k7 a9240b87f4 Update assetImporter.cpp
image asset importer was doubling up on the filepath.
2025-05-16 08:14:25 +01:00
marauder2k7 6870a040e2 purge assets and clear image
image asset was missing a clear, passing a null value should clear the image asset and set it to null on materials.
2025-05-14 00:57:38 +01:00
marauder2k7 aa3f07e339 update macro
Added get##name##File to macro that will check to make sure the asset is not null before getting the image file.
2025-05-14 00:30:47 +01:00
marauder2k7 a52069bbc5 processed material null ref
processedMaterial was not checking to see if each asset was null before getting the image filename inside the call to _createCompositeTexture
2025-05-13 23:46:54 +01:00
marauder2k7 cbde207fdd Update assetManager.cpp
fix crash on exit
2025-05-12 22:58:52 +01:00
marauder2k7 f86497434e is named target
clear out texHandles on teardown of imageAssets.
2025-05-12 22:17:01 +01:00
Brian Roberts 6cda97867c
Merge pull request #1452 from marauder2k9-torque/MEMORY-MANAGER-REFACTOR
Memory Manager Refactor
2025-05-12 15:31:06 -05:00
marauder2k7 fb1840ab1d Update console.h 2025-05-12 21:17:26 +01:00
marauder2k7 2207ae4a65 Update console.h 2025-05-12 16:35:08 +01:00
marauder2k7 e1c01cd49a Merge remote-tracking branch 'upstream/development' into imageAsset_refactor_rev3 2025-05-12 14:45:41 +01:00
marauder2k7 41c3f610be remove free from scripting lanugage
was causing issues with foreach
2025-05-12 12:50:49 +01:00
marauder2k7 b54ed77f7a Update console.h 2025-05-12 11:50:57 +01:00
marauder2k7 e5e3efb30c Update platformMemory.h 2025-05-12 11:50:56 +01:00
marauder2k7 f3046a9c3e Update ScriptTest.cpp 2025-05-12 11:50:54 +01:00
marauder2k7 c6e0eade04 az changes 2025-05-12 11:50:53 +01:00
marauder2k7 1ddc7219a5 Update console.h 2025-05-12 11:50:52 +01:00
marauder2k7 954c3b03db Revert "Update console.h"
This reverts commit 76c17179e695df08466c34bf334c1e819ad59c76.
2025-05-12 11:50:51 +01:00
marauder2k7 bdcd60f8af Revert "Update ScriptTest.cpp"
This reverts commit 40aa2414ebeb14274aed4d2b77f6847ac0f8b28b.
2025-05-12 11:50:50 +01:00
marauder2k7 8fc91bbc1e Revert "Update console.h"
This reverts commit ffac34b2d3eb24ec6a460f2cf77e172543c15772.
2025-05-12 11:50:47 +01:00
marauder2k7 0df6e99a75 Revert "Update console.h"
This reverts commit f10080489995570036e2e5ba762357559a0abd34.
2025-05-12 11:50:46 +01:00
marauder2k7 2b14e5448e Revert "update"
This reverts commit 7ac9c55bf1efa23db674dba4f2c7ada7ca344d7d.
2025-05-12 11:50:45 +01:00
marauder2k7 5cc2abc9ae update
revert console.h to best working version
wrap includes around the TORQUE_DISABLE_MEMORY_MANAGER macro
in torqueConfig.h.in add check for whether we are in release and make sure TORQUE_DISABLE_MEMORY_MANAGER is defined.
2025-05-12 11:50:44 +01:00
marauder2k7 cb7dab4052 Update console.h 2025-05-12 11:50:42 +01:00
marauder2k7 656a8ac0bd Update console.h 2025-05-12 11:50:41 +01:00
marauder2k7 0690ad912a Update ScriptTest.cpp 2025-05-12 11:50:36 +01:00
marauder2k7 338eaea786 Update console.h
az: stringtable insert for stentry
2025-05-12 11:50:35 +01:00
marauder2k7 dc16c50e4e Update console.h 2025-05-12 11:50:33 +01:00
marauder2k7 8176145aaa remove more std::move
std::move needs to be used with pointers, we werent doing that and so a temp var was being copied onto the heap when it should of stayed on the stack. This caused memory leaks
2025-05-12 11:50:32 +01:00
marauder2k7 5fc9da789b changes from az
leak damn near fixed with these changes
2025-05-12 11:50:30 +01:00
marauder2k7 ee0cf872a0 moar leak plug attempts 2025-05-12 11:50:29 +01:00
marauder2k7 ea39c83afd Update console.h
might not fix the leak we were having around callbacks, but it really slows down the upcreep of memory
2025-05-12 11:50:28 +01:00
marauder2k7 bab75a3a46 clang-tidy complained about std::moves 2025-05-12 11:50:26 +01:00
marauder2k7 6237703140 Update platformMemory.cpp
stop memleaker from leaking...... yes i see the irony
free was being blocked from running when unitialized
in shutdown reset our allocList allocCount and currentAllocId so the array can be written to again
2025-05-12 11:50:25 +01:00
marauder2k7 d93f094cf5 Update console.cpp
move shutdown function to after PathExpandos is defined and clear it to remove it from memlog
2025-05-12 11:50:24 +01:00
marauder2k7 d8315267e8 clear utf16 cache
this stops the unicode global cache from showing in the memleak output
2025-05-12 11:50:22 +01:00
marauder2k7 8926d1c32b Update assetManager.cpp
purgeAssets correctly on tear down of the asset manager
2025-05-12 11:50:21 +01:00
marauder2k7 e2c4f88faf plugging moar leaks
Namespace Leaks: these leaks would have been freed on app kill but they were still contaminating the log so free em.
Con::shutdown: gGlobablVars again another leak that would of been freed on app kill
AssetManager onRemove should be clearing its lists
Scripting language needs a free for its strings these destructors free after the rule is executed so the data is cached internally and then freed. This may be needed for other types in the union (should not be used on nodes just raw data)
2025-05-12 11:50:20 +01:00
marauder2k7 b0eb3875c9 changes from az
Output now collates issues together into 1 entry for each leak point
tDictionary leak
2025-05-12 11:50:18 +01:00
marauder2k7 1050cad372 Update platformMemory.cpp
add date and time to output logfile
2025-05-12 11:50:17 +01:00
marauder2k7 15ff382469 plugging found leaks
LEAK from G:\GameDev\GithubRepo\Torque3D\Engine\source\console/consoleObject.h:686
- leak around props remaining after the const_cast free it up

LEAK around sound asset
- assetEnumNameConcat was creating a leak.
2025-05-12 11:50:16 +01:00
marauder2k7 8f856dd7cd build fixes missed by copy over 2025-05-12 11:50:14 +01:00
marauder2k7 8c812cb448 initial commit
This change makes the memory manager work again for detecting leaks, the built in one kept coming into de-ref and other bugs so this is the start of a refactor to get it working.
2025-05-12 11:50:13 +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 b095134df8
Merge pull request #1451 from Azaezel/alpha41/cleanerCleanups
isobject and obj.delete safties
2025-04-29 20:25:39 -05:00
AzaezelX 62aadf9114 isobject and obj.delete safties
isobject isn't actually one if it's yet to be properlyAdded, or already marked with isRemoved
likewise don't try and delete a deleted thing
2025-04-29 16:45:25 -05:00
Brian Roberts db57f67839
Merge pull request #1450 from Azaezel/alpha41/popUpGoPop
fix PopupMenu::checkItem filter
2025-04-29 15:45:54 -05:00
AzaezelX c04eaa5862 fix PopupMenu::checkItem filter
reminder size is the total element count of the vector
2025-04-29 15:45:39 -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 e489e0cd18 go ahead and allow follow without needing a navmesh 2025-04-28 16:01:24 -05:00
AzaezelX a05ff4f351 kill dupe controlmap tracking var define 2025-04-28 14:38:51 -05:00
AzaezelX 9e2666ed09 nav editor compliance 2025-04-28 14:35:26 -05:00
AzaezelX f278150185 TORQUE_NAVIGATION_ENABLED filtering 2025-04-28 14:31:27 -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 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 7ed3f11c8e might as well go ahead and allow substitution statement support 2025-04-28 00:26:45 -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 20976b485c Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into aiSubsystem 2025-04-26 10:11:13 -05:00
AzaezelX b2021caa6d skip sidestepping off a cliff raycast if we're not sidestepping
take current velocity into account for vehicles since some degree of momentum will be maintained
2025-04-25 20:36:22 -05:00
AzaezelX 675bdfe6b3 fix pack/unpack data for AIControllerData's (though we still send nothing, we do need to mark it clientside as false)
more pitchwork for flying vehicle drivers
when flocking is irrelevant just path to next node
2025-04-25 18:50:16 -05:00
JeffR 24db0305f6 Modified callback to ensure that when a shapeAsset changes, groundCovers properly re-initialize to reflect the change 2025-04-24 13:24:26 -05:00
JeffR f31acf774e Adds handling for datablocks to be reloaded if the assets they utilize have their files directly edited. 2025-04-24 00:58:20 -05:00
AzaezelX 6efb3843f6 scale flyingvehicle ai pitch by the amount yaw forces it to roll 2025-04-23 16:25:35 -05:00
AzaezelX c1d32a9fd6 more cleanups and standardizations 2025-04-23 00:05:57 -05:00
AzaezelX d8ea8803c3 simplify calcs by leveraging pre-existing matrix methods and dot product properties 2025-04-22 22:06:32 -05:00
AzaezelX 71b8046bb1 shift mode stop and stuck below modeslowing so we can just do basic math filtering
fix a few bits of eroneous sidestepping attempts by flying and wheeled vehicles.
more work on flyingvehicle resolvepitch and resolvespeed
2025-04-22 00:34:32 -05:00
AzaezelX 584093f48d aiInfo getPosition now optionally takes a doCastray bool (off by default)
AIFlyingVehicleControllerData add flightfloor and cieling
resolvepitch from (portions of) the old aiflyingvehicle resource
no reversing for flyingvehicles, so bottom out resolvespeed at 0
2025-04-21 19:13:31 -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 fdb64b15a8 stop spamming the console with callack status 2025-04-20 21:41:04 -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 185acd23e0 stop controllobjects from fighting 2025-04-19 14:35:18 -05:00
AzaezelX b864908efd clean up a few stray bits 2025-04-19 07:10:18 -05:00
AzaezelX a609917cee put the flocking protocol ion the repath command itself with a high weight so it prioritizes avoidance vs straight following 2025-04-19 06:37:28 -05:00
AzaezelX 3210325f3f elevated mAicontroller to shapebase
aiwheeleedveiclecontrollerdata resolvespeed now only touches throttle
objects assigned aicontrollers now reflect that by thier objecttype
basic flocking
2025-04-19 04:25:36 -05:00
AzaezelX d36cf31707 more safeties. simplified reverse steering calc 2025-04-18 18:27:39 -05:00
AzaezelX 712404c9b4 hook up Vehicle's getAIMove(Move*);
list aiControllerData's in the datablock. though the command is still required to set the controler and look up the relevant db for game specific logic
2025-04-18 12:28:49 -05:00
AzaezelX 2d0bcbcf8d behavioural change: feeding an AInfo an object with a 0 radius causes the class to fill in radius from that objects bounds box
also, vehicle direct hooks
2025-04-18 11:36:27 -05:00
AzaezelX 78a26b0108 expose a getThrottle for vehicles. save some calcs in AIWheeledVehicleControllerData
deletion cleanups
2025-04-18 11:00:13 -05:00
AzaezelX 2d5e8c1560 make steerstate for AIWheeledVehicleControllerData's self contained
variable raylength for the rpath filter. same 0.001 for players to stop recalculating a path when jumping, but bump anything they're mounted to to a 2 unit check

bit of work towards parallel parking. or at least not ending up arcing back and forth infinitely in an arc
2025-04-17 23:31:30 -05:00
AzaezelX 1fad2c7372 AIWheeledVehicleControllerData wipwork 2025-04-17 20:01:36 -05:00
AzaezelX 32f9917ed2 aicontroller:
in order to call derivatives of AIControllerData datablocks *without* requiring an accompanying AIController subclass as well, leverage the fastdelegate system for our resolver callbacks
additionally, don't try and repath in mid air
aigoal: initialize inange/infirinrange to false. use those to filter callbacks
2025-04-17 17:55:38 -05:00
AzaezelX f84bf058c9 navigation: setPathdestination now takes a replace bool to preserve the goal
also killed a few now extraneous  clearfollow calls
2025-04-17 17:51:31 -05:00
AzaezelX c72c3068f8 aiinfo subclass inheritance cleanups, and default constructor removals for safeties 2025-04-17 14:38:27 -05:00
AzaezelX 4f87ad4cf7 moar gaol tracking cleanups 2025-04-17 12:27:05 -05:00
AzaezelX 2956223a60 simplify setpathdestination loop 2025-04-17 11:39:06 -05:00
AzaezelX 83822f1148 fix eroneous defaults 2025-04-17 11:38:21 -05:00
AzaezelX 25b3a7c070 break wether we *should* be trying to move out of the resolver 2025-04-17 10:50:58 -05:00
AzaezelX eaa6a62b0c misc cleanups 2025-04-17 10:38:36 -05:00
AzaezelX a10169accf fix node following stopping early 2025-04-17 09:44:04 -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 e37ae27bc0 fix aim safeties to actually be safe, add an explicit clearAim script command 2025-04-16 17:58:30 -05:00
AzaezelX 14a03dfc6c if you've stopped moving on purpose, you're not stuck 2025-04-16 17:40:53 -05:00
AzaezelX f3ef698e89 getmovedestination, set/get speed, targetting script commands
todo: need to see why getAIController().setAimLocation("10 10 0"); seems to get into an onreachdestination+stuck callback loop
2025-04-16 17:27:26 -05:00