Commit graph

1682 commits

Author SHA1 Message Date
marauder2k7 fc8a281113 Update WorldEditorInspectorWindow.ed.gui
Scroll bar was extending beyond its parents extent making it render incorrectly.
2024-03-20 19:01:08 +00:00
Areloch b1f71bab74 Adds handling for the keyboard remap page of the options menu to be able to present a bind with a modifier key 2024-03-19 23:05:03 -05:00
marauder2k7 51624b7ce8 macosx changes
changes required to get masox to run.

Some further changes possible required around resourceHolder in future.

The geometry shader works in macosx with gl version 3.3, though i do think some changes are required internally to account for a lack of OUT_col%
2024-03-15 15:17:25 +00:00
marauder2k7 a7dabae88a Update helperFunctions.tscript 2024-03-14 11:30:52 +00:00
marauder2k7 bd7bbd782c Revert "Merge branch 'development' into ShaderConstBuffer-CleanupRefactor"
This reverts commit ae11d996d9, reversing
changes made to e6c653c441.
2024-03-14 08:32:29 +00:00
marauder2k7 ae11d996d9 Merge branch 'development' into ShaderConstBuffer-CleanupRefactor 2024-03-14 08:28:29 +00: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 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 66d8f0f55c Update profiles.ed.tscript 2024-03-05 13:15:54 +00:00
marauder2k7 b2095db575 can key focus 2024-03-04 17:15:13 +00:00
AzaezelX 24562e6758 aug ArrayObject to have a uniquePair command
like uniqueket and uniquevalue, removes duplicate entries, but only if *both* match
also, use that for the populateAllFonts() cache generator
2024-03-03 22:04:09 -06: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 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
marauder2k7 6355da5df6 various fixes
STB probably shouldn't fail on failed info, just continue.
Assimp only add sequences if there are any.
Update kork chan asset.
2024-03-01 15:01:47 +00:00
AzaezelX 3ab716063f doc correction 2024-02-23 12:39:26 -06:00
AzaezelX 4d1395dd57 from mar: fix the opengl cookie uv lookup 2024-02-23 11:23:07 -06:00
AzaezelX c27b9bf48f allow spotlights specifically to comprress ies based on angle differentials 2024-02-23 01:28:15 -06:00
AzaezelX bbe9bc8871 missed a 1d convert 2024-02-22 23:47:57 -06:00
AzaezelX 14b6822e49 a) use a 1d texture for this
b) if we're going to optionally assign iesProfiles via shadowMacros.push_back, should specify the entries for the samplers too
2024-02-22 17:53:53 -06:00
AzaezelX 0b7fd2f0b3 ies bugfixes 2024-02-22 16:00:26 -06:00
marauder2k7 7fb14e17b5 Create jelly-fish.ies 2024-02-21 10:16:07 +00:00
marauder2k7 973d2792ed Delete A23D-Pathway-&-Accent-Light.ies 2024-02-21 10:15:44 +00:00
marauder2k7 3b4a15d7aa Some test ies profiles
IES profiles to my knowledge are not only free to download, but also free to distribute. you can get packs with thousands of these, i am uploading 3 test ones for now.
2024-02-21 10:14:29 +00:00
marauder2k7 39ec0305f9 GLSL To match
Update the glsl side to match hlsl ies profile usage
2024-02-21 08:24:24 +00:00
marauder2k7 4417462499 Add support for both ies and cookie
Both ies and cookies can now exist on a light

We are still not using all the capabilities of an IES profile, such as candela and luminance values we are just using them as a mask for the moment

Issues compiling on mac and linux, will need to update the ies-loader to use torque methods instead of std::
2024-02-21 07:40:57 +00:00
marauder2k7 a12d915180 Loads an IES Photometric profile.
ADDED: Ability to add IES profile as the cookie texture slot in both point lights and spot lights

TODO:
Have the IES Profile also drive the settings for the lights.
Make it work with Cookie textures. IES profiles are to be another slot in the advanced light section.
2024-02-21 06:22:37 +00:00
Brian Roberts 429585f060
Merge pull request #1217 from Azaezel/alpha41/crashFyxMatED
temp workaround for material editor crash
2024-02-20 14:12:16 -06:00
AzaezelX 60758dd5a2 temp workaround for material editor crash
selection swapping is causing an apcrash
notDirtyMaterial.delete(); *should* work, but we know what they say about assumptions.
supressing deletion of workspace material kill off and recreation pending proper review
2024-02-20 14:11:58 -06:00
Areloch 7563130545 Fixes the guiEditor inspector search bar extents and clear button position 2024-02-14 00:34:52 -06:00
Areloch 3734ef8e5b Added search behavior to guiEditor's inspector as well 2024-02-14 00:23:27 -06: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
Brian Roberts 59fc6d3d65
Merge pull request #1214 from Azaezel/alpha41/fixAnimScrubberPos
fix animation scrubber position
2024-02-10 15:15:40 -06:00
AzaezelX 7c7a213f94 fix animation scrubber position 2024-02-10 15:15:09 -06:00
AzaezelX acef688a45 correct main entry to 128 2024-02-10 14:49:54 -06:00
AzaezelX ddddf112a4 revert "defaulting" to shapeEditorplugin 2024-02-10 14:43:35 -06:00
AzaezelX 85e5cfec3c set object editor previewBackground element to .5s instead of .0s to stop blowing up eye adaption 2024-02-10 14:41:12 -06:00
AzaezelX 359ec3aa43 set object editor previewBackground element to .5s instead of .0s to stop blowing up eye adaption 2024-02-10 13:47:44 -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 1ee85334b0
Merge pull request #1197 from Areloch/UpdateBaseUILoadingScreen
Updates the loadingGUI to utilize the same panels for the background coloration that the other new menus use, rather than a bitmap.
2024-02-04 00:12:01 -06:00
Brian Roberts e68643c6ce
Merge pull request #1194 from Areloch/onClientMissionLoadedCallback
Adds a callGamemodeFunction invoke for when the client is done loading the mission so the gamemode can do stuff once the player is done loading, but before fully connecting/spawning in
2024-02-04 00:10:29 -06:00
Brian Roberts 4078a41f17
Merge pull request #1198 from Areloch/MiscBaseGameFixes_20240203
Misc BaseGame fixes
2024-02-04 00:10:09 -06:00
Brian Roberts f940360b96
Merge pull request #1199 from Azaezel/alpha41/sfxSafties
sfx safeties
2024-02-04 00:09:56 -06:00
Areloch 1bdaef9f82 * Ensures the HDRBloom pref is properly set as part of the default settings
* Adds a few input names to the bitmap button lookup for the BaseUI logic
* Properly defaults the current menu index for the GameMenu gui
* Ensures that all editing actions for forest editor flag the editor/map as dirty for saving
* Ensures editor messageBoxes are properly focused on popping up
* Returns the newly created camera bookmark objects from their create functions
2024-02-03 23:15:35 -06:00
AzaezelX c4b30b74fd clarify variable types. you want to pass assetIDs, not actual profiles 2024-02-03 22:39:21 -06:00
Areloch 303a107c29 Updates the loadingGUI to utilize the same panels for the background coloration that the other new menus use, rather than a bitmap. 2024-02-03 18:03:55 -06:00
Areloch aa3d51c3cc Removes some old entity/component code from the level load process that isn't used anymore 2024-02-03 17:16:41 -06:00
Areloch b0b0cbfaef Adds a callGamemodeFunction invoke for when the client is done loading the mission so the gamemode can do stuff once the player is done loading, but before fully connecting/spawning in 2024-02-03 17:09:11 -06:00
Areloch 9c643a69cf Adds a callback invoke for objects in the scene to inform them if the level is being saved. Allows for certain special actions, like having objects reset to an original position before the save occurs. 2024-02-03 16:24:12 -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
marauder2k7 e6554e9abc Merge remote-tracking branch 'upstream/development' into STBImageLoading-PR 2024-01-23 08:48:12 +00:00
Brian Roberts b66445e85f
Merge pull request #1187 from Azaezel/alpah41/callOnChildrenAUG
extended onCreateGame functionality
2024-01-22 18:59:34 -06:00
AzaezelX cf56265789 extended onCreateGame functionality
now also trips on object instances and datablock namespaces
ensures there's a generic hook for post-load processing for objects created by a scene to reference other objects created during that process
2024-01-21 22:16:15 -06:00
marauder2k7 68a7dadd2b Merge remote-tracking branch 'upstream/development' into STBImageLoading-PR 2024-01-21 20:14:53 +00:00
AzaezelX 2dc67d5b43 fix orm compositing save script
also fix emissive checkbox savestate retrieval
2024-01-20 17:50:12 -06:00
marauder2k7 7216ba8530 Revert "revert #1148 as prematurely incorporated"
This reverts commit f946088214.
2024-01-20 18:01:57 +00:00
Brian Roberts a919d53eee
Merge pull request #1182 from Azaezel/alpha41/revertSTB
revert #1148 as prematurely incorporated
2024-01-19 13:21:02 -06:00
AzaezelX 86408058a3 fix vheicle add dropwdown spawntypes 2024-01-17 13:11:43 -06:00
AzaezelX f946088214 revert #1148 as prematurely incorporated
it's getting there, but there have been a few spots noted where it eroneously corrupts text, so we'll have to pull this back out for a bit barring a proper resolution
2024-01-11 13:33:03 -06:00
AzaezelX fb6ec7bb6e ObjectBuilderGui augs
1) adds a buildAIPlayer entry so we can tag it as a bot while still using the normal playerdata datablock
2) adds a "contol?" tickbox for player, and the 3 vehicle types when spawning one that will put the editor directly into control on creation
2024-01-08 19:28:38 -06:00
Brian Roberts cf7e9f7a00
Merge pull request #1172 from Areloch/BaseUIUpdate_Wipwork
BaseUI Update
2024-01-05 14:30:00 -06:00
Areloch 833d17ccfc - Cleaned up elements in ChooseLevelMenu and ensured onscreen button had correct command
- Ensured there's always a level selected by default on the chooseLevelMenu
- Added a small delay to try and ensure the level/server config tab key hints align properly
- Added logic so you can't swap to server config page on chooseLevelMenu if in single player mode
- Added server description to server details line on JoinServerMenu
- Ensured programmatically added elements aren't saved out if GUIs are edited
- Fixed back-out prompt in OptionsMenu properly backs out so it doesn't break menu nav
2024-01-04 20:30:11 -06:00
AzaezelX f4491f8202 typofix. also, repopulate pref GuiTextEditCtrl each onWake just to be sure 2024-01-04 13:10:17 -06:00
AzaezelX e4342079f1 function ChooseLevelMenu::fillPrefEntries( %this ) utility method to set gui elements to prefs 2024-01-04 12:55:07 -06:00
AzaezelX 2fee2902f6 don't automatically set the server password 2024-01-04 12:07:57 -06:00
AzaezelX 5e334eb196 don't save map population elements when editing
track addOption entry/slider/group position in the overall list, and use that found key to hook in the "<" and ">" subelements for selection purposes
2024-01-04 11:54:28 -06:00
Areloch c809dbb4be - Ensures if there is a $pref::server::password set and you're creating a localConnection game, you can connect even if you don't have a client password set
- Changed ChooseLevelMenu layout to have a vertical list for levels with a static preview set, as well as a separate tab for server configs if trying to create a server
- Added field to set password for connecting to passworded servers on the JoinServerMenu
- Added sanity check so you can't try and activate a menuList that has no children(caused error spam)
2024-01-03 23:45:36 -06:00
Areloch 150684a47d - Complied the SystemMenu buttons to the groupNum highlighting implementation as they're simple buttons
- Fixed issue of Query Server on-screen button tripping a join action
- Added playername textEdit field to Join Server menu
- Fixed issue of messageBox on-screen buttons not making the input events properly after adding the make/break check from prior commit
- Added MenuTextEditProfile for editable text fields in menu
- Fixed issue of not getting the correct shift key bitmap if the button name was l/rshift
2024-01-01 14:11:43 -06:00
Brian Roberts 51426a3575
Merge pull request #1148 from marauder2k9-torque/STBImageLoading-PR
Stb image loading
2024-01-01 08:48:46 -06:00
Brian Roberts 2a577d19eb
Merge pull request #1150 from Azaezel/classPrototypingPresenter
Class prototyping presenter
2024-01-01 08:46:45 -06:00
Areloch e71880b898 - Added a companion global var array for $AudioChannelsName[x] as well as utilizing $AudioChannelCount for keeping better tabs on the active defined audio channels. This allows modules to establish new channels more easily
- Updated the handling of the option slider entries to utilize temp vars and properly complied the audio channel options to the new setup
- Fixed issue where behavior of slider was erratic because of improperly defined tick count
- Added logic to check if audio sliders were changed for the 'check unchanged settings' logic
- Made the keybind remap inputCtrl ignore axis events
- Made the MessageBoxDlg input commands properly check for key makes, to prevent messages boxes from catching key breaks and blowing past follow-up messageboxes accidentally
- Fixed forward/backward iteration of options entries, especially on dpad, and added handling for gamepad stick to do the same
- Added logic so option sliders can also be manipulated by the forward/backward to make it standard for all
- Fixed erroneous marking of "restart required" message as true if any settings change, and not just settings expressly flagged as requiring a restart
2024-01-01 01:42:53 -06:00
AzaezelX 733c9d4b6d clean out unnecessary position set
add a new route for the asset browser to create things in the form of  ".on" @ %assetType @ "GUIEditorDropped(" @ %assetDef @ ",\"" @ %pos @ "\");";
demonstrate it with a soundasset creating a  GuiAudioCtrl when drug onto the canvas
2023-12-31 13:04:45 -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 54a4510bc6 add add dropdown to gui editor
also added general guieditcanvas createobject, onfinishcreateobjec,t and onobjectcreated methods for callback injection points
2023-12-30 23:55:59 -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 36d00e09d3 - Fixed Back on-screen menu button for OptionsMenu wasn't working
- Fixed MainMenu buttonlist not navigating with keybinds after going to optionsMenu and going back
- Fixed menu title text clipping
- Fixed keybind preview images on keybind lists in OptionsMenu being modal
- Fixed btn_l and btn_r bitmap button binding not working
- Fixed a/b and x/y button bitmaps on xbox controllers being flipped
2023-12-27 01:36:58 -06:00
Areloch 6e101595d6 Merge branch 'BaseUIUpdateWipwork_20231219' of https://github.com/Areloch/Torque3D into development 2023-12-26 21:29:24 -06:00
AzaezelX caa93e2179 leverage writeapppend to add any new info requested.
filter out pre-existing callback defines
2023-12-24 15:18:18 -06:00
AzaezelX ace243171e file saving 2023-12-24 12:03:48 -06:00
AzaezelX ca31e4c2c9 leverage the new getMethodSigsNS, getFieldCountNS, and getFieldNS
functions to look up methods and (hardcoded) variables from the classrep rather than creating an instance
this did cost us dynamic variable listing, but that's runtime assignment as-is and can likely be referenced another route in the end
2023-12-24 03:27:18 -06:00
AzaezelX 428f22d728 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into classPrototypingPresenter 2023-12-23 21:29:17 -06:00
Areloch 5d2d04791d Cleaned up old, deprecated apply function causing confusion
Cleaned up old refs to previous unapplied changes system
Added comments to some critical functions to better explain their behavior and purpose, as well as referencing the source files for the graphic and audio options groups
2023-12-21 23:59:19 -06:00
AzaezelX cbc8905e05 add an $undoIgnoreList
of variable names for the editor's genericundoaction to ignore
mostly aimed at action buttons
2023-12-19 22:44:09 -06:00
Areloch df00543502 Implemented apply changes logic
Updated autodetect graphics to complete to new apply changes rules
Made it so gamepad can activate key rebinds
2023-12-19 16:37:23 -06:00
Areloch 70e121595f Most of the keybind/remap stuff finished
Fixed up most of the options apply logic
2023-12-19 02:36:43 -06:00
Areloch 55697cffdb Streamlined baseUI profiles
Implemented audioOptions file with structure to comply to BaseUI options menu
Implemented majority of keybind remapping logic for options menu
2023-12-18 23:49:13 -06:00
Areloch f14c96c2bc Standardized titlebar formatting
Cleaned up some unneeded fields in the gui files
Fixed up querying presentation for joinServerMenu
Removed usages of background image in favor of guiProfiles for various menus
Implemented optionsMenu traversing options categories along with required keybinds
Adjusted some guiProfiles' font sizes to improve legibility on smaller displays
2023-12-17 03:27:30 -06:00
Areloch ce4c8dabc9 Ongoing wipwork of the BaseUI update. Some bugfixes pending 2023-12-16 23:18:33 -06:00
AzaezelX 32c7eb1702 correct mission saveas logic 2023-12-11 12:51:57 -06:00
marauder2k7 ace9cc328b Update assetImport.tscript
add extra formats for stb_image to asset importer
2023-12-08 05:06:24 +00: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 8c38448428 probe capture fixes
review of per and post bake protocols showed that the CAPTURING shader macro was not being properly recompiled in. as opengl was not playing nice with a simple batch shader recompilation for all effected shaders, a full lightmanager restart is at time of writing required. once we have a proper globally cached scene structure stored off GPU side, we'll want to change  GFXShader::addGlobalMacro("CAPTURING", String("1")); on over to dirtying that value in the cached buffer via setting a shader global uniform
review of prefilter examples shows a fixed sample count of 1024 across multiple implementations, so we'll use the standard barring further research into where that number is comming from for a scalar approach
review of gl shaders shows a doubleup in compiled state testing, so slimmed that down and added additional debugging reports
2023-12-05 13:32:03 -06:00
AzaezelX 045c15fd26 Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into classPrototypingPresenter 2023-11-29 14:16:37 -06:00
AzaezelX 9b7d99fc1d typofix 2023-11-29 13:34:27 -06:00
Brian Roberts bb6bc91615
Merge pull request #1144 from Azaezel/alpha41/brdfbadness
overdark causality review
2023-11-29 02:26:39 -06:00
AzaezelX ccfe2478b7 overdark causality review
two things stuck out as proximal causes for an overdark result on community review
1) $PostFX::HDRPostFX::keyValue was significantly too low given existing calculations, so upped that to 00.5 in keeping with the general assumption were remain intending to have that be the dead center value of a luminance range
2)  Fr_DisneyDiffuse input assumptions differ from current engine ones, so reverting that to lambert .
2023-11-28 19:34:09 -06:00
Areloch d867c1f7d0 - Adds Color Calibration card and Material Grid for reference resources to prototyping module
- Adds arrow primitive shape to prototyping module
2023-11-28 18:54:50 -06:00
AzaezelX 4b86e112c8 add safeties 2023-11-24 15:58:35 -06:00