Commit graph

604 commits

Author SHA1 Message Date
Brian Roberts 05a083ca6f
Merge pull request #1234 from marauder2k9-torque/virtuals-override
Virtuals override
2024-03-21 10:43:26 -05:00
AzaezelX 8549c17a42 crashfix for inpector dynamic field editing 2024-03-20 14:32:09 -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
marauder2k7 89843b541c Merge remote-tracking branch 'upstream/development' into ShaderConstBuffer-CleanupRefactor 2024-03-14 08:32:38 +00:00
marauder2k7 e6c653c441 warnings cleanup
cleanup and some warning fixes
2024-03-14 08:28:11 +00:00
AzaezelX 07ed59a872 TORQUE_TOOLS off compile fix
fix a cornercase for when TORQUE_TOOLS is #undef at the torqueconfig.h level
2024-03-10 14:29:17 -05:00
marauder2k7 fbed04050a gui shaders for opengl
First opengl geometry shader along with the other shaders for gui rendering opengl side.
2024-03-09 18:34:43 +00:00
marauder2k7 d9c4269d8b bug fix
deleteSelection when an output node had multiple connections only the first one was deleted, needed a new function to return a vector of connections that are now looped and deleted at the end of delete selection.

few other minor additions and fixes.
2024-03-07 17:22:48 +00:00
marauder2k7 dbbd9383e7 better rounded rect 2024-03-07 10:20:06 +00:00
marauder2k7 0d448ad761 smoothing out results from gui shaders
roundedRectangle and circle drawing now smooth out their results
2024-03-07 09:47:18 +00:00
marauder2k7 2dc623df7e material output node
material output node added

colors denoting node sockets added. this will probably be changed.
2024-03-06 19:57:18 +00:00
marauder2k7 c9d70de609 extra draw gui
add the extra functions for drawing gui elements
RoundedRectangle:

All draw rect functions now pass through roundedRectangle which uses a shader and can draw borders, and rounds the corners

Draw thick line:
draws a line thicker than 1 pixel, uses a geometry shader to do this

Draw Circle:
Draws a circle with a border parameter.
2024-03-06 17:27:18 +00:00
marauder2k7 808e2f4200 Groundwork for other shaders
Adds the ground work for geometry shaders
Expands shaderData and gfxShader to allow for more shader types

note: when building a GFXShader in source you have to call setShaderStageFile with the shaderStage and the filepath for that stage.

Once we add compute shaders this will become more apparent as compute shaders are a stage of their own and do not require vertex and pixel files whereas other shaders sometimes do.
2024-03-06 13:26:39 +00:00
marauder2k7 949f788a0a connections
connections rendering and logic finished.
can make rendering better in future updates such as using geo shaders for bezier curves and smoother lines.
2024-03-05 20:39:33 +00:00
marauder2k7 155dfe0c69 more options for nodes
render nodes with GuiShaderEditor border colors
node size now changable.
2024-03-05 13:15:33 +00:00
marauder2k7 b2095db575 can key focus 2024-03-04 17:15:13 +00:00
marauder2k7 daa0cfef3a shader node editor test
node editor functioning correctly, connections needed next
shader nodes to be added in the next commit also
2024-03-03 21:13:58 +00:00
marauder2k7 6e85b43088 backup before connections
everything in shaderEditor now finished only thing left to add is the connections.
2024-03-03 19:24:49 +00:00
marauder2k7 be0689549a place functions in cpp
stop cli bitching.....
2024-03-02 20:14:11 +00:00
marauder2k7 457cdd00bb shader editor ground work
Adds the ground work for shader editor
Adds the base gui for the shader editor
2024-03-02 20:09:45 +00:00
Areloch d890c530f9 Adds logic to be able to set a search string on an inspector that will be used to filter displayed fields.
Adds a textEdit filter box to the main world inspector that hooks into the primary inspector for said search functionality
2024-02-13 20:33:14 -06:00
AzaezelX de87d2f6ad fix guishapeedpreview not displaying IBL
note this *does* require a baked skylight in the main scene
todo: track down why a similar protocol does not operate for guimaterialpreview and guiobjectview
2024-02-10 13:36:55 -06:00
Brian Roberts 600a6b8ebc
Merge pull request #1192 from Areloch/EditorPopupEXFieldExpansion
Usability improvements for editor fields utilizing popup menus
2024-02-07 19:29:07 -06:00
Brian Roberts 3fd4cbdb89
Merge pull request #1207 from Areloch/ImageAssetArrayInspectorFix
Fixes the handling of imageAssets for array'd field types, as well asfixing the editor behavior of guiBitmapCtrl so the imageAssets correctly update the fields upon editing
2024-02-04 15:49:20 -06:00
Areloch 7ef4552196 Fixed category filtering logic for datablockField populateMenu 2024-02-04 15:25:35 -06:00
Areloch 1e21cc678f Fixes the handling of imageAssets for array'd field types, as well as fixing the editor behavior of guiBitmapCtrl so the imageAssets correctly update the fields upon editing 2024-02-04 14:45:19 -06:00
Brian Roberts ceec0dfb5b
Merge pull request #1205 from Areloch/ForcedArrayIndexInspector
Adds ability to force the inspector to only show a set index of array'd fields.
2024-02-04 11:27:50 -06:00
Areloch 4646d5eac3 Adds ability to force the inspector to only show a set index of array'd fields. Mostly for specific editor tool use(like editing material's individual layers/stages) 2024-02-04 00:21:54 -06:00
Brian Roberts 79e06af6dd
Merge pull request #1204 from Areloch/MLTextTypeOut
Adds ability for MLTextCtrl to type the characters out over time
2024-02-04 00:14:58 -06:00
Areloch 6de92264f6 Adds ability for MLTextCtrl to type the characters out over time 2024-02-04 00:13:33 -06: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
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
Areloch d952722811 Updates the field types used in the editor to utilize the GuiPopUpMenuCtrlEx to make them support categories and be able to search filter them
Updates the dataBlock field type to properly present categorized listings
Expands the datablock Field to have an edit and add buttons on the field to make the workflow simpler
Adds utility functions to GuiPopUpMenuCtrlEx to control indentation, categories and searchability
Expands datablock editor functionality to be able to create a datablock of a type to pre-set the inheritFrom param of the process early(used for the add new button on DB fields to carry-through the current DB to the creation process of a derivative)
2024-02-03 16:10:28 -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
Brian Roberts d3babcdbda
Merge pull request #1177 from Areloch/SearchFilterPopupCtrl
Search filter popup ctrl
2024-01-09 11:28:08 -06:00
Areloch 192862ba6d Cleans up removal/deletion logic 2024-01-09 04:00:51 -06:00
Areloch 829cc2b24a Adjusts some of the loading logic, for guiBitmapCtrl mostly, to not try and load ALL image content upfront during client init, improving load times 2024-01-07 23:09:41 -06:00
Brian Roberts cf7e9f7a00
Merge pull request #1172 from Areloch/BaseUIUpdate_Wipwork
BaseUI Update
2024-01-05 14:30:00 -06:00
Areloch 67ac556ecd - Added ability to explicitly execute a guiControl's console and altConsole command
- Fixed formatting of resolution strings for the internal values, allowing them to be properly parsed and applied by the options menu/canvas
- Fixed display of Display Device on option's menu
- Fixed Issue of it not displaying any keybinds in keyboard/gamepad options if there's only a single actionmap
- Added 'hold to scroll' action to optionsMenu
- Added apply button to options menu
- Added remap button to options menu when on keyboard/gamepad keybinds categories
- Fixed up the remap logic so remapping a key only unbinds the matched device being bound, so binds for different devices are untouched
- Made keybinds options properly refresh when keybinds are changed
- Shifted keyboard "go" keybind for menu nav from Enter to Space for easier use
- Removed stick keybinds from gamepad
2023-12-31 12:46:48 -06:00
AzaezelX 905139f500 make const RectI GuiWindowCtrl::getClientRect() respect ResizeMargin for sub elements 2023-12-29 12:55:28 -06:00
AzaezelX ea63a7448e expose guiwindowctrl resize margin to script
also up the default to 5 pixels
2023-12-29 12:15:30 -06:00
Areloch f5ab97242f - Added logic to guiButtonBaseCtrl so if highlighted and is part of a group, will signal the siblings in the group as well
- Standardizes highlighting behavior between keybind and mouse highlighting of buttons
- Standardized onHighlighted callback for buttonBase
- Fixed handling of up/down nav with gamepad stick
- Added logic to make holding down nav keybinds iterate over buttons in menu lists
2023-12-27 11:42:43 -06:00
Areloch 4f399eb87f Expanded functionality of the guiPopupCtrlEx to support search filtering 2023-12-25 17:00:51 -06:00
AzaezelX 4ed617f7df fix type list popup display 2023-12-20 18:51:12 -06:00
Areloch ce4c8dabc9 Ongoing wipwork of the BaseUI update. Some bugfixes pending 2023-12-16 23:18:33 -06:00
Areloch 616d974212 Wipwork for updating the BaseUI
Adds ability to select an actionmap for a GuiInputCtrl which will push it onto the stack, so menus can enact an action map
Update of the MainMenuGUI to fit new style and have the logic needed for KBM and gamepad navigation
Very early wipwork of OptionsMenu overhaul for new standard
2023-12-06 19:50:51 -06:00
AzaezelX 113b3324a8 filter out component inspector button callbacks
specifically targets the undo manager via avoiding onInspectorFieldModified et al tripping on clicks
2023-11-27 19:45:15 -06:00
Areloch 59247bd9ca Moves the world Editor guis to be based through a tabbed structure to make it easier to begin separating out editor/tool guis into their own tabs or elements for better separation.
Currently establishes the MainScene tab and otherwise retains existing behavior directly
2023-11-14 18:58:58 -06:00
AzaezelX 7a9715654d fix bitmap button state display 2023-11-12 19:49:45 -06:00