obj.transform.rotation = Quaternion.Lerp(obj.transform.rotation, Quaternion.Euler(0, mainObject.transform.rotation.eulerAngles.y, 0), Time.deltaTime * 50);
public class NewBehaviourScript : MonoBehaviour {
[SerializeField] private GameObject mainObject; // Основной объект
[SerializeField] private GameObject obj; // Дополнительный
void Start () {
}
void Update () {
Vector3 v;
float y;
mainObject.transform.rotation.ToAngleAxis(out y, out v);
obj.transform.rotation = Quaternion.Lerp(obj.transform.rotation, Quaternion.Euler(0, y, 0), Time.deltaTime * 50);
}
}
void Start()
{
Thread t = new Thread(ReceiveData);
t.Start();
}
private void ReceiveData()
{
while (true)
{
if (connected)
{
Debug.Log("Run");
try
{
int bytes = 0; // Счетчик полученных байт с сервера
byte[] buffer = new byte[1024]; // Массив байт, для данных полученных с сервера
StringBuilder builder = new StringBuilder();
do
{
bytes = socket.Receive(buffer); // Прием данных от сервера
builder.Append(Encoding.UTF8.GetString(buffer, 0, bytes)); // Строим сообщение из полученных данных ( массива байт )
}
while (socket.Available > 0);
string[] allInfo = builder.ToString().Split(';');
for (int i = 0; i < allInfo.Length; i++)
{
string[] info = allInfo[i].Split('|');
Action action = () => { data.Add(info[0], info[1] + '|' + info[2] + '|' + info[3]); };
Invoke("action", 0f);
}
}
catch (Exception ex)
{
Debug.Log("Error in Helper.FixedUpdate: " + ex.Message);
}
}
}
}
string[] allInfo = builder.ToString().Split(';');
for (int i = 0; i < allInfo.Length; i++)
{
string[] info = allInfo[i].Split('|');
data.Add(info[0], info[1] + '|' + info[2] + '|' + info[3]); // Вот тут не получиться добавить данные в словарь, так как он создан в другом потоке.
}
do
{
bytes = socket.ReceiveFrom(buffer, ref remoteIp); // ТУТ
}
while (socket.Available > 0);
configurations.maybeCreate("default")
artifacts.add("default", file('sqljdbc42.jar'))