| 
				
				Другой рендер в билде
				 | 
 | 
| BUFFOMETZ | Дата: Воскресенье, 17 Января 2016, 13:03 | Сообщение # 21 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | Цитата zisX (  )  Кстати, ты знаком с сетевой частью игр?   На среднем уровне, если знаю могу подсказать.
 |  
| 
 | 
 |    | 
| zisX | Дата: Воскресенье, 17 Января 2016, 13:50 | Сообщение # 22 |  
 
Neto Zis 
Сейчас нет на сайте 
 
 | BUFFOMETZ, Какой можно алгоритм придумать чтобы просчитать на сервере, что игрок упал с большой высоты.
 
   
 |  
| 
 | 
 |    | 
| BUFFOMETZ | Дата: Воскресенье, 17 Января 2016, 14:03 | Сообщение # 23 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | zisX, можно пускать луч под себя, мерить дистанцию dist = Vector3.Distance(terrainPoint, myPosition);, и проверять ее if(dist > 10f). Логика такая: Если под игроком дистанция больше 10, значит он упадет с большой высоты и когда дистанция станет снова 0, то нанести урон или что то еще.  Но мне это никогда не нужно было, просто в голову пришло, как вариант.    Определенно это делается как то по другому.:)
 |  
| 
 | 
 |    | 
| zisX | Дата: Воскресенье, 17 Января 2016, 14:07 | Сообщение # 24 |  
 
Neto Zis 
Сейчас нет на сайте 
 
 | BUFFOMETZ, Ну так это на клиенте проверка, надо серв
 
   
 |  
| 
 | 
 |    | 
| BUFFOMETZ | Дата: Воскресенье, 17 Января 2016, 14:21 | Сообщение # 25 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | zisX,
 
 Код using UnityEngine; using System.Collections;
  public class Test : MonoBehaviour {
      public float[] yPos;     private Transform myTransform;     public float dmgDist;               private void Start () {   myTransform = transform;   StartCoroutine(Rptr());     }          private IEnumerator Rptr() {   for(;;) {    yPos[0] = myTransform.position.y;    yield return new WaitForSeconds(0.5f);    CheckDist();   }     }          void CheckDist() {   yPos[1] = myTransform.position.y;      dmgDist = yPos[0] - yPos[1];      if(dmgDist > 5f) {    Debug.Log("Ooops");   }     }      }
  
  Добавлено (17 января 2016, 14:21) --------------------------------------------- Написал коряво, но думаю примерно логику уловишь? Хотя не, поясню: Если игрок падает то за определенный промежуток времени(в данном случае 0.5с) разность между Y станет больше обычного, отсюда можно сделать вывод что он падает.
 
 Сообщение отредактировал BUFFOMETZ - Воскресенье, 17 Января 2016, 14:25  |  
| 
 | 
 |    | 
| zisX | Дата: Воскресенье, 17 Января 2016, 14:25 | Сообщение # 26 |  
 
Neto Zis 
Сейчас нет на сайте 
 
 | BUFFOMETZ, Да я понял, попозже попробую, спасибо.
 
   
 |  
| 
 | 
 |    | 
| BUFFOMETZ | Дата: Воскресенье, 17 Января 2016, 14:29 | Сообщение # 27 |  
 
почетный гость 
Сейчас нет на сайте 
 
 | zisX, да я попробовал уже - работает.    Чем больше высота тем больше в конечном итоге станет переменная dmgDist. Проверял на кубе с Ригидбоди. Если сервер имеет только позицию игрока и ничего больше, то вполне можно по такой логике сделать.
  Но, опять же повторюсь, ни разу не приходилось так делать, это всего лишь намек, может сам чего лучше придумаешь.  
 |  
| 
 | 
 |    | 
| zisX | Дата: Воскресенье, 17 Января 2016, 14:40 | Сообщение # 28 |  
 
Neto Zis 
Сейчас нет на сайте 
 
 | BUFFOMETZ, Да мне щас думать пока некогда, я щас занимаюсь коитусом с инвентарем и синхронизацией с сервером, боюсь что будет дюп, потом что пока пилил основу, несколько раз замечал что-то похожее.
 
   
 |  
| 
 | 
 |    |