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

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

23.10.2019, 16:51. Показов 4179. Ответов 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
3364 / 1776 / 1029
Регистрация: 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
3364 / 1776 / 1029
Регистрация: 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
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru