GDK for Unity Alpha Release 0.3.3
In this release, we've added support for the cn-production environment, upgraded to the latest Worker SDK 14.4.1, and introduced a public toolkit for writing code generators.
The GDK will automatically generate valid run configurations for the code generator that work with Jetbrains Rider, Visual Studio, and the dotnet CLI. This means that you no longer need to keep the Unity Editor constantly open to iterate on generators.
We've also fixed a couple of annoying code generator issues, and a bug where build targets not marked as required weren't actually skipped if the user did not have the build support installed.
There are a few breaking changes in this release, so please follow the upgrade guide to resolve any issues.
Keep giving us your feedback and/or suggestions! Check out our Discord, our forums, or here in the Github issues!
See the full release notes below! 👇
Breaking Changes
- Your generated code Assembly Definition file now needs to have
allow unsafe codeselected to compile. #1255 - The
RedirectedProcess.WithArgsAPI will now concatenate arguments, instead of replacing the previously provided arguments. #1260 - Building for Android clients now requires the Android NDK to be installed and configured on your machine. #1265
- Renamed
AndroidLaunchUtilstoAndroidUtils, andiOSLaunchUtilstoiOSUtils. #1269
Added
- Added public toolkit for writing code generators. #1240 #1243 #1244 #1245 #1250
- Added support for the
cn-productionenvironment. - Added
RedirectedProcess.Spatialwrapper for calling thespatialCLI. This wrapper automatically uses the current project environment. #1260 - Added generation of code generator run configurations for Jetbrains Rider, Visual Studio, and the
dotnetCLI. #1256- This means you no longer need to keep the Unity Editor constantly open to iterate on generators.
- The code generator now logs an error when an input schema source directory does not exist. #1256
Changed
- Upgrade to Worker SDK v14.4.0. #1260
- The
Raknet,Tcp, andKcpnetwork protocols have been deprecated. Please useModularKcpandModularTcpinstead. ModularUdphas been renamed toModularKcp.
- The
- Changed the Worker SDK package installed for iOS. #1268
- Changed
c-static-fullylinked-arm-clang-iostoc-static-arm-clang-ios. - Changed
c-static-fullylinked-x86_64-clang-iostoc-static-x86_64-clang-ios.
- Changed
- Upgrade to Worker SDK v14.4.1. #1274
Fixed
- Fixed a bug where build targets which were not marked as required were not skipped if the user did not have the build support installed. #1257
- Fixed a bug where code generation would fail due to
dotnet newfailing to run. #1262 - Fixed a bug where
schema_compilererrors would be swallowed by the code generator. These should now appear in the Unity Editor and the log file as expected. #1266
Internal
- Implemented a new CodeWriter in the code generator which provides a fluent interface for generating C# code. #1237
- The
CodeGenerationLibhas been migrated to the newCodeWriter.
- The
- Added support for defining namespaces, structs, classes, enums and methods in the new CodeWriter. #1239
- Ported test-project to new CodeWriter. #1241
- Ported build system module to new CodeWriter. #1242
- Ported gameobject creation module to new CodeWriter. #1247
- Ported core module to new CodeWriter. #1247 #1248 #1249 #1251 #1252 #1253
- Removed all Text Template Transformation Toolkit (T4) references and dependencies. #1254
- Simplified dirtyBits logic and code generation #1255
- The DeploymentLauncher now uses Platform SDK v14.4.0. #1260
init.shandinit.ps1now support the--chinaand-chinaflag respectively to download from thecn-productionenvironment. #1261- Simplified code generation for Command classes and relevant interfaces. #1263
- Added
--forceflag to the CodeGenerator project to skip the dirty checks and re-generate everything. #1263 - Added the
targetiOSSdkcommandline argument for CI builds for selecting eitherdeviceorsimulatortarget when building iOS. #1269