Commit graph

3054 commits

Author SHA1 Message Date
Lukas Joergensen b76a3fa508 Correct name of EaseF param in struct EngineAPI export 2020-11-15 21:30:45 +01:00
Lukas Joergensen 03769bb79d Remove superfluous Get/SetField API methods 2020-11-15 21:30:45 +01:00
Lukas Joergensen e95a5bf139 Expose SimPersistID to EngineAPI 2020-11-15 21:30:45 +01:00
Lukas Joergensen fe09d6e125 ModuleSystem: Lookup CInterface methods when calling module create func 2020-11-15 21:30:45 +01:00
Lukas Joergensen 68b6884665 EngineAPI: Expose strings as UTF8 instead of UTF16 2020-11-15 21:30:45 +01:00
Lukas Joergensen 0b5fd8db6e Engine API: Pass structs by reference 2020-11-15 21:30:45 +01:00
Lukas Joergensen 6a9c09f145 Update EngineAPI, use fixed_tuple as main underlying data structure
This also fixes a few issues related to type conversions before data is sent to the engine function.
Squash
2020-11-15 21:30:45 +01:00
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 Joergensen a069496ad3 ModuleDefinition: Remove duplicate addProtectedField for ModuleId 2020-11-15 21:30:45 +01:00
Lukas Joergensen e1a6fa01ca PostEffect: Rename isEnabled field to enabled, to fix name clash 2020-11-15 21:30:45 +01:00
Lukas Joergensen 5a994bdddc Rename GuiSpeedometer::mColor to mNeedleColor to avoid clash with parent 2020-11-15 21:30:45 +01:00
Lukas Joergensen a241d27b58 Expand EngineAPI type definitions 2020-11-15 21:30:45 +01:00
AzaezelX c746871b0a zlib - remove modified mini variant from assimp. we're using the big one elsewhere 2020-11-07 22:03:04 -06:00
AzaezelX 5de19404d9 mac compile fixes
1) `/` not `\` for includes
2) had to clean up a few extra ## bits that work fine winside, but trip up macs (only needed when stitching, had 5 spots where that was pointless)
2020-11-06 02:11:13 -06:00
Areloch 0a962342ac Adds handling to the path manager so it can deal with both looping and non-looping paths 2020-11-02 23:26:50 -06:00
Areloch 388a700a53 Implements material asset handling for GroundPlane object
Adds handling for finding material asset akin to shape and image assets
Updates the material asset inspector field to follow the current standard
Updates prototyping material assets to correctly have materialDefinitionName assigned
Fixed material asset import step to properly assign materialDefinitionName
Fixed typo in material editor icon name
Added logic to editAsset function call so it can also parse assetIds
Changed DefaultEditorLevel to utilize FloorGray material
Adds proper NoMaterial asset for fallback purposes
2020-11-01 23:32:34 -06:00
Areloch 9ca276fef0 Misc fixes to ensure that the default postFX save, load and editing process is valid
Also fixes it so if a level asset doesn't point to a valid postfx preset file, it'll generate a clean one on save
2020-11-01 15:39:30 -06:00
Areloch 94e6d19fb2 Ensures that baking is consistently set to use HDR formats or not which avoids an occasional mismatch crash
Also corrected a string formatting issue with loading static cubemaps on probes that could lead to a crash
Fixed the resources loaded handling so it would correctly initialize the probe's cubemaps even if the initial ghost network packet assigned a cubemap before we fully init'd the client object
2020-10-29 23:27:07 -05:00
Brian Roberts 0e2fff00d2
Merge pull request #339 from lukaspj/fix/forcefov-on-guitscontrol
ForceFOV is not working on GuiTSControl.
2020-10-28 20:38:25 -05:00
Brian Roberts 72ee2260ca
Merge pull request #370 from Areloch/MiscBaseGameUIFixes
Misc. BaseGame UI fixes
2020-10-28 20:24:33 -05:00
Areloch db6c63d424 Adjusts guiGameListMenuCtrl.cpp to handle Left and Right keys to adjust options, which simultaneously fixes the 'jiggle' issue on the options menu of the BaseGame base UI
Per Steve's suggestion, put a pause on gameplay sounds alongside the game sim being paused when the pause menu is opened.
Nudges the keybind preview image for guiGameListMenuCtrl to be better centered
2020-10-25 02:51:52 -05:00
Tony a5b31a3cef Added space to append to timestamps if they're used 2020-10-24 20:39:27 -04:00
Tony f7a0047391 Fixed date order to be YYYY/MM/DD 2020-10-24 20:34:03 -04:00
Tony afa8124301 Added date/time stamps option to console log 2020-10-24 05:41:18 -04:00
AzaezelX fef05cf2ca fix #365 2020-10-21 11:27:36 -05:00
Areloch 6a3603c737 Overhauls the handling of probes to utilize an active probe list to improve performance and allow a greater total number of active probes in a scene.
Also fixes handling of metal materials during bakes to render properly, and fixes a possible double-up return in findObjectByType, which could cause doubling when getting probes in the scene
2020-10-19 00:53:09 -05:00
Brian Roberts 072b5ecb19
Merge pull request #357 from Areloch/ImageAssetHookins
Updates macromagic to properly set up for init'ing when image assets are set in material and terrain materials
2020-10-17 16:21:24 -05:00
Brian Roberts 3851612b91
Merge pull request #361 from Areloch/LevelAssetLoadConsistency
Updates some level asset functions and script handling
2020-10-17 16:21:01 -05:00
Areloch f4f60e1ae7 Improves default suffix handling for asset importer on image assets under a material asset 2020-10-16 17:03:30 -05:00
Areloch 837983c767 Adds script function to access full path of the level asset's preview image file
Updates script function descriptions to be correct
Updates chooseLevelDlg functions to be more efficient and consistent, and use the exposed get methods for getting preview images and the like properly
2020-10-13 18:44:42 -05:00
AzaezelX 4250e1d1b4 simplification of the Class::_set<slotname>Asset methods, (as well as early outting before dAtoi(index) hurt itself if index was invalid)
also since I was in there, fixed isrgb accidently being flipped on by default
2020-10-12 04:43:47 -05:00
Brian Roberts 8a252458d4
Merge pull request #356 from Azaezel/alpha40_mountchainCollisions
sceneobject mountchain enable/disable collision aug
2020-10-11 16:00:56 -05:00
Areloch f0068c2435 Updates macromagic to properly set up for init'ing when image assets are set in material and terrain materials 2020-10-10 22:48:13 -05:00
Brian Roberts 8e4edc3545
Merge pull request #237 from Azaezel/alpha40_notKnotNoNo
safety check
2020-10-09 20:00:10 -05:00
AzaezelX 1afd1996fe sceneobject mountchain enable/disable collision aug 2020-10-09 16:51:26 -05:00
Brian Roberts 6860bddf35
Merge pull request #354 from Azaezel/alpha40_compositCreationCoughup
fix for empty r channel creation of composites crashing out
2020-10-08 19:15:13 -05:00
AzaezelX ed260548c5 fix for empty r channel creation of composites crashing out 2020-10-08 19:14:50 -05:00
AzaezelX d1cc5964c4 fix GCC compile 2020-10-08 18:17:35 -05:00
AzaezelX eaf814f2e3 EngineExportScope(){} *can't* be initialized by default, aparantly 2020-10-05 13:44:08 -05:00
Brian Roberts 0c29847943
Merge pull request #343 from lukaspj/feature/mesh-road-profile-editor
Profile editor for the meshRoad object
2020-10-03 17:48:00 -05:00
Brian Roberts 2dae903a18
Merge pull request #341 from lukaspj/fix/break-shape-invalid-box
breakShape() - remove parts created with invalid object box .
2020-10-03 17:47:47 -05:00
Lukas Aldershaab 7dc2521c76 Use string.compare instead of String::compare when comparing strings 2020-10-04 00:33:21 +02:00
Lukas Aldershaab 973fd44c6a Profile editor for the meshRoad object
credit to Ryan Mounts (RDM)

found originally at http://www.garagegames.com/community/forums/viewthread/105391
2020-10-04 00:19:43 +02:00
Brian Roberts d50f1f0b81
Merge pull request #342 from lukaspj/fix/replace-dstrcmp
Replace uses of dStrCmp with new String::compare
2020-10-03 17:01:12 -05:00
Lukas Aldershaab 197a62f6ea Convert dStrcmp to String::compare for more cases 2020-10-04 00:00:01 +02:00
Lukas Aldershaab d0f9aca859 Code style improvement 2020-10-03 23:53:45 +02:00
Brian Roberts 6dedf6330b
Merge pull request #327 from lukaspj/fix/interpreter-foreach
Fix global variables not being able to be used inside of a foreach$ loop
2020-10-03 15:59:20 -05:00
AzaezelX 411cd009f4 fix terrain compilation 2020-10-03 13:32:16 -05:00
AzaezelX 33f17ea759 pathshape gravity suppression injection 2020-10-03 12:21:16 -05:00
Brian Roberts 681dbe108c
Merge pull request #323 from Azaezel/alpha40_smoothToRough_clean
shift pbrconfig to ORM in keeping with the prepoderance of industry standards
2020-10-03 11:49:10 -05:00
Brian Roberts 40f9dfe712
Merge pull request #334 from lukaspj/fix/sfx-player-bitstream-data
SFX Player fixes #74
2020-10-03 11:39:31 -05:00
Brian Roberts 777a50683d
Merge pull request #329 from lukaspj/fix/temporary-spotlight-fix
Temporary fix for the geometry feed in spotlights
2020-10-03 11:36:52 -05:00
Brian Roberts bbfa55c206
Merge pull request #328 from lukaspj/feature/guiRenderTargetVizCtrl
Implementation of guiRenderTargetVizCtrl
2020-10-03 11:34:50 -05:00
Brian Roberts 8c49019958
Merge pull request #337 from lukaspj/feature/disable-update-of-basetexture
extra option for terrain block to disable the update of the basetexture
2020-10-03 11:31:48 -05:00
Brian Roberts 612a3e3358
Merge pull request #309 from Azaezel/alpha40_triggerTricksTre
new trigger features: triponce, tripcondition, and trippedby.
2020-10-03 11:26:59 -05:00
Brian Roberts c7cabe7081
Merge pull request #261 from Azaezel/alpha40_animCleanups
groundframe generation cleanup work
2020-10-03 11:26:14 -05:00
Brian Roberts e5014fb24e
Merge pull request #212 from Azaezel/alpha40_export_LOD_rounding
export rounds LODs to the nearest power of 2
2020-10-03 11:25:53 -05: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
yourarcade 7480dea1a9 breakShape() - remove parts created with invalid object box along with empty parts. 2020-10-03 14:09:16 +02:00
Francisco Montañés García faa38ffcd8 Inside _internalRender mForceFOV is not take into account. 2020-10-03 13:20:45 +02:00
Lukas Aldershaab f87dde254d extra option for terrain block to disable the update of the basetexture 2020-10-03 11:31:02 +02:00
Lukas Aldershaab 70de01e34c SFX Player fixes #74 SFX Playlist currently writes an absurd amount of data into the bitstream. 2020-10-03 11:11:34 +02:00
Lukas Aldershaab b5d1d1a02c Temporary fix for the geometry feed in spotlights 2020-10-03 01:07:17 +02:00
Lukas Aldershaab dca2dc0074 Implementation of guiRenderTargetVizCtrl 2020-10-03 00:58:38 +02:00
Jeff Hutchinson 2bf3c8384c Fix global variables not being able to be used inside of a foreach$ loop. 2020-10-03 00:47:20 +02:00
AzaezelX 3a67ddd34c so ok, looks like there's *still* wonkiness with processtick runing through from vehicle to rigidshape. we'll have to review that at a later date. mean time, explicitly specifying shapebase so folks can proceede with thier project requests 2020-10-02 14:44:43 -05:00
AzaezelX 321c25a401 profiler tracking name collision fix 2020-10-02 14:16:27 -05:00
AzaezelX afb39d398f code review:
1) got rid of evey class having it's own gravity
2) rigidshape inheritance simplifications
3) gravitymod from physicszones taking buoyancy into account natively (we still track raw bouyancy to cancel it out for player)
4) disableMove used throughout
5) items can now also be influenced by the appliedforce from physicszones
2020-10-02 13:53:46 -05:00
AzaezelX 0c7811bd1a shift pbrconfig to ORM 2020-09-30 13:51:12 -05:00
AzaezelX 22b0785c73 augment imageasset with initMapSlot and bindMap class insert macros (and array variants) to make the conversion process for folks shifting from 3.x to 4.x cleaner, as well as autocreation of getter/setter methods andadditoinal acessor macros for consistency 2020-09-30 13:50:23 -05:00
AzaezelX e88b7a0783 minor cleanups:
clean up mismatched  PROFILE_START+PROFILE_END() that was in/out of the mip packign for loop on the gl side, leaving just the self-cleaning PROFILE_SCOPE(GFXGLTextureObject_copyToBmp); similar to the dx11 side
   void GuiGameListMenuCtrl::removeRow(const S32& row); (the GuiGameListMenuCtrl:: bit in the class iteslf is redundant and making linux unhappy)
2020-09-26 22:43:26 -05:00
AzaezelX 1d71ee70e8 memleak fix 2020-09-25 12:25:35 -05:00
Areloch ead26ec18a Implements hook-look-up logic for shape assets to ShapeBaseData including autoimport handling
Also fixes issues with editing/spawning DBs via the asset browser
2020-09-21 20:51:41 -05:00
Brian Roberts add299e1b8
Merge pull request #316 from Areloch/UpdatedWindowsSettingsOptions
Updated version of OTHGMars' updated window and resolution options modes.
2020-09-20 16:02:35 -05:00
Areloch 26ef40950b Updated version of OTHGMars' updated window and resolution options modes.
Additional changes include disabling certain options when they are not valid(ie, resolution is disabled when in borderless mode)
2020-09-20 02:06:15 -05:00
Areloch 350d3e6702 Fixes 2 minor mistake corrections 2020-09-20 01:19:08 -05: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
Areloch 8fbad31b43 Fixes the hook-ins so when a shape asset is changed, tsstatics now are correctly triggered for a reload 2020-09-13 17:57:19 -05:00
Brian Roberts 721320b612
Merge pull request #312 from Areloch/PostFXReorgAndUpdate
Reorgs the layout and editing of PostFX with some supplemental level save/load changes
2020-09-11 15:51:36 -05:00
Areloch b05d5fd3bd Merge branch 'PostFXReorgAndUpdate' of https://github.com/Areloch/Torque3D into Preview4_0 2020-09-11 03:21:56 -05:00
Areloch 3c0c106051 Reorgs the editing of postFX so the editor settings edits the default config, and Scene > edit postFX to edit scene
Changes the saving of postfx from saving via the editor to instead save on level save
Reorganizes the core postfx folder to subfolders for better organization, as well as moving the shaders to group with the respective postFX
Changes the postfx editor so it only edits postFXs that are actively enabled in the scene, and only saves out similarly.
Adjusts the level download logic to pass asset id for both data compactness compared to the full level filename, as well as easier lookup reference for associated files like the postFX preset file or decal files from the asset def.
Updated the PostFXAsset template to provide an up-to-date starting point/template.
2020-09-11 02:28:15 -05:00
Areloch 5289fdf7f1 Re-implements the dynamic cubemap mode option for reflection probes 2020-09-11 02:13:05 -05:00
Areloch c5bccd8ff4 Adjusts getUtilizedAssets writeout so it more consistently prints out the dependent assets
Adds handling for prefabs with getUtilizedAssets
2020-09-08 01:04:41 -05:00
AzaezelX b160017c7d aitriggers a navtool. not ready for general consumption just yet 2020-09-04 19:34:17 -05:00
AzaezelX 91ff953c19 new trigger features: triponce, tripcondition, and trippedby.
once fires off callbacks one time,
condition lets you plug in an a==b, or method that returns a true/false;
 trippedby lets us plug in things like $TypeMasks::PlayerObjectType ( ac39577543/Engine/source/T3D/gameFunctions.cpp (L658) ) so that *only* players can trigger it
2020-09-04 19:29:50 -05:00
Areloch 0b954459a3 Added recursive scanning for utilized assets on any object within the scene, soas to catch objects in simgroups or parented
Disabled initial materialSlot fill-out until logic for looking up assetName from material list name can be done to avoid 'unable to find assetid' spam
Added function to SimGroup to easily acquire child object by index
Some minor cleanup of commented lines in asset browser
Fixed forward/backward navigation arrow behavior in asset browser
Fixed double-click navigation when the AB is in select mode
Fixed erroneous 'could not acquire asset' messages when navigating folders in AB
Added editor setting for UseGroupSnap snap option and integrated it into the UI interface
Removed some duplicate settings from the EditorSettingsWindow
2020-09-02 01:26:43 -05:00
Areloch ae70cccfde Fixes de-selection logic in editor that caused special cases to permanently be selected such as mounted Lights
Shifted every-frame RT allocation to be stored in advancedLightBinManager
Remove deprecated references to dynamicShadowMap in light materials
Updated spotLight shaders to remove deprecated dynamic shadowmap reference which was causing a crash when spotlights had shadows turned on
Added GLSL version of Viz_SurfaceProperties so it works on both APIs
2020-08-28 01:57:06 -05:00
Areloch 7405453123 Fixes issue where it would try and load a SIS file even if it doesnt exist
Fixed warning about use of invalid function 'setEnabled' instead of 'setActive'
Fixed formatting of a schedule call in ExmapleGameMode
Fixed EditorOpenMission logic to correctly get and use levelAsset
Removed unneeded continues from menuInputButtons' refresh()
Updated settings.xml to have sorted order for future consistency
2020-08-26 13:40:04 -05:00
Brian Roberts 5544951b5d
Merge pull request #302 from Areloch/soundAndAnimationAssetImport
Integrates sound and shapeAnimation assets into the importer
2020-08-25 00:23:05 -05:00
Areloch 1942535923 Integrates sound and shapeAnimation assets into the importer
Added drag-n-drop spawn action for soundAssets
2020-08-24 20:24:50 -05:00
Brian Roberts a71537488c
Merge pull request #301 from Areloch/AssetMaterialLookupsAndSis
Material Asset import lookups and initial re-integration of sis files.
2020-08-24 15:40:52 -05:00
Areloch d06c99a088 Adds function to get material definition by mapTo usage
Re-enables logic for looking up existing material(generally just for in-place autoimport) and creates the material asset off of that. Also adds logic to look up the mapTo if it exists if the material name lookup fails.
Adds initial pass at re-enabling the sis file support for shape importing. In the event the UseManualShapeConfigRules setting is disabled(which it is by default) it will try and find the matching sis file and apply the rules from that to the config. Once the processing/import is done on the shape, the cached values of the main config are restored again.
Adds initial fbx.sis file. Needs to have the fields standardized to the config names.
2020-08-24 04:41:17 -05:00
Areloch 3f676e0966 Adds sorting to the settings class so when it saves out to file, it puts them in alphabetical order which keeps things consistent. 2020-08-23 14:29:17 -05:00
Brian Roberts 93ce5d0cfa
Merge pull request #298 from Azaezel/alpha40_triggerTroubleTre
fix for trigger::testobjects vector population
2020-08-21 07:28:40 -05:00
Areloch 40dd926873 Adds function for sceneObjects to report utilized assets
Add reporting of used assets to tsStatics and TerrData
When saving a Scene, it will write static object asset dependencies to it's levelAsset
Shifted level loader logic to pass up the levelAsset rather than full level path
Made it so when level is loading, the levelAsset loads its dependencies. When the level is ended, as part of cleanup, they are unloaded
Shifts defaultEditorLevel to be an actual asset and made the ToolsModule load assets
Fixes the Save As action to correctly save out to the new level asset
Fixed the autoLoadAssets logic to be cleaner and not manually check types
Removed extra, unused DefaultEditorFile file
2020-08-19 18:30:42 -05:00
AzaezelX 967841db7a fix for trigger::testobjects vector population 2020-08-17 18:06:23 -05:00
Areloch 4ffe6d2bb7 Adds a notes object that only displays in the editor, useful for when working on maps. 2020-08-17 16:41:59 -05:00
Areloch 756f2ef680 Adds a pref to dictate if local lights can cast shadows or not. 2020-08-16 18:08:00 -05:00
Areloch b6a3fb05d9 Adds logical check to skip animated statics when baking selection to mesh. 2020-08-16 02:16:19 -05:00
Areloch 686975c8ee shifts getImageFilename to getImagePath on ImageAsset
Adjusts references to utilize getImagePath to ensure things using the image asset gets the proper full path
Adjusts image import logic to import finding associated images
Adds logic so if a roughness map is imported, the generated material asset has the invertSmoothness flag on.
2020-08-13 01:35:24 -05:00