Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 23.10.2019
Сообщений: 31

Как сделать так, чтобы одна фишка обнаруживала другую в сцене при пороговом значении расстояния?

23.10.2019, 16:51. Показов 3766. Ответов 64
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В Юнити 3-й день. Не знаю даже где посмотреть справочную информацию. Хотя, уже научился создавать 3д объекты, моделировать системы частиц с определенными свойствами и анимировать все это. Если можно, посоветуйте, хотя бы, где посмотреть - как сделать так, чтобы одна фишка обнаруживала другую в сцене при пороговом значении расстояния, свыше значения которого она ее просто не видит.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.10.2019, 16:51
Ответы с готовыми решениями:

Как сделать так, чтобы при нажатии на кнопку менялась одна форма на другую?
Я вот пытаюсь разработать тест и столкнулась с такой проблемой, как смена формы на другую... В связи с этим достаточно тупой вопрос: Как...

Сделать так, чтобы одна процедура вызывала другую
Всем добрый. Я все продолжаю рисовать Вселенную, темы...

Как сделать так, чтобы при каждом клике происходила одна итерация цикла?
Надо, чтобы при каждом нажатии на лейбл происходила итерация цикла: public void label1_Click(object sender, EventArgs e) { ...

64
 Аватар для 1max1
3362 / 1775 / 1028
Регистрация: 26.10.2018
Сообщений: 5,204
12.12.2019, 13:37
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от НовикДД Посмотреть сообщение
ОБРАЩАЮ ВНИМАНИЕ ЕЩЕ РАЗ ТЕХ, КТО ИМПОРТИРУЕТ В ИГРУ МОДЕЛИ В ФОРМАТЕ OBJ - ЮНИТИ КАТЕГОРИЧЕСКИЕ НЕ ВОСПРИНИМАЕТ ПОД КОЛЛАЙДЕР ОБОЛОЧКУ КРОМЕ КАК В ПОДОБЪЕКТЕ
Дело в том что Mesh Collider не может автоматом натянуться на объект, на котором нет Mesh Filter, поэтому нужно указать меш ручками, см. скрин.
Миниатюры
Как сделать так, чтобы одна фишка обнаруживала другую в сцене при пороговом значении расстояния?  
0
0 / 0 / 0
Регистрация: 23.10.2019
Сообщений: 31
13.12.2019, 16:17  [ТС]
To 1max1, благодарю! Надож, я не подозревал даже...

Пока не разобрался, в чем дело, почему программа не видит вновь созданные объекты, которые правильно названы и имеют правильный тэг.

Еще вопрос, для меня это один из основных. Потому, что иначе у меня не будет походного ордера в отряде и не возможно будет ставить мины, а война на 80% была минная. Нужно определить пройденный путь. Я попытался это сделать суммируя скорость каждый фрейм в переменную. Вроде, все правильно написал, скрипт даже показывал цифики, хотя неправильные , но потом перестал работать. Где я ошибся?

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class ShipDistance : MonoBehaviour
{
    public Vector3 previousShipPosition;
    public Vector3 newShipPosition;
    public double distanceX;
    public double newdistanceX;
    public double newdistanceZ;
    public double distanceZ;
    public double shipSpeed;
    public double shipWay;
    public double newShipWay;
    
    // Start is called before the first frame update
    void Start()
    {
       
    }
 
    // Update is called once per frame
    void Update()
    {
        distanceX = newShipPosition.x - previousShipPosition.x;
        distanceZ = newShipPosition.z - previousShipPosition.z;
        if (distanceX < 0) { newdistanceX = distanceX * -1; }
        if (distanceX > 0) { newdistanceX = distanceX; }
        if (distanceZ < 0) { newdistanceZ = distanceZ * -1; }
        if (distanceZ > 0) { newdistanceZ = distanceZ; }
 
        shipSpeed = Mathf.Sqrt(Mathf.Pow(newdistanceX, 2) + Mathf.Pow(newdistanceZ, 2));
        shipWay = shipSpeed;
 
        newShipWay = shipWay + shipSpeed; 
        
        previousShipPosition = transform.position;
  
    }
    void LateUpdate()
    {
        newShipPosition = transform.position;
       
    }
}
0
 Аватар для 1max1
3362 / 1775 / 1028
Регистрация: 26.10.2018
Сообщений: 5,204
13.12.2019, 17:25
Как-то так вроде:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public class ShipDistance : MonoBehaviour
{
    public float distance = 0.0f;
    public float speedMove = 0.0f;
 
    Vector3 prevPosition = Vector3.zero;
 
    void Start()
    {
        prevPosition = transform.position;
    }
 
    void Update()
    {
        float delta = (transform.position - prevPosition).magnitude;
 
        prevPosition = transform.position;
 
        distance += delta;
 
        speedMove = delta / Time.deltaTime;
    }
}
0
0 / 0 / 0
Регистрация: 23.10.2019
Сообщений: 31
16.12.2019, 04:31  [ТС]
To 1max1, благодарю! Я правда не успел его проверить, но с учетом того, что это один из 2-х основных скриптов игры (второй - расчет баллистической составляющей для снарядов) мне будет необходимо указать тебя в качестве разработчика...
To Steroid - никогда не говори никогда, никак и что-то навроде, потому, что вдруг если КАК - то будешь выглядеть бледно. Поиск по переменной вполне возможен, хотя и через одно место. Это мне иностранные партнеры сказали. Если хочешь узнать как - спроси, мне не в лом рассказать
0
 Аватар для Steroid
296 / 217 / 86
Регистрация: 17.02.2016
Сообщений: 1,276
Записей в блоге: 1
16.12.2019, 09:01
Цитата Сообщение от НовикДД Посмотреть сообщение
по переменной вполне возможен, хотя и через одно место. Это мне иностранные партнеры сказали
ну раз ты так говоришь...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.12.2019, 09:01
Помогаю со студенческими работами здесь

Как сделать так чтобы при открытие дочерних форм (через MainMenu) появлялась только одна вкладка TabSet
Такая ситуация, существует главная форма и дочерние(MDI), как сделать так чтобы при открытие дочерних форм (через MainMenu) появлялась...

Как сделать , чтобы одна текстура не перекрывала другую?
Как сделать , чтобы одна текстура не перекрывала другую? У меня здесь одна текстура получается прозрачной а другая не прозрачной , и ...

Как сделать чтобы при значении "Забил" Игрок 1 бил дальше, а при значении "Промахнулся" ход переходил другому игроку.
Покажите как правильно сделать,чтобы при значение &quot;Забил&quot; например Игрок 1 дальше бил, чтобы &quot;Игрок 1 &quot; промахивался и ход...

Как сделать так чтобы страничка при увеличения разрешения не двигалась в разные стороны, и как сделать чтобы при открытии в опере и в других браузерах
все обьекты на странице не двигались в разные стороны???

OpenGl+qt как сделать чтобы при нажатии на кнопки камера передвигалась по сцене
Помогите с проблемой. Хочу чтобы камера двигалась вокруг своей оси, вперед, назад при нажатии на кнопки со стрелками. glRotate,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
65
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru