Skip to content

Add support for GetComponent(s)<T> on user types

Choose a tag to compare

@MerlinVR MerlinVR released this 11 Mar 23:36
· 1247 commits to master since this release
  • 068cc49: Add support for using GetComponent<T>, GetComponents<T>, and the other variants to get user defined types. This has some additional overhead above GetComponent<T> on Unity types so I don't recommend that you use it in an update loop.
  • 068cc49: Add type information to all UdonSharpBehaviour types which for the moment only includes a type ID long used to uniquely identify a class, and the name of the class. These can be accessed via GetUdonTypeID() and GetUdonTypeName() on any UdonSharpBehaviour. The type ID will return 0 in the case that the UdonBehaviour has not had a chance to initialize because it hasn't been enabled. It will also return 0 on graph assets since they do not have an ID assigned.
  • a1f6844: Add support for editing LayerMask fields in the inspector
  • 73c42ab: Add functionality to TypeExposureTree to audit functions that can return a UnityEngine.Component
  • 068cc49: Add check for attempts to use the Awake event and throw an error telling the user to use Start instead.
  • 068cc49: Fix implicit boolean cast when using unary negation operator on types without an operator overload for it.
  • 068cc49: Add for loop scope to prevent collisions of variable declarations in for loop initializers.
  • e254c97: Fix assignment of fields and properties inside structs stored in an array, reported by AirGamer