Replaced instanceID with entityId - #47
Open
Baxter900 wants to merge 1 commit into
Open
Conversation
Unity 6.5 deprecates instanceID, replacing it with entityID.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Unity 6.5 deprecates
InstanceID, replacing it withEntityID.Description of the Change
Unity 6.5 treats the usage of the
InstanceIDdata type as a compiler error and removes the associated API calls entirely, replacing it with theEntityIdtype. Details on this change can be found on the list of breaking changes in Unity 6.5 under "Removal of temporaryInstanceIDtype": https://discussions.unity.com/t/planned-breaking-changes-in-unity-6-5-updated-2026-03-27/1694205The code changes are swapping
InstanceIDwithEntityId, swapping the appropriate methods (for which there are 1:1 equivalents), and using theEntityId's hashcode as a dictionary key (stored as an int) instead of casting it directly to an int like was being done previously to theInstanceID(which Unity documentation says is not officially supported functionality).Alternate Designs
This is just an update to bring this package in compliance with new Unity requirements, so no design changes were considered. Minimal changes were made to return this to functionality and remove compiler errors.
Benefits
The package will now work on Unity 6.5.
Possible Drawbacks
This may break older versions of Unity. According to Unity's page on breaking changes in Unity 6.5 this should work at least as far back as version 6.2. From what I can tell,
InstanceIDshouldn't actually function before that point, so I think this is safe. I haven't tested it on any version but 6.5 though.Applicable Issues
None.