Skip to content

February 1 2024

Compare
Choose a tag to compare
@vchelaru vchelaru released this 01 Feb 14:08
· 1087 commits to NetStandard since this release

Biggest Changes

  • Spine support!!! You can now add Spine to your projects. Full documentation available here: https://docs.flatredball.com/flatredball/spine
  • Added AchxToSpineAtlas project for converting .achx files to .atlas files. This includes contributions made by @profexorgeek
  • FlatRedBall Engine .dlls now include a syntax version number property. This will be used to compare the .gluj file version for safer upgrading and better diagnostics.
  • Content loading and caching at the engine level is now case insensitive - this greatly simplifies loading files on case-sensitive platforms like Linux, and will make cross-platform projects even easier to maintain.
  • IDrawableBatches now have their Update methods called earlier in the frame before Update/Activity so that changes to these objects are available on the frame they occur to custom code. This is useful for Spine animations which can update collision.
  • IDamageable now has IsDamageReceivingEnabled and InvulnerabilityTimeAfterDamage ( thanks @treesgobark )
  • IDamageArea now has IsDamageDealingEnabled ( thanks @treesgobark )

Everything Else

FRB Editor

  • Linking a game to FRB source now works correctly if the game is not on the same directory as the FRB/Gum repository
  • The Create New Plugin window now appears where the cursor is located
  • Variables on objects which come from files now can have hard defaults if the variable is not inherited from the file. For example, scale values on SpineDrawableBatch.
  • Fixed possible crash on right click + drag treenode
  • Fixed bug with song Set Volume checkbox not being saved to disk
  • Re-added alt+arrow on Files to reorder files. This is needed for Spine file loading order
  • Improvements to the Add Event window, including appearing at the right location and displaying source objects when drag+droping
  • Fixed the auto-generation of event names in the event window to properly consider tunneled object and selected event name
  • Added support for .fxb files (compiled shaders for FNA)
  • Fixed error output when drag+dropping a file into global content (made it run through a task)
  • Output from build tools is now scanned for "warning" to identify if output that was put in the error stream really should be a warning (fxc)
  • Removed slashes next to the search bar which explained the use of f, e, s, o, and v for filtering searches
  • Refreshing font cache now shows the command line that is called for better diagnostics
  • Refreshing font cache now updates font menbership in the project, increasing the chances of the game project staying up to date to font changes
  • The default variable display on an object that comes from Gum now properly performs recursion to find the true value if inheritance is involved
  • Adding FRB source to a game now handles existing project references better by attempting to remove them from the .sln first
  • Adding or removing favorite projects now updates the project menu in realtime
  • FRB Editor now warns you if you have the same plugin installed at the project level and globally - this can help diagnose problems when building new plugins
  • Added diagnostics about the mgcb version on a machine, useful if MG 3.8.0 is installed instead of 3.8.1
  • Pressing ENTER on polygon window now commits the changes
  • Fixed "object stripping" bug related to having 3 levels of inheritance. This effectively solves a bug SetByDerived would get reverted
  • Fixed "object stripping" bug where HasPublicProperty was ignored when determining what to strip
  • Fixed spacing and newlines on popup about removing instances.
  • Fixed possible crash when pressing STOP on song playing in the FRB Editor
  • Fixed NAudio codegen bug when an NAudio mp3 is marked as LoadedOnlyWhenReferenced = true
  • Fixed selection bug when toggling between Variables on an entity and the Entities folder not refreshing the Variables tab
  • Fixed codegen bug when copy/pasting an entity and types were generated as doubles instead of floats
  • Fixed codegen bug when generating states for colors tunneled on shapes ( thanks @treesgobark )
  • Fixed codegen bug when Gum instances referenced states that have been removed from their source component

Edit Mode

  • Fixed bug where objects could be incorrectly grabbed+moved in edit mode
  • Added more diagnostics when going into edit mode - outputting the exception if there is one
  • FRB Editor can now zoom to 7500% and 10000%

FRB Engine and Code-related

  • Added support for .fxb in ContentManager.Load
  • ShapeCollectionSave.SetValuesOn now updates shapes immediately, useful for diagnosing debugging problems when using animation shapes
  • NAudio songs no longer support values less than 0
  • Calling Sprite.PlayAnimationsAsync now forcefully sets this.Animate = true if any animations are passed in
  • Changing the slider on the Forms SettingView now sets the the entire AudioManager's MasterSongVolume

New Project Templates and Forms

  • Default Forms Slider now has Highlighted and HighlightedFocus states
  • Default Forms CheckBox HighlightedFocusedOff now properly has the check invisible

Full Changelog: Jan_14_2024...February_1_2024