Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


ToString()

Obtains the string representation of the unique object identifier.
Read time 1 minuteLast updated 10 days ago

Definition

  • Type: Method
  • Namespace: UnityEditor
  • Assembly: UnityEditor
public override string ToString()

Returns

Type

Description

stringThe string representation of the
GlobalObjectId
.

Remarks

The string representation of a
GlobalObjectId
can be serialized, then used at a later time to re-initialize a
GlobalObjectID
struct.
The format of the string representation of the ID is
GlobalObjectId_V1-{i}-{a}-{l}-{p}
, where:
  • {i}
    is the identifier type represented by an integer (0 = Null, 1 = Imported Asset, 2 = Scene Object, 3 = Source Asset).
  • {a}
    is the asset GUID. This is a globally unique identifier that Unity assigns to every newly discovered asset. For more information, refer to Asset Metadata in the Manual.
  • {l}
    is the local file ID of the object. For objects inside a prefab instance, this ID is the local file ID of the original source object that is part of the prefab. For more information, refer to GlobalObjectId.targetObjectId.
  • {p}
    is the local file ID of the prefab instance of the object. If the object isn't part of a prefab instance, then
    {p}
    is
    0
    .
Note: Actual local file IDs are signed 64-bit values and can be negative. But in a
GlobalObjectId
, these values are cast to GlobalObjectId.targetObjectId, which is an unsigned 64-bit value (
ulong
). Therefore, a negative local file ID will lose its sign when saved to a
GlobalObjectId
and you should not rely on the value of
targetObjectId
, or the
{l}
element from the string representation of a GlobalObjectID, to find an object.
Additional Resources: GlobalObjectId.TryParse