Как сделать подсветку объектов в UNITY?
Вставка
- Опубліковано 8 сер 2021
- В этом видео на примере курса "Unity Базовый курс 3D" мы покажем, как создать эффект свечения объекта в Unity3D, при наведении на него курсором мыши.
unity3dschool.ru/unity-bazovy...
Как сделать обводку - зашли купили , обводка готова , УРА! Супер курса ,я научился делать игры. Сразу зашел и скачал игру.
А минусы будут?
спасибо очень помог с созданием проекта
Класс👍
спасибо большое
Занятно
В unity же есть event system, и он работает точно также,но с ui. Можно ли event system применять для 3D объектов?
спс
Спасибо за видео, думал это ассет только для встроенного рендер пайплайна юнити
Видимо так и есть) потому что в билде работает обводка через раз
Спасибо за ассет, не слышал о нём! Но видео растянуто) в ассете 1 скрипт с 3.5 настройками)
Урок очень полезный но почему у меня не рабоет выключение подсветки?
(когда я увожу мышку с обьекта)
RaycastHit hit;
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out hit, 1f))
{
var Itemllor = hit.collider.GetComponent();
if (Itemllor != null)
{
if (Itemllor != this && Itemllor != currentItem)
{
Itemllor.Selet();
print("select");
currentItem = Itemllor;
}
}
else if (currentItem != null)
{
Itemllor.deSelet();
print("deselect");
currentItem = null;
}
}
(написано это в Update)
Не работает, если на объекте Skinned Mesh Renderer. Засвечиваются только одни текстурки из множества, что висят на объекте. Не подскажешь как быть в такой ситуации?
проконсультируйтесь пожалуйста через my.first.unity.help@gmail.com
Все круто если юзать в релакторе на той же сцене. А если загрузить сцену с объектами на которых этот аутлайн, с другой сцены, то есть при переходе между сценами, всплывет куча ошибок.
сделай пожалуйста видео как сделать чекпоинты
Вы забыли показать где вызывать методы OnHoverEnter и OnHoverExit. Пробовал их вызывать в скрипте Player, не могу понять через какую переменную делать ссылку на скрипт. Как не пробовал, либо не работает, либо красная ошибка...
проконсультируйтесь пожалуйста через my.first.unity.help@gmail.com
Нашли ответ?
Хороша школа, либо байтят на запись к ним, либо тупо забыли показать, что нужно сделать в скрипте Player для вызова собственно OnHoverEnter и OnHoverExit соответсвенно. Раз уж взялись рассказывать, то доводите дело до конца.
Для тех у кого не работает в скрипте Player измените:
Вместо print("OnHoverEnter"); пишем interactable.OnHoverEnter();
Вместо print("OnHoverExit"); пишем previousInteractable.OnHoverExit();
У деревьев меняется ув развертка особенно это видно на стволах, так что это не лучший вариант Даже когда отключаешь скрипт все равно развертка остается другой пока не грохнешь его на... и не перезагрузишь весь проект заново
что я сейчас посмотрел? для кого этот ролик?
я зашел потому что не знал как реализовать выделение, а тут показали скрипт, сами все методы по закрывали что бы не видно было, исходники не выложил, не слово не сказали как же сделать в итоге выделение? Вся болтовня вокруг обычной логики скрипта и не слово как же сделать выделение! короче хрень какая та
Всмысле? Скачиваешь ассет и делаешь включение/выключение обводки как на 10:30 , что то не понятно?
@@d1kiywolf да уже разобрался, там целое направление что бы понять каким способом и в какой версии сделать outline, тем более в разные года разные вещи работали, лично я считаю человек разобравшийся во всем этом легко сделает то что в этом ролике показано
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[RequireComponent(typeof(Outline))]
public class Interactable : MonoBehaviour
{
private Outline outline;
void Start()
{
outline = GetComponent();
outline.OutlineWidth = 0;
}
public void OnMouseEnter()
{
outline.OutlineWidth = 3;
}
public void OnMouseExit()
{
outline.OutlineWidth = 0;
}
}
почему этого достаточно, чтобы все работало корректно? (рейкаст я отключил) просто у мне не понятно где вызываем методы OnHoverEnter и OnHoverExit и я просто заменил на то что показываю
Спасибо за совет! Я вообще прямо в скрипт Outline дописал два метода:
public void OnMouseEnter()
{
OutlineWidth = 3;
}
public void OnMouseExit()
{
OutlineWidth = 0;
}
И в Awake() добавил OutlineWidth = 0;
Всего делов-то 🙃
и не кого не смушает что написано что в название а заместо в
то ест подсветку объектов а UNITY? а не подсветку объектов в UNITY?
Исправили )
Только у меня в дерьмовом качестве?
видимо да )) У меня в 1080р
@@my_life_story Возможно перерендерилось, у меня было ток 360, ща вроде норм