// Token: 0x060000D1 RID: 209 RVA: 0x000096E4 File Offset: 0x000078E4 public void UpdateComponents() { global::UnityEngine.Transform transform = base.transform; bool flag = transform.childCount == 0; if (!flag) { using (global::SteamVR_RenderModel.RenderModelInterfaceHolder renderModelInterfaceHolder = new global::SteamVR_RenderModel.RenderModelInterfaceHolder()) { global::Valve.VR.VRControllerState_t vrcontrollerState_t = (this.index != global::SteamVR_TrackedObject.EIndex.None) ? global::SteamVR_Controller.Input((int)this.index).GetState() : default(global::Valve.VR.VRControllerState_t); for (int i = 0; i < transform.childCount; i++) { global::UnityEngine.Transform child = transform.GetChild(i); global::Valve.VR.CVRRenderModels instance = renderModelInterfaceHolder.instance; bool flag2 = instance == null; if (flag2) { break; } global::Valve.VR.RenderModel_ComponentState_t renderModel_ComponentState_t = default(global::Valve.VR.RenderModel_ComponentState_t); bool flag3 = !instance.GetComponentState(this.renderModelName, child.name, ref vrcontrollerState_t, ref this.controllerModeState, ref renderModel_ComponentState_t); if (!flag3) { global::SteamVR_Utils.RigidTransform rigidTransform = new global::SteamVR_Utils.RigidTransform(renderModel_ComponentState_t.mTrackingToComponentRenderModel); child.localPosition = rigidTransform.pos; child.localRotation = rigidTransform.rot; global::UnityEngine.Transform transform2 = child.FindChild("attach"); bool flag4 = transform2 != null; if (flag4) { global::SteamVR_Utils.RigidTransform rigidTransform2 = new global::SteamVR_Utils.RigidTransform(renderModel_ComponentState_t.mTrackingToComponentLocal); transform2.position = transform.TransformPoint(rigidTransform2.pos); transform2.rotation = transform.rotation * rigidTransform2.rot; } bool flag5 = (renderModel_ComponentState_t.uProperties & 2U) > 0U; bool flag6 = flag5 != child.gameObject.activeSelf; if (flag6) { child.gameObject.SetActive(flag5); } } } } } }
// Token: 0x060001DD RID: 477 RVA: 0x0000D108 File Offset: 0x0000B308 public bool GetComponentState(string pchRenderModelName, string pchComponentName, ref global::Valve.VR.VRControllerState_t pControllerState, ref global::Valve.VR.RenderModel_ControllerMode_State_t pState, ref global::Valve.VR.RenderModel_ComponentState_t pComponentState) { return(this.FnTable.GetComponentState(pchRenderModelName, pchComponentName, ref pControllerState, ref pState, ref pComponentState)); }