コード例 #1
0
        void OnDistanceStay(DistanceInteraction interaction)
        {
            if (Interaction == null)
            {
                return;
            }
            if (Interaction.AutoDetection)
            {
                if (!Interaction.HasDeteced)
                {
                    return;
                }
            }
            if (Interaction.IsGrab && !IsSelf)
            {
                return;
            }

            if (!IsOpen && !IsLimit)
            {
                //if (Interaction.FeaturesObjectController.ActiveShadow)
                //{

                if (shadowController != null)
                {
                    shadowController.Init(Interaction.transform.parent, traModelNode, Color.yellow, 0.25f, 3000, traModelNode ? ShadowType.Manual : ShadowType.Auto);
                    shadowController.OpenGhost(interaction.FeaturesObjectController.transform,
                                               localPosition, localScale, Quaternion.Euler(localRotation));
                }
                IsOpen = true;
            }
        }
コード例 #2
0
        public override void OnOpen(DistanceInteraction InteractionSelf, DistanceInteraction interaction)
        {
            base.OnOpen(InteractionSelf, interaction);

            if (interaction == null)
            {
                return;
            }
            if (InteractionSelf == null)
            {
                return;
            }

            if (InteractionSelf.IsGrab && !IsSelf)
            {
                return;
            }

            if (!IsOpen && !IsLimit)
            {
                if (shadowController == null || isReUpdate)
                {
                    Init(InteractionSelf.transform);
                }
                shadowController.OpenGhost(interaction.FeaturesObjectController.transform,
                                           localPosition, localScale, Quaternion.Euler(localRotation), isLocal);

                IsOpen = true;
            }
        }