Exemplo n.º 1
0
 // Token: 0x06002754 RID: 10068 RVA: 0x000B65C8 File Offset: 0x000B47C8
 private void LateUpdate()
 {
     Core.Solvers solvers = this.solver;
     if (solvers != Core.Solvers.CyclicDescend)
     {
         if (solvers == Core.Solvers.FastReach)
         {
             for (int i = 0; i < this.otherChains.Length; i++)
             {
                 FastReachSolver.Process(this.otherChains[i]);
             }
             FastReachSolver.Process(this.rLeg);
             FastReachSolver.Process(this.lLeg);
             FastReachSolver.Process(this.rArm);
             FastReachSolver.Process(this.lArm);
         }
     }
     else
     {
         CyclicDescendSolver.Process(this.rLeg);
         CyclicDescendSolver.Process(this.lLeg);
         CyclicDescendSolver.Process(this.rArm);
         CyclicDescendSolver.Process(this.lArm);
         for (int j = 0; j < this.otherChains.Length; j++)
         {
             CyclicDescendSolver.Process(this.otherChains[j]);
         }
     }
     for (int k = 0; k < this.otherKChains.Length; k++)
     {
         ChainKinematicSolver.Process(this.otherKChains[k]);
     }
 }
Exemplo n.º 2
0
        private void LateUpdate()
        {
            switch (solver)
            {
            case Core.Solvers.CyclicDescend:
                CyclicDescendSolver.Process(rLeg);
                CyclicDescendSolver.Process(lLeg);
                CyclicDescendSolver.Process(rArm);
                CyclicDescendSolver.Process(lArm);
                for (int i = 0; i < otherChains.Length; i++)
                {
                    CyclicDescendSolver.Process(otherChains[i]);
                }
                break;

            case Core.Solvers.FastReach:
                FastReachSolver.Process(rLeg);
                FastReachSolver.Process(lLeg);
                FastReachSolver.Process(rArm);
                FastReachSolver.Process(lArm);
                for (int i = 0; i < otherChains.Length; i++)
                {
                    FastReachSolver.Process(otherChains[i]);
                }
                break;
            }

            for (int i = 0; i < otherKChains.Length; i++)
            {
                ChainKinematicSolver.Process(otherKChains[i]);
            }
        }
 // Token: 0x06002728 RID: 10024 RVA: 0x000B5390 File Offset: 0x000B3590
 public static void Process(Core.KinematicChain chain)
 {
     if (!chain.initiated)
     {
         chain.InitiateJoints();
     }
     chain.MapVirtualJoints();
     ChainKinematicSolver.FollowParent(chain);
     ChainKinematicSolver.MapSolverOutput(chain);
 }