Commit graph

178 commits

Author SHA1 Message Date
AzaezelX 5ffa3b81f1 dial back nullPtr usage
while it still remains a good idea to port as many NULL compares and assignments over to nullPtr as feasable, we do still need to sort out how to better support scripted empty, false, and zero assigns for things like objectIDs.

this means we'll need to both fully convert the backend of the parser to support that kind of thing, but also alter most if not all exisiting NULLs. up to and including things like SAFE_DELETE. while that's certainly feasable, given there's aproximatel 400 nullptr assigns/checks prior to this commit, and roughly 1800 of the prior, if it terminates in a script call and not an aip one direct, we'll be dialing that back until such time as fork fully fopcused on converting and resolving any lingering mismatches is completed.
2025-12-29 17:45:09 -06:00
AzaezelX 82435693dd decal atlas support work
allow a textureCoordCount to be used raw when texrows and coumns are not >1 in order to let the transmitted vector actually be used

correct and augment editDecalDetails to now read
      DecalEditorGui.editDecalDetails( %this.instanceId, %pos, %tan, %size, %uvID  );
it needed the word split to begin with, and also added the uvID for instance frame tracking/overriding
same token added a  getDecalFrame(%this.instanceId); method

todos: add a frame lookup and selector for the instance tab, modify decal display to account for non-square uv portions
2025-09-19 09:09:55 -05: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
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 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
marauder2k7 73ad92b757 review notes from Az
Should render fallback for namedTarget if namedTarget fails
Add safety around namedtarget getTexture to stop assert
Missing assets should revert to fallback image and print a warning to console
Remove REFACTOR tag from all macros.
2025-03-30 11:22:42 +01:00
marauder2k7 0da0903599
Merge branch 'development' into imageAsset_refactor_rev3 2025-03-24 20:07:06 +00:00
AzaezelX f633ef3a3d fill in the validated variables 2025-03-09 11:53:23 -05:00
AzaezelX f9eeaf8869 simplify erosion calcs 2025-02-18 19:58:48 -06:00
AzaezelX e106871350 correct noise miltipliers. add biases for thermal (slope) and hydrolic (average) hieght changes 2025-02-18 16:08:30 -06:00
AzaezelX 0d2f3e294d use standard t3d maxes 2025-02-18 01:09:09 -06:00
AzaezelX 25ea164a1f add a pasteUp and pasteDown pallet 2025-02-17 23:42:19 -06:00
AzaezelX 561c201b88 copy paste support for terrains 2025-02-17 22:10:56 -06:00
AzaezelX 262ff405fa conform hydrolicErosion to the same spec as thermal 2025-02-17 20:58:40 -06:00
AzaezelX 315f05ea47 revert portions to a previously demonstrated to work state... 2025-02-17 19:55:23 -06:00
AzaezelX 329ffab86c work towards adding erosion noise 2025-02-17 16:43:10 -06:00
AzaezelX 2eb2cbc302 add erosion brushes
todo: sort why noise... isn't.
2025-02-17 05:48:15 -06:00
AzaezelX 11bf7df46d need to filter subscenes out of screenspace box drag
the ap hangs otherwise
2025-02-02 21:08:57 -06:00
marauder2k7 f519cff6ff gui types using image_asset 2025-01-23 22:12:57 +00:00
AzaezelX 218caea9e8 remove filtes on misbehaving brushes.
correct range defaults
2024-10-28 09:39:02 -05:00
AzaezelX 24933a1cc7 add min/max tile height entrys to painter, apply those to the general isvalid check for a given tile alteration. apply that to more brushes. 2024-10-24 13:37:45 -05:00
AzaezelX 85955479c8 terrain mask work
adds an isValid(gridinfo tile) command to prefilter out grid elements of a specified nature
applies that to SetEmptyAction::process
also corrects sliderbar positions for terrain painting elements, as ell as adds a min/max slope for removal

potential TODOs: apply it more places pending feedback. add a min/max hieght filter as well
2024-10-23 17:50:07 -05:00
AzaezelX 7664b63071 snap syncing
for world and convex shape editors
2024-09-22 14:34:07 -05:00
marauder2k7 6807abc8b6 ID10T error
no default does not need case -_- id10t error, few other fixes
2024-07-22 21:12:48 +01:00
marauder2k7 a621cc5100 various warnings
warnings cleanup
2024-07-22 20:59:48 +01:00
AzaezelX 84c08e6ed9 work around collide not returning false with a nul object
fix a crash caused by having boundingBoxCollision on, while projecting the mouse so that there is nothing between it and a globalbounds object
it would seem we're somehow ending up in a state of WorldEditor::collide returning true it hit somethging, but NULL as far as *what*
until we properly fix this, doublecheck to make sure the hitObject isn't NULL before we start trying to reference membervars/methods
2024-05-07 00:24:49 -05:00
AzaezelX f6419d9659 fix order of ops mangling useGroupCenter snapping 2024-04-15 15:33:06 -05:00
AzaezelX 39e72cf2b6 ditch _snapfloat entirely in favor of just using the shared mRoundF 2024-04-10 15:56:44 -05:00
AzaezelX f52c1165b6 fix editor grid snap 2024-04-10 15:17:47 -05:00
AzaezelX f7ed077d82 round utility functions
add mRoundF to return nearest floating value to stepsize
2024-04-10 14:17:19 -05:00
AzaezelX 01ff82cb72 fix mangled copypaste 2024-03-30 17:41:22 -05:00
marauder2k7 2b295fb7f0 rest of virtuals removed
virtuals removed and replaced with override where necessary on the rest of the code base, clang-tidy to the rescue.
2024-03-18 18:40:22 +00:00
marauder2k7 efbe5e90f5 virtuals removed
virtuals removed and replaced with override where necessary, clang-tidy to the rescue.
2024-03-18 18:13:00 +00:00
AzaezelX 67af2e0e0c resolve ambiguity
clang + ninja via clion disliked a string assignment from a case that could feed a string either another string or a char *, soi used the latter acroiss the board
2024-02-04 00:08:54 -06:00
AzaezelX 7c5490e841 when pasting, ensure you add a unique name
object names are namespaces, so they cannot match or it confuses the lookup tables
2024-01-29 13:06:02 -06:00
James Urquhart 97d7d2e992 Alternate fix for castRay issue 2023-11-04 22:06:13 +00:00
marauder2k7 cbe2bd4c7b Conversions
Commit from Azaezel to fix the naming of inspector fields.
TypeMatrixField still messes around on first responder, we know these functions convert angAxis to eul properly and from eul to angAxis but when the data comes to TypeMatrix it changes.... weird issue is weird.
2023-06-11 21:59:03 +01:00
AzaezelX 0ce2da3a23 clean up math varsize complaints 2023-04-27 16:10:04 -05:00
Johan Mattsson 7519f18035
Check correct variable 2023-03-04 21:48:42 +01: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
JeffR 7cdace8da3 Fixes bounds scaling issue making the object box in the editor be double the convex's size
Fixes loading of modified surfaceTextures by properly inserting into stringtable
Fixes display of the active and default material previews in the ConvexShape editor
Adds buttons to hollow and recenter selected convex to tool window
2022-06-12 04:27:32 -05:00
JeffR dff83182e2 Added sanity check to ensure that the requested file to be scaled via saveScaledImage actually exists
Shifts integration of other modules with the OptionsMenu so other modules can inject their own options categories to a callOnModules hook
Updated ExampleModule to use new options menu integration angle to show example option
Deleted unneeded dropdown_textEdit_image asset def from baseUI
Fixed incorrect internal values for the terrainIcon_image asset def that made it present as a redundant terrain material asset
Cleaned up old, bad loadFilters calls and replaced them with the proper refresh() calls.
Removed old, bad calls for jumping through the asset browser's tree from when it was still hardcoded organization, which cuts down a lot of error spam
Cleaned up some of the asset type's preview image assignment code to be more reliable
Made terrain materials now use a similar preview proxy shape as regular materials
Fixed erroneous duplicate GuiInspectorTypeShapeAssetPtr::onControlDropped, which was breaking drag-n-drop actions of shapeAssets into inspector fields
Added proper logic for drag-n-drop actions of imageAssets into inspector fields
Add sanity check after creating new asset to avoid redundant attempts at initialization of the new asset
Fixed ConvexShape Editor tooling so you can now use the UI to apply the selected material to the selected surface
Added tools menu to the menubar with the Project Importer entry so the PI can be launched from either tool
Implemented ability to drag-n-drop imageAssets onto MaterialEditor map fields and have it work
Implemented ability to drag-n-drop imageAssets onto TerrainMaterial Editor map fields and have it work
Made the TerrainMaterial editor dialogue have a non-modal background so you can interact with the editor as normal while it's up
Add sanity check to avoid attempting to mark EditorTree items if we couldn't find it's id
renamed BaseMap references in terrain material editor to diffuseMap for consistency
2022-03-27 03:05:48 -05:00
AzaezelX 0dcd272b87 clean up more texture profile refs to kill spam 2021-10-31 14:38:02 -05:00
AzaezelX f5600826d7 Merge branch 'Preview4_0' into SoundAssetImplements
# Conflicts:
#	Engine/source/T3D/assets/assetImporter.cpp
#	Engine/source/forest/forestItem.cpp
2021-10-11 20:11:27 -05:00
Robert MacGregor 1b6b803a20 * BugFix: Clear a lot of warnings and correct a few actual programming errors along the way. 2021-10-04 20:04:21 -04:00
AzaezelX 98a079a797 code duplication prune. should aid in stability 2021-10-03 02:56:26 -05:00
Brian Roberts 97ddb97410
Merge pull request #594 from JeffProgrammer/executef-fixes
Fix specific usage of Con::executef where it was not being assigned t…
2021-09-25 18:13:27 -05:00
Jeff Hutchinson 755bbacaa0 Fix specific usage of Con::executef where it was not being assigned to a ConsoleValue before getting it's data out of it. 2021-09-24 19:32:57 -04:00
Robert MacGregor 12f4af51f5 * [Editor] BugFix: Fix a crash that sometimes occurs when groups of objects are deleted in the world editor. 2021-09-24 17:58:17 -04:00