Commit graph

36 commits

Author SHA1 Message Date
AzaezelX fbcfe02098 clean up "Add" menubar categoes on the 3d object side via the following:
SceneObject now defaults to a category of "misc"
getCategoryOfClass now checks parent classes for what categories they hold so that variants can inherit
categories are in one of a few rough groups and subgroups depending on actual mapper needs/usages
2023-11-08 20:42:47 -06:00
AzaezelX b1f118898e add TypeHints for inspector viewing
typehints operate as an additional label for a given class in the inspector, allowing one to specify what class-entry to use as a tag
examples: Prefab displays prefab filename
TSStatic displays the used shape asset name
SFXEmitter displays the played sound asset
GameBase derivatives display the datablock used
2023-05-23 12:35:07 -05:00
AzaezelX 5ec4e8fb62 forgot the.h 2022-08-07 15:55:42 -05:00
AzaezelX 4a7104e5ea fix TORQUE_TOOLS = off compilation 2022-06-13 12:38:08 -05:00
AzaezelX 19e4643707 new method tsstatic.getNodeTransform
used to look up a given node's transform by explicit name in a tsstatic object
2021-11-03 21:15:00 -05:00
AzaezelX 98a079a797 code duplication prune. should aid in stability 2021-10-03 02:56:26 -05:00
Areloch 5525f8ecdd Converts all game, gui editor, and system classes to utilize assets
Processed core, tools and default modules to utilize assets
Converted all console types that were string based, such as TypeImageFilename to utilize const char*/the string table, which avoids a lot of type swapping shenanigans and avoids string corruption
Removed unneeded MainEditor mockup module
Removed some unused/duplicate image assets from the tools
2021-07-19 01:07:08 -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
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
Areloch b6a3fb05d9 Adds logical check to skip animated statics when baking selection to mesh. 2020-08-16 02:16:19 -05:00
Areloch a257dc8399 Adds some console preference variables for object fade overriding on TSStatics 2020-08-02 22:33:10 -05:00
AzaezelX 136bc8874f adds an animspeed and animoffset to tsstatic instances so clones can be set to break up syncing on multiples 2020-06-13 12:08:01 -05:00
Areloch 157b114ec7 Added ImageAsset type mode for cubemaps.
Added new inspector type TypeShapeAssetId which is processed as a assetId string instead of an AssetPtr.
Added utility function to ShapeAsset to getAssetIdByFilename, which lets you find - if any exist - the asset that utilizes a given loose file. If it doesn't find one, it can attempt to run an auto-import if the editor settings allow, then proceed.
Fixed callback of the shapeAsset inspector fields so the Open in Shape Editor correctly binds the asset's shape to the editor for modification.
Added function to open a shapeAssetId in the shape editor to facilitate the above.
Added additional check to findShapeConstructor to look up the full path of the shape in the cases where a full path is provided instead of a local path. This prevents the shapeConstructor from not finding shapes that absolutely exist.
Added beginnings of Datablock representation in Asset Browser.
Fixed a few minor issues with asset auto import causing false positive errors, preventing Import or erroneous logging.
Fixed issue where editing of asset import configs didn't save.
Fixed logic of materials in asset browser so they will open in the material editor as expected.
Re-enabled AutoImport of assets editor setting by default.
2020-04-15 12:15:12 -05:00
Areloch 7029024b8e Updated TSStatic to utilize the getShapeAsset utility functions, and shifted the loader logic to utilize ShapeAssets exclusively, having straight file names go through the utility function to find/process a relevent asset. 2020-03-21 00:36:49 -05:00
Areloch 9c381caea2 Added initial implement of Image Types for GFX resource management
Added logic to intercept TSStatic setting shape to try and utilize a shapeAsset if it can find a matching loose file
Added lookup logic for getting any textures inside collada files to streamline asset importing logic
Fixed modal behavior for Import config and import window
Initial implementation of loose file/legacy file importing
Adjusted Asset Browser and Asset Import refreshing behavior to queue to improve performance by avoiding multiple refreshes as well as potential infinite loops
Fixed volume visibility behavior
Fixed physics world viz toggle
2020-02-17 00:32:50 -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 7b5e1c3c58 @rextimmy fix for GuiWindowCtrl so they snap correctly again
Added asset loose files for editor and bake level files on level asset
Correct return of ConsoleGetType on TypeShapeAssetPtr
Adds shape asset support to TSStatic, now will support either raw shape file or ShapeAsset
Adds onInspect function behavior, so when object is inspected, it can do special editor behavior
Adds callback for when editTSCtrl is resized
Added editor setting to force the world editor sidebar(scene tree and inspector windows) to resize to fit to the right side of the screen automatically instead of float
If assimp loader encounters error, it's output into the console log
Makes root Data item in folder hierarchy tree in Asset Browser able to support right mouse popup menu action
Material and Shape assets now correctly base on current browsed folder
Material asset generation now more properly fills out common maps, as well as handles skipped dependencies better
More theme corrections
Updated TestGrid images asset defs to have proper loose file handling
2019-11-18 03:30:04 -06:00
Areloch 98c4606b3c Removed test custom shader bindings until memleak is corrected. 2019-05-27 13:06:15 -05:00
Areloch 3697737498 Merge branch 'ModernEditorLayoutWIP' of https://github.com/Areloch/Torque3D into development 2019-05-13 00:28:23 -05:00
Areloch c283295f22 Merge branch 'CustomShaderFeatures' of https://github.com/Areloch/Torque3D into development 2019-05-11 21:53:08 -05:00
Areloch 8dedcf456a Cleanup of export function to remove redundant arg
Removed unused var
Cleaned up collision export on convexShape
Added prefab export functionality
2018-03-04 16:03:39 -06:00
Areloch 49639a908f Expanded mesh baking functionality, now supporting baking of LODs and Collision meshes 2018-03-01 01:51:18 -06:00
Areloch 7219899287 Working on shader const binding 2017-10-17 08:48:31 -05:00
Areloch 70c154c7d3 Implement of the shader consts binding. 2017-10-10 15:54:54 -05:00
Marc Chapman d4c2eeea98 Selection Highlighting 2017-07-26 23:48:29 +01:00
Marc Chapman 3219735087 meshroad-zodiacs -- MeshRoad customizations for rendering zodiacs on them.
enhanced-meshroad -- adds option for building top-surface-only PolyList.
polysoup-zodiacs -- Changes made for rendering zodiacs on polysoup objects.
groundplane-zodiacs -- groundPlane customizations for rendering zodiacs on them.
special-types -- defines type bits for interior-like and terrain-like types.
special-types -- defines a type bit for polysoup objects.
2017-07-26 22:05:04 +01:00
Areloch 1d754cbbad Makes it so prefabs can correctly 'export to collada' by running the buildPolyList function on it's children.
Also adds a 'Bake Selection to Mesh' option to the tools menu in the editor to export the selected mesh to a collada file, and then replaces the selection with a TSStatic.
2016-12-10 17:27:27 -06:00
OTHGMars a9f77c4ffd TSStatic Mounting 2016-06-17 10:40:22 -05:00
Areloch 98b3d3294d Merge of PR #855 2016-02-16 00:23:02 -06:00
Daniel Buckmaster 84e8cbb4ee Revert recent style cleanup changes. 2015-03-04 11:58:36 +11:00
Daniel Buckmaster 33ff180593 Merge branch 'development' into style-cleanup
Conflicts:
	Engine/source/console/astNodes.cpp
	Engine/source/console/codeBlock.cpp
	Engine/source/console/compiledEval.cpp
	Engine/source/ts/collada/colladaAppMesh.cpp
	Engine/source/ts/tsShape.cpp
	Engine/source/ts/tsShapeConstruct.cpp
2014-12-15 12:15:55 +11:00
Vincent Gee c5f81a85f5 Renamed LOD to Fade. 2014-11-20 08:00:26 -05:00
Vincent Gee c4e3a68f7c Added Alpha LOD to tsStatic objects.
This allows designers to set the start and end distance for Alpha LOD on objects.
2014-11-06 08:54:49 -05:00
Azaezel 5d5e878129 dynamic cubemap support for tsStatics
engine: implements the capacity for tsstatic objects to allow themselves to use the reflector system in order to display runtime generated cubemaps.
script: defines a calibrated reflectordesc that reflects all object types within the space of approximately half stock veiwdistance
usage: cubeReflectorDesc = DefaultCubeDesc placed in a given object-insatnces entry that uses a material with a dynamiccubemap = true; flag.
immediate purpose: consistency of application of materials.
long term impact: tags steps required in order to associate a given runtime generated cubemap with an object-instance. in the future, this is likely to give way to an area-derived cubemap based on the accumulation volume tech developed by Andrew Mac, or a screenspace reflection.
2014-10-23 20:48:58 -05:00
bank 75755e42c0 Rename all member variables to follow the style guidelines (prefixed with the 'm') - class TSStaticPolysoupConvex 2014-05-13 16:15:36 +04:00
DavidWyand-GG 7dbfe6994d Engine directory for ticket #1 2012-09-19 11:15:01 -04:00