Commit graph

40 commits

Author SHA1 Message Date
AzaezelX f633ef3a3d fill in the validated variables 2025-03-09 11:53:23 -05:00
AzaezelX 4d66ae37de handle mounted lights ghosting in and out
send a periodic corrective packet for mounted lights to ensure they stay mounted when moving in and out of ghosting
2025-02-08 10:58:50 -06:00
JeffR 61d9e82ce5 Adds FIELD_SpecialtyArrayField field type and handling for it in PersistenceManager, as well as a use-case of it for the surface field in ConvexShape 2024-12-07 13:20:30 -06:00
Areloch ae8eca48e1 Implementation of Subscenes, SceneGroups and Gamemodes
Standardizes Gamemodes to be an actual class with data and utility functions that can be parsed
Adds inspector field handling for selecting gamemodes
Updated Scene class to work with Gamemodes for the gamemode field
Updates editor suite elements to be able to create SubScenes, SceneGroups and Gamemodes
Adds ability to convert SimGroup to SubScene
Updates BaseUI's chooselevel menu to have gamemode selection and filters shown levels based on selected gamemode
2024-09-01 16:39:00 -05:00
AzaezelX a4da6727ed fix non player class pathshape jitter
everything has a consistent getRenderTransform() nowadays
2024-02-21 12:24:38 -06:00
Areloch da06fc1d96 * Fixes description for a few Scene methods
* Adds method to Scene to delete dynamic objects in the scene
* Add getNodeTransform to ShapeBase
* Add sanity check to AFX ea_update function to avoid divide by zero
* Adds ability to set color mul on GuiBitmapBorderCtrl like bitmapCtrl
* MatrixF utilty functions/operators
* Add ability to ignore an object in the containerBoxEmpty method call
* Adds some better initialization/sanity handling for resetWorldBox and resetRenderWorldBox for SceneObject
2024-02-03 23:42:26 -06:00
James Urquhart d278aab929 Improve SceneContainer testing code 2023-09-26 12:03:51 -05:00
James Urquhart d9ff5d3f0e Basic zone code refactor using lists instead of linked lists 2023-09-26 12:03:51 -05:00
James Urquhart 596d13f9a4 Optimize container bin lookups 2023-09-26 12:03:51 -05:00
AzaezelX 061c25686d add setEulerRotation to pair with getEulerRotation for sceneobjects 2023-07-03 15:14:17 -05:00
AzaezelX 5d94728f58 confine pathshape callbacks to server 2023-03-26 22:08:55 -05:00
AzaezelX f5a34308f9 add a docsURL; macro to link a given set of script config vars to git or similar storage urls via clicking on the inspector 2023-01-27 01:13:15 -06:00
AzaezelX f4e6060b52 pathshape cleanups and callbacks
sceneObject:
   UpdateXformChange(mat); operates on the parent object, so made no sense to shove it in void SceneObject::PerformUpdatesForChildren(MatrixF mat){
provide callbacks for when the parent/child relationship changes

simpath+camerapline+pathshape
provide a mechanism to embed a callback for a pathshape defined on a path node. example:

            new Marker() {
               seqNum = "7";
               hitCommand = "TheCommand" // <------------------------------;
               position = "-17.0856 -92.2349 4.00051";
               rotation = "0.0334943 -0.254411 0.966516 179.495";
            };

function PathShapeData::TheCommand(%this,%obj)
{
    echo("Do the thing");
}
2022-07-27 16:35:09 -05:00
Areloch 8781f2ab55 Add getScriptPath console function to GUIAsset
Shifted tracking of importing asset status to an enum for more robust handling
Added logic to properly init freshly created shapeConstructors with the newly imported shapeAsset
Fixed handling of assets that have been marked to be skipped, but needed to fill in the parent's dependencies(UseForDependencies enum value)
Cleaned up redundant recursive logic for importing assets
Disable Create Game Objects button in inspector
Fixed material assignment for convex proxies
Updated asset icons for AB with WIP images to be more clear
Fixed issue where type-generic icons in the creator items in the AB weren't showing correctly.
Force AB to show creator entries in list mode for efficiency and avoid icon scaling issues
Moved creator functions for AB to separate file for convenience
Filled out GUIControls in the AB's creator mode, and context world editor and GUI creator entries based on active editor
Added drag-n-drop handling for guiControls via AB creator in guiEditor mode
Added more types' profiles in the AB gui profiles to give more unique border colors for better visual clarity of asset type
Added editor setting to indicate if the editor should load into the last edited level, or the editor default scene
Fixed setting of highlight material overlay in shapeEditor
Added global keybind for GUIEditor so space also toggles assetbrowser
Fixed up binding/finding of shapeConstructor by assetId, which also fixed displaying of shape's material listing
2021-09-10 02:13:56 -05:00
AzaezelX 1afd1996fe sceneobject mountchain enable/disable collision aug 2020-10-09 16:51:26 -05:00
Lukas Aldershaab 197a62f6ea Convert dStrcmp to String::compare for more cases 2020-10-04 00:00:01 +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 9c71d5eace Merge branch 'Preview4_0' into alpha40_HiddenHugs 2020-03-29 17:40:22 -05:00
AzaezelX bf50af7954 show/hide children automagically for simgroups via inspector
operates by shifting oninspectpostapply callback further down the inheritance hieracrchy and add some scripts to trigger sethidden and setlocked for all sceneobjects in a given simgroup if the states are set for that group
2020-03-29 17:36:33 -05:00
Areloch 954743f55c Merge branch 'alpha40_pathshape' of https://github.com/Azaezel/Torque3D into Preview4_0 2020-03-03 10:47:49 -06:00
Areloch a7b7f755a3 Merge pull request #144 from Azaezel/alpha40_editedCallback
adds an onInspectPostApply(%objectInsatnceID) callback
2020-01-14 19:27:04 -06:00
AzaezelX d872d84b9f adds an onInspectPostApply(%objectInsatnceID) callback triggered any time the inspector is impacted (so moving things, scaling them, or otherwise altering variables on a given instance via editor) 2020-01-12 17:25:08 -06:00
AzaezelX f7f8faf47e truly a community project, this has been kicking around since 2003 in various forms. adds a path following shape that can be ridden. 2020-01-11 23:58:30 -06:00
Areloch d840d52038 Added asset import logging
Added WIP of lighting viz logic to point and spotlight shaders
Made new asset window adhere to path-based system
Ongoing work to standardize asset import actions
Context-based Asset Import popups
Fixed behavior with adding a new sequence in shape editor
Made it so apply in PostFX editor no longer closes window
Work to re-add class visibility filters in editor
2020-01-09 18:28:53 -06:00
Areloch 09c651c26d Corrected profile for GameObjectAsset type field button
Initial implementation of changeable TSStatic materials via material slots and drag and drop of material assets onto world editor from AB
Updated Volumetric Fog to support ShapeAsset for it's model data
Added cmake option to hide literal filename fields if the class supports asset fields for the same input
Added light viz modes to see diffuse, specular and detail lighting modes(currently just sun)
New raycast console function to return back material of hit object
Moved GameObject logic to SceneObject and started fixing up of editor behavior to allow any SceneObject to be converted into a GO, along with all supported behavior such as instance-template management and spawning GO via drag-and-drop from AB
Fixed inspector field tooltip text to be positioned in inspector footer properly again
Drag and drop of shape asset attempts to drop at raycast position now, instead of just at the camera ray position
2019-12-05 20:42:47 -06:00
Areloch c622cfcb6b Modification of #2145
Original PR broke class-type visibility toggles in the editor, so this adjustment on the same setup keeps the optimized path, but also enables the original class-based render toggle if the editor is open.
(Also adds TORQUE_TOOLS check to have it be even leaner if the project doesn't have tool support at all)
2019-04-08 10:20:13 -05:00
Lukas Joergensen 76908eae3c Eliminate DefineConsoleMethod 2018-04-17 21:01:50 +02:00
Lukas Joergensen 2bd43efcb9 Fix minor errors in console function definitions 2017-12-08 21:08:35 +01:00
Areloch d6ccaa7fe8 Corrected documentation. 2017-10-17 21:00:42 -05:00
Areloch bdac9286ee Enables setting the forward vector of a Scene Object 2017-10-15 03:49:18 -05:00
Marc Chapman fcce9be33c obj-select -- object selection functionality
is-camera -- Adds a test for determining if object is a camera.
cam-speed -- added method for getting the camera movement speed.
zoned-in -- connection is flagged as "zoned-in" when client is fully connected and user can interact with it.
2017-07-26 23:59:44 +01:00
OTHGMars 172e62a8f1 Mount Process Order Fix 2
Added a check to SceneObject::setProcessTick() to prevent objects that have mounts from being removed from the process list so the processAfter chain of the mounted objects is not broken.
2016-06-17 10:36:29 -05:00
Azaezel bac14875f4 allows navmeshes to generate for most scene objects, and adds a NavMeshIgnore method for object-instances to filter them out. 2016-04-04 09:38:24 -05:00
Nathan Bowhay 50f875a2f5 Fixed bug with comparison cases of getRenderEnabled
For some reason returning true/false rather that 1/0 from
_getRenderEnabled would cause errors in some comparison cases to see if
it was true or not (would treat it as if it was a string/word rather
than a bool or int).
2015-02-03 14:18:06 -08:00
Azaezel c6cdfafe4e cleaned up variant of https://github.com/GarageGames/Torque3D/pull/768 alterations: opengl support, in-shader bug-reporting, direction vector fit to material slider-bar. 2014-12-21 14:07:42 -06:00
Daniel Buckmaster a928d142f7 Made some tweaks so I'm happy with it.
* Removed #defines
 * Fall back to using visible distance if ghost distance is not used
 * Removed ghost distance from level files as it will default
 * Renamed mConnectionVisibleDistance for consistency
2014-12-07 19:14:06 +11:00
Vincent Gee 578c4e8f4f Removed Tabs, added check on connection 2014-11-06 08:38:05 -05:00
Vincent Gee 55bdfe5dc3 This adds limiting the ghost data to a specific area around the client.
By default it is not included in the build, you must #define GHOSTSCOPING in the torqueConfig.h to enable it.
The distance can be set via the mission file by adding

visibleGhostDistance = "1000";

Or if it is not set in the mission file it will default to what is defined in torqueConfig.h #defined as GHOSTSCOPING_DEFAULT_DISTANCE_IF_NOT_IN_MISSION

The mission default distance can be overridden on a per connection basis by using gameconnection:setVisibleGhostDistance and gameconnection:getVisibleGhostDistance

The logic for setting the scoping distance was moved from shapebase in the original design to SceneObject so that it will affect cameras, players, etc.
2014-11-05 23:14:39 -05:00
Daniel Buckmaster 19f91fee2b Added a setPosition function. 2014-10-28 14:10:22 +11:00
DavidWyand-GG 7dbfe6994d Engine directory for ticket #1 2012-09-19 11:15:01 -04:00