Example #1
0
        public bool Connect(Uri uri)
        {
            try
            {
                // start with a new scene in VRED
                SocketClient.SendVredCmd(uri.Host, uri.Port, @"newScene()");
                SocketClient.SendVredCmd(uri.Host, uri.Port, string.Format("load(\"{0}\")", Util.GetPathUri("Aeromax.vpb")));

                sender = new SocketClient(uri, port);

                // set up car
                car = new Car();
                car.mass = 1200;
                car.inertiaScale = 2.0f;
                car.halfWidth = 0.8f;
                car.cgToFront = 2.0f;
                car.cgToRear = 2.0f;
                car.cgToFrontAxle = 1.25f;
                car.cgToRearAxle = 1.25f;
                car.cgHeight = 0.55f;
                car.wheelRadius = 0.55f;
                car.tireGrip = 2.0f;
                car.lockGrip = 0.7f;
                car.engineForce = 4000.0f;
                car.brakeForce = 12000.0f;
                car.eBrakeForce = car.brakeForce / 2.5f;
                car.weightTransfer = 0.2f;
                car.maxSteer = 40;
                car.cornerStiffnessFront = 5.0f;
                car.cornerStiffnessRear = 5.2f;
                car.airResist = 2.5f;
                car.rollResist = 8.0f;
                car.RecalcStats();

                // set up car
                sender.Send(@"car = findNode(""Alias Shape Rep"")");
                sender.Send(@"front_left_wheel = findNode(""node#166502"")");
                sender.Send(@"front_right_wheel = findNode(""node#167187"")");
                sender.Send(@"rear_left_wheel = findNode(""node#166503"")");
                sender.Send(@"rear_right_wheel = findNode(""node#166504"")");

                //sender.Send("camera_node = getCamNode(0)");

                return true;
            }
            catch (Exception e)
            {
                //Console.WriteLine("Unexpected exception : {0}", e.ToString());
                Log(e.ToString());
                return false;
            }
        }
Example #2
0
        public void Disconnect()
        {
            try
            {
                sender.Dispose();
                sender = null;
                car = null;
            }
            catch (Exception e)
            {
                Log(e.ToString());
            }

            if (OnDisconnect != null)
                OnDisconnect(this, null);
        }