Your comments

I think I'm getting somehwere with this now.

My algorithm is this;

1. Move the joystick to translate a target object

2. At regular timed intervals get the position and add it to an IKPath as an IKTarget

3. When the number ot targets > x (x being an arbitrary number) create a loop,

foreach(IKTarget target in path) DriveToTarget(target)

This is the best algorithm I have used so far however the only interpolation method that works with it is,

"IKTarget.Interploation.PointToPointUnsynced", the other two give erratic movement.


Can you suggest a better algorithm ?

Okay.

1. I don't want interpolation, I just want the robot arm to instantly take up the new position.

2. I tried "Drive.CurrentPosition = NewPosition".in FixedUpdate and it worked

3. In FixedUpdate I used a bool so that "Drive.CurrentPosition = NewPosition" would execute just once but the robot arm immediately returned to it's original position.

4. I need to call it just once and then it should stay in the new position because I then need to move it using joystick input.

5. I can't find a way to do that.


Frohe Weihnachten und ein gutes neues Jahr.

Thank you for your guidance, I shall have a better look at IKPath.

When I said move the TCP I really meant the target object which will be set at TCP

It looks something like we have to fill Axis[] with the IK calculated positions then call, "drive.StartEditorMoveMode()" for each drive. OR maybe DriveToTarget()

There must be a "nice" way to put this into my own script for use in Unity run time.

This would be a good feature for realvirtual because it would allow users to create a robot simulator where x,y,z,A,B,C world coordinate system could be controlled with joysticks. I'm thinking of a KUKA robot arm here.

Thank you for your reply.

I installed the new Unity input system today and so far it appears the XBOX controller is working as it should inside a game4automation scene, so I think this is the answer.

Thank you.