Commit graph

937 commits

Author SHA1 Message Date
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
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
AzaezelX c10808873d hook PrototypeClass(%objectName) on up to inspector
fix dialog close, fix dynamic variable gui element alignment
2023-11-24 15:44:54 -06:00
AzaezelX 81b721c755 wipwork for adding a gui driven class callback method prototyper with command and variable reporting 2023-11-24 14:05:55 -06:00
Areloch 14351b03f3 Fixed typo 2023-11-23 13:38:43 -06:00
Areloch 7e5ccc65bd Removed extra PATTERNs from cmakelists 2023-11-23 13:09:54 -06:00
Areloch 431cffac11 Adds the D3DCompiler_47.dll to ensure it's packed and ready for projects when publishing 2023-11-23 12:46:55 -06:00
Brian Roberts 52e7156436
Merge pull request #1138 from Azaezel/alha41/luxTargTricks
lighting corrections:
2023-11-20 12:03:23 -06:00
AzaezelX 593d0ef9f0 lighting corrections:
1) fix spotlight shadow casting. we weren't properly accounting for reversedepthbuffer there
2) fix mismatched variables in forward lit spotlight param array
3) use disney diffuse in the generalized brdf, and apply it for spotlights after angular attenuation, not before
4) .provide a generailze luxTargMultiplier approach for spot and point lights (as well as future growth areas) so that range, angle ect can impact the brightness variable sent to a given light source shader without perpixel overhead
5) for spotlightParams in particular, use sizeof(point4f) for the alignedarray untill that's properly reviewed/revised
6) narrow attenuation slightly based on a given lights dot product to prevent tool vs outcome leakage, plus provide safeties for when a given spotslight's inner and outter angles match identially
2023-11-18 19:05:12 -06:00