コード例 #1
0
    public void OnDrawGizmosSelected()
    {
        if (poseHistory.Count == 0)
        {
            return;
        }
        Gizmos.color = Color.cyan;
        NetworkPose lastPose = poseHistory.Peek();

        foreach (NetworkPose pose in poseHistory)
        {
            Gizmos.DrawLine(lastPose.position, pose.position);
            Gizmos.DrawWireSphere(pose.position, 0.1f);
            lastPose = pose;
        }
    }
コード例 #2
0
    public void ReceiveCarData(NetReader reader)
    {
        Vector3    pos    = reader.ReadVector3();
        Vector3    ang    = reader.ReadVector3();
        Quaternion rot    = Quaternion.Euler(ang);
        Vector3    vel    = reader.ReadVector3();
        Vector3    angVel = reader.ReadVector3();

        if (thisRigidbody == null)
        {
            return;
        }

        oldPose = newPose;
        newPose = new NetworkPose(pos, rot, vel, angVel, Time.time);

        poseHistory.Enqueue(newPose);
        if (poseHistory.Count > 10)
        {
            poseHistory.Dequeue();
        }
    }