Release notes
Don't forget to check out our SDK Upgrade Guide when switching versions!
1.3.1
Published 18.10.2024
Added
Error log in the connection when sending more bytes than the specified MTU.
Moved AutoSimulatorConnection from Coherence.UI into Coherence.Simulator.
Avoid postprocessing assets on clones.
Extended Project window icon to inform about more problems with project configuration.
Changed
Changed
ICoherenceBridge
interface fromEntity UnityObjectToEntityId(CoherenceSync from)
toEntity UnityObjectToEntityId(ICoherenceSync from).
Changed
ICoherenceSync
interface to add accessors for thetransform
andgameObject
property which is in line with theCoherenceSync
behaviour.
Both changes above are considered potentially breaking changes.
Fixed
EntitiesManager now catches any exceptions thrown by user code during disconnection handling, ensuring that the clean up process will finish up properly even if this happens.
Fixed issue with offline commands not working if CoherenceBridge was
null
.WebGL build reliability improved.
Fixed ArgumentNullException in CoherenceSync Editor when a CoherenceSync component was attached to a Prefab instance.
Fixed issue where inspecting a CoherenceSync component using Debug Mode while in Edit Mode, could result in a NullReferenceException when later entering Play Mode.
Fixed the validation to allow Only predict with input authority to be selected if a CoherenceInput was attached to a Game Object.
1.3
Published 17.09.2024
Check out the highlights in our 1.3 blog post and leave feedback in the forum thread!
Added
Sync attribute has a new
DefaultSyncMode
property to configureSyncMode
on the binding.Invalid command bindings are reported on recompile. Warnings and errors are shown in the console if a method containing an invalid signature is decorated with a
CommandAttribute
.A new property called
EnableClientConnections
has been added onCoherenceBridge
. This replaces the globalQueryOn
field andGlobalQueryOn
property. They have both been marked as obsolete and should not be used moving forward.Added a new main menu item coherence > Help > Report a Bug... that can be used to auto-generate a diagnostics file, which can be shared with coherence to help with debugging an issue.
If the flag
Application.runInBackground
is nottrue
a warning is written to the console when the game is played in the Editor.Extended the
CoherenceSync
Editor with the ability to detect more undesired Prefab overrides in Prefab instances, and display a warning box and a button to automatically fix them.
Changed
It is no longer necessary to manually add/remove COHERENCE_LOG_TRACE and COHERENCE_LOG_DEBUG defines. Those are now automatically added/removed when LogLevel is changed.
Optimized
CoherenceSync.Awake()
andCoherenceSync.OnEnable()
.Moved
RuntimeInterpolationSettings
fromBinding
toValueBinding.Interpolator
, changing the type fromInterpolationSettings
toBindingInterpolator<T>
Network packets now contain an end marker for better integration with 3rd party relays.
CoherenceBridge.EnableClientConnections
property replaces theCoherenceBridge.globalQueryOn
field and theCoherenceBridge.GlobalQueryOn
property.Obsolete methods can still be used as commands if adorned with the CommandAttribute.
Reduced the bandwidth overhead of creating entities ~30 bytes per entity.
Updated engine version to v6.5.0
Removed
schemaID
field fromRuntimeSettings
to stop it changing every time the application is baked. TheSchemaID
property ofRuntimeSettings
is still public but is now read-only.Removed
CalcSHA1Hash()
fromSchema.
Replication Server endpoint for local simulator builds is stored between sessions.
Fixed
NullReferenceException on ArchetypeComponent (Prefabs using LODs).
NullReferenceException while changing variable or method settings on the Configure window.
Hub: account name label could wrap the last character unnecessarily.
Hub: cloud status label could word wrap unnecessarily.
Reparenting after gaining authority could be reverted.
Project settings: Disable connection timeout not working with rooms.
Quaternion interpolation jittering.
Cleared up the error messages in CoherenceInput to show if the scene needs baked or there is a missing CoherenceBridge.
NullReferenceException on instantiating two copies of the same prefab using addressables in the same frame.
Replicated prefabs loaded via addressables could lose commands sent to them from the authority.
Fix observed interpolation jitter when instantiating and immediately changing the position of an entity with a large delta.
Removed an error that appeared in the console when a fresh, unbaked, project was opened.
Coroutine couldn't be started
error when asynchronously unloading a scene containing a coherence bridge with a client connection.Changed the ´Is Kinematic´ component action for Rigidbody and Rigidbody2D to have ´Enable On Authority´ enabled by default. This most likely results in the desired behaviour.
Library folder no longer appears alongside application when running a stand alone app
Fixed auto-adoption of orphaned entities with 'Simulate In' set to 'Server Side With Client Input'.
Added missing method to custom instantiator template
Fixed game object title bar text being difficult to see when using Light skin.
Removed error message logged to the console if Android build tries to bundle replication server
Fixed path to
/UI/icons/Loader anim.png
from absolute to relativeFixed issue where position bindings could get removed from nested coherence sync objects.
Samples browser shows correct thumbnail when opened
Possibility of entity being created with old binding values in bad network conditions.
Fixed issue with parenting and changing the floating origin in the same packet causing the child position to be wrong.
Last updated