Страница 1 из 1

Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 13:19
nioken292
Хочу сделать так чтобы когда FPS Controller приблежался к объекту перед камерой появлялся текст типа "Нажмите Е чтобы подобрать" либо же сделать так чтобы при навождении камеры/прицела на объект писался этот текст думаю попробывать конвасом но опятьже как сделать так чтобы конвас с тесктом создавался тогда когда Controller находиться в нужном радиусе? спасайте (c#) (js)

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 13:31
Valentinus
Сделайте UI Canvas , с элементом Text . И показывайте его, когда нужно, и скрывайте, когда не нужно.

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 13:45
nioken292
Valentinus писал(а):Сделайте UI Canvas , с элементом Text . И показывайте его, когда нужно, и скрывайте, когда не нужно.

Так вот а как сделат ьтак чтобы он показывался тогда когда FPS Controller Будет в нужном месте или когда его камера будет направлена на объект

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 13:48
Anonymyx
Сделать вокруг объекта триггер нужного размера, и при входе в этот триггер показывать текст, а при выходе скрывать.
Или пускать луч (ray/sphere) из центра камеры и проверять столкновение с объектом. Если попали - показывать текст, если потеряли - скрывать.

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 13:53
nik26
1. physics.raycast и tag обьекта, для проверки что камера повернута на нужный обьект
2. canvas с заранее подготовленным (не активным)текстом
3. при условии что raycas и tag равны true включаем обьект текста в ином случае выключаем
4. ..
5. профит. B-)

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 13:56
nioken292
Anonymyx писал(а):Сделать вокруг объекта триггер нужного размера, и при входе в этот триггер показывать текст, а при выходе скрывать.
Или пускать луч (ray/sphere) из центра камеры и проверять столкновение с объектом. Если попали - показывать текст, если потеряли - скрывать.

Спасибо огромное

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 23 апр 2017, 22:35
nioken292
Вообщем, я сделал всё попроще есле комуто это тадо то вот :
1. Создаём нужный текст перед камерой и убираем ему mesh renderer
2. Создаём Триггер вокруг предмета нужных размеров
3. пишем такой скрипт
Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;

public class TakeScript : MonoBehaviour
{

public GameObject Canv;

        void OnTriggerEnter (Collider other)
        {
                if(other.CompareTag("Player"))
                {
                Canv.GetComponent<MeshRenderer>().enabled = true;
                }
       
        }
}

 


И вот такой (2 скрипта потому-что в одном почему-то эти два Void'a не работали)

Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;

public class TakeScript2 : MonoBehaviour
{

public GameObject Canv;

        void OnTriggerExit (Collider other)
        {
                if(other.CompareTag("Player"))
                {
                Canv.GetComponent<MeshRenderer>().enabled = false;
                }
       
        }
}



Поясняю
первый скрипт включает при входе в триггер mesh rendere для нашего текста(тоесть текстуру)
второй с точность и наоборот
Добавляем эти скрипты к триггеру и воаля при входе в триггер текст появляеться
при выходе проподает.

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 24 апр 2017, 06:55
Valentinus
nioken292 писал(а): и убираем ему mesh renderer .

не "убираем", а" выключаем" :)

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 24 апр 2017, 08:36
nioken292
Valentinus писал(а):
nioken292 писал(а): и убираем ему mesh renderer .

не "убираем", а" выключаем" :)

Точненько... ;)

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 24 апр 2017, 08:45
nik26
вы уж извините но это быдлокод) (popcorn1)
во первых все это можно было сделать одном скрипте

а во вторых причем тут MeshRenderer если подразумевался текст? или чего то не понимаю..

ps а, все понял, используется textmesh..

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 24 апр 2017, 09:00
Valentinus
nik26 писал(а):вы уж извините но это быдлокод) (popcorn1)
во первых все это можно было сделать одном скрипте

а во вторых причем тут MeshRenderer если подразумевался текст? или чего то не понимаю..

ps а, все понял, используется textmesh..



вам же объяснили : "два Void'a не работали)" :)

PS просто товарищ еще не дошел до канвасов и UI , и поэтому забивает гвозди микроскопом.

Re: Создание текста в определённом радиусе

СообщениеДобавлено: 25 апр 2017, 21:33
nioken292
Valentinus писал(а):
nik26 писал(а):вы уж извините но это быдлокод) (popcorn1)
во первых все это можно было сделать одном скрипте

а во вторых причем тут MeshRenderer если подразумевался текст? или чего то не понимаю..

ps а, все понял, используется textmesh..



вам же объяснили : "два Void'a не работали)" :)

PS просто товарищ еще не дошел до канвасов и UI , и поэтому забивает гвозди микроскопом.

Не. просто у меня какаято шняга творилась с канвасами и чёт я не въехал как активировать и деативировать в нём текст поэтому и начал "Забивать гвозди микроскопом"