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
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)
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.
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
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
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
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
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.
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
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.
Updated choose level UI to use getLevelPath function so it works again
Added a check for mis.dso for choose level UI as well in case it was compiled
Updated open asset in shape editor logic to use getShapeFile so it works again
Fixed on-exit crash after drag-n-drop importing of assets into the AB by properly using the import config object as a pointered object
Added sanity check when inspecting a TSStatic, if there isn't a materials inspector group for whatever reason to prevent a crash
Added filter logic so if in select mode for a specific asset type, it won't show datablocks, prefabs or other loosefiles
Removed unneeded setting of AB's current address path when creating a new terrain material asset
Added logic for forcing field validation in the create a new asset window. This fixes a problem where if you'd typed in a field but didn't hit enter and then immediately hit the done button, the typed string wasn't used.
Fixes select mode for the Asset Browser to properly filter to the selecting type
Fixes the imageType in the asset import window inspector to properly set to the importing image asset's discovered type if valid
Fixes AssetBrowser asset selection return so it returns back a valid assetId
Fixes TerrainMaterial save crash by ensuring we fill in the diffuseMapAsset
Removes saving of TerrainMaterial being saved to a generic script file if one isn't found for an existing TerrainMaterialAssets
Fixes name handling when finding associated image files on materials
Makes parseImageSuffix return back the case-correct suffix given the image's filename
Fixes import session reset logic to not have infinite looping happen when activated if files are in the session still(used mainly when import config is changed)
Makes sure materials are not processed if they are found in the import config's ignoreMaterials list
Makes sure active import config is properly on importer when it's changed in the Import window
Tweaked asset browser folder filtering logic so it always rejects .git folders from displaying, and also made the core, tools, cache and shaderCache filtering behavior consistent
Fixed navigation of root-level folders if double-clicking on them through the main window
Ensured import session is reset after an import happens so no extra files are left over in the importer's list
Fixed autoAssetImport so it properly cleared any prior import session objects
Added beginning and ending comment line signfiers to make import logging easier to spot in console
Fixed variable used when doing the actual import on assets where it would use the top-level asset import objects and not the children array, causing a crash
Fixed the Make Selected A Mesh logic to work with the creation of a new shapeAsset
Added secondary handling to generate a prefab of the original selection for preservation purposes
Added optional input for makeSelectedPrefab to not delete the original selection(useful for the preservational prefab mentioned above)
Adjusted font color for NA text edit fields to make it more legible
Changed the non-working reloadDatabase button in assetBrowser to instead open the Asset Editing editor settings page.
Also disables the Paraboloid shadowmap type, as it is non-functional.
Disabled light animations by default so as to not waste processing time if not needed
Sets point lights' shadow types to be cubemap by default, and lowers the overdark factor to make them look cleaner and not exacerbate aliasing.
Ensured that guiGameListMenuCtrl adjusts values for rows marked as sliders via the left and right gamepad actions
Corrected the button maps for look and move on the gamepad for the ExampleModule's default movement binds
Fixed ExampleModule's default keybinds so alt+enter correctly toggles fullscreen
Fixed joinServerMenu so it has a guiInputCtrl that can catch keybind events and pass them to the menuInputButtons
Removed erroneous input consumption on OptionsMenuList
Removed unneeded check against Graphics API list
Flipped order of Anti Aliasing option to match ordering of the others
Removed old, unneeded legacy option menu script files
Added logic for message boxes to automatically return active MenuInputButton control to the holder before it was pushed
Added fill color for the UI list gui profile so the sliders render more legibly
Reorged the canvas handling of gamepad inputs for the axis and triggers to use the SI_ versions in the right spots
Fixed issue where pause menu would be hidden and not display again
Made the pause menu active from the gamepad start button rather than back
Altered a few of the input images to improve readability of some of the text
Standardizes the menuInputButton set usage to just use the raw action names rather than a middleman naming scheme for simplicity and standardization
Added comments to menuInputButtons.cs
Split out the menuInputButton containers to simplify and stabilize the code on the messageBox dialog
Removed old reference to script/gui files not there anymore
Simplified the input state check in guiGameListMenuCtrl.cpp
Added a check so we don't try exec'ing the selected list item in guiGameListMenuCtrl.cpp if nothing has actually be selected
Fixed sizing issue for material asset ptr fields
Fixed type of comment in Particle Asset
Hooked GLSL and HLSL shader files to be proper asset loose files for PostEffectAsset
Adjusted some default values for default ImportConfig
Corrected field type of multiple fields for the importConfig
Corrected loading of PopulateMaterialMaps config setting from config file
Corrected field types of multiple fields for AssetImportObjects
Exposed several utility fields for the Importer to script
Added ability to create an AssetImportObject in script and add it to the Importer's current session
Ensured stable naming behavior(replacing spaces, -, and . in names with _
Improved getAssetTypeByFile logical lookup so it doesn't accidentally grab cached.dts files
Added ability to hard reset an import session, wiping all inbound files for a full reset
Added ability to process DTS files to shape import so it can parse out content such as materials for associated asset imports
Added better handling for shape materials that are just colors
Added callback hook-in so if the importer doesn't have a defined function for importing a given asset type, it'll try calling down into the editor
Stabilized imageAsset processing logic when generating a material for it
Improved imageType lookup/processing logic in Importer
Improved logic for binding in associated image files to materialAssets
Improved logic for processing shapes to get related materials and images, ensuring better likelyhood of finding and associating related assets
Cleaned up validation logic
Added ability to properly look up the editor's default import config if it's set to be used for autoimport
Improved handling of originalFilePath logic, so if it's an in-place import, it doesn't bother populating the field
Set default UP axis value on shape importing to ensure better default behavior
GL layer was missing _captureBackBuffer() implementation which caused screenShot() function to fail. Also caused ScreenShot::capture() to be called every frame afterward which caused significant performance issues.
Fixes the terrain asset creation, makes the loading logic go through the asset auto-import behavior when a filename or assetid is bound that is not found.
Corrects terrain material binding to properly save and load
Makes the terrain asset inspector fields work as expected.
largely cleanups, though does include glCopyImageSubData for gl revs that support it
TODOS:
1) non glCopyImageSubData for `void GFXGLCubemapArray::copyTo(GFXCubemapArray *pDstCubemap)`
2) while we don't get corruption showing in >0 mips for irradiance maps using the newer code, it nevertheless renders wrong.
not 100% sure if renderdoc is showing blank mips because it expects it due to size, or if we are in fact generating em even though we don't use em in the end for irradiance references.
while shifitng loop in _initSamplerNames to use sgMaxTerrainMaterialsPerPass. if folks absolutely require thier projects to contain terrain macromaps, they can unrem
FEATUREMGR->registerFeature( MFT_TerrainMacroMap, new NamedFeatureGLSL("TerrainMacroMap Deprecated")); // new TerrainMacroMapFeatGLSL);
//samplerNames.push_back("$macrolayerTex");
and
//samplerNames.push_back(avar("$macroMap%d", i));
as well as turn sgMaxTerrainMaterialsPerPass down to 2 entries on a given terrain subchunk before it requires another rerender of the terrain blended in with prior passes.
1) fadescale- allows an enduser to reduce drawdistance for groundcover via $pref::GroundCover::fadeScale
2) adds minslope, conformtonormal, and min/max rotations along the x and y axies
1- corrects onleavetrigger for deletions
2-adds a testObjects to trip onenter when creating or moving a trigger itself so that that will list objects already there as opposed to only going off when something moves into it
validate we aren't either empty or using the reserved empty string before we release the pointed to value (as a note, the latter at least shouldn't have been required, but might as well be paranoid about it)