Upgrade Information:June 2010
From Docs
Contents |
Introduction
The June 2010 release of Glue introduces some changes which will break current projects. To continue using projects created prior to the June 2010 release there are two changes which must be performed to fix all errors.
Why were breaking changes introduced?
Whenever we make changes to Glue we attempt to do so in a way that will not cause old projects to break. We generally do this by attempting to isolate changes to the .Generated.cs files which are recreated frequently. Changes which are isolated to these files will silently appear in .Generated.cs files created by the new Glue without any activity required on your part.
Sometimes , however, a change is made which requires changes in non-generated files. For the safety of your code, Glue does not attempt to make these changes.
In this particular case, the changes introduces provide asynchronous loading of Screens. This greatly simplifies the creation of loading screens which are usually a must on the Xbox 360. We apologize for not being able to make this improvement without requiring manual updates to your project. We hope that the added functionality offsets the inconvenience that this release has created.
How to upgrade
1. Update Screen and ScreenManager
The first step in upgrading your project is to upgrade the ScreenManager. If you are running the June 2010 or newer version of Glue, this can be easily done through a Glue menu:
When clicking this option you will see a warning indicating that the Screen and ScreenManager files will be replaced. If you have written any custom code in Screen or ScreenManager, this will be lost. If you would like to keep this code, then you will need to manually locate a FRB template .zip file, unzip it, and merge your changes with the latest Screen and ScreenManager files.
2. Insert CustomLoadStaticContent
This step takes a little longer. You must go through every .cs file (the non-Generated ones) for every Entity and Screen in your project and add the following block of code:
private static void CustomLoadStaticContent(string contentManagerName)
{
}
