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 code
selected to compile. #1255 - The
RedirectedProcess.WithArgs
API 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
AndroidLaunchUtils
toAndroidUtils
, andiOSLaunchUtils
toiOSUtils
. #1269
Added
- Added public toolkit for writing code generators. #1240 #1243 #1244 #1245 #1250
- Added support for the
cn-production
environment. - Added
RedirectedProcess.Spatial
wrapper for calling thespatial
CLI. This wrapper automatically uses the current project environment. #1260 - Added generation of code generator run configurations for Jetbrains Rider, Visual Studio, and the
dotnet
CLI. #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
, andKcp
network protocols have been deprecated. Please useModularKcp
andModularTcp
instead. ModularUdp
has been renamed toModularKcp
.
- The
- Changed the Worker SDK package installed for iOS. #1268
- Changed
c-static-fullylinked-arm-clang-ios
toc-static-arm-clang-ios
. - Changed
c-static-fullylinked-x86_64-clang-ios
toc-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 new
failing to run. #1262 - Fixed a bug where
schema_compiler
errors 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
CodeGenerationLib
has 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.sh
andinit.ps1
now support the--china
and-china
flag respectively to download from thecn-production
environment. #1261- Simplified code generation for Command classes and relevant interfaces. #1263
- Added
--force
flag to the CodeGenerator project to skip the dirty checks and re-generate everything. #1263 - Added the
targetiOSSdk
commandline argument for CI builds for selecting eitherdevice
orsimulator
target when building iOS. #1269