Эффекты на камере при в ходе в тригер. - Форум Игроделов
Вт, 04 Фев 2025, 03:08 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Эффекты на камере при в ходе в тригер.
toxa6666Дата: Сб, 03 Авг 2013, 14:25 | Сообщение # 1
 
Сообщений: 78
Награды: 0
Репутация: 63
Статус: Offline
Как сделать появления на камере эфектов при входе в тригер?
 
СообщениеКак сделать появления на камере эфектов при входе в тригер?

Автор - toxa6666
Дата добавления - 03 Авг 2013 в 14:25
игнатДата: Сб, 03 Авг 2013, 15:55 | Сообщение # 2
 
Сообщений: 706
Награды: 0
Репутация: 107
Статус: Offline
Очень просто:

Код

using UnityEngine;
using System.Collections;

[AddComponentMenu("DirlaX/Test")]   // Добавляем скрипт в меню (автоматически)
[RequireComponent(typeof(SphereCollider))]  // Добавляем коллайдер (автоматически)
[RequireComponent(typeof(Rigidbody))]   // Добавляем ригидбоди (автоматически)
[RequireComponent(typeof(BlurEffect))]   // Добавляем эффект (автоматически)

public class Test : MonoBehaviour      
{
     
   public BlurEffect bE;  // Добавляем эффект
   public SphereCollider sC;  // Добавляем коллайдер
     
   void Start ()  // Старт
   {
    bE = transform.GetComponent <BlurEffect> () as BlurEffect;   // Указываем на эффект
    bE.enabled = false;  // Стандартно отключаем его
    sC = transform.GetComponent <SphereCollider> () as SphereCollider;   // Добавляем коллайдер
    sC.radius = 0.2f;   // Добавляем радиус коллайдера
    sC.isTrigger = true;  // Включаем тригер на коллайдере
    rigidbody.isKinematic = true;  // Добавляем к ригидбоди кинематик   

   }
     
     
   void OnTriggerEnter (Collider other)  // Если наш коллайдер входит в (другой коллайдер) то
   {
    if (что-то)  // если этот "другой коллайдер" есть (что-то: слой, или что-нбудь ещё)   
    {
     StartCoroutine( On() );  // Вызываем функцию
    }
       
   }
   void OnTriggerExit (Collider other)  // Если наш коллайдер выходит из (другого коллайдера) то
   {
    if (что-то)  // если этот "другой коллайдер" есть (что-то: слой, или что-нбудь ещё)   
    {
     StartCoroutine( Off() );  // Вызываем функцию
    }
   }
     
     
     
   IEnumerator On ()  //функция
   {
    yield return null;
    if (!bE.enabled)  // если эффект не включён
    {
     bE.enabled = true;  // Включаем
    }   
       
   }
   IEnumerator Off ()  //функция
   {
    yield return null;
    if (bE.enabled)  // если эффект включён
    {
     bE.enabled = false;  // Выключаем
    }
   }
}



Правила форума · участник GCC
 
СообщениеОчень просто:

Код

using UnityEngine;
using System.Collections;

[AddComponentMenu("DirlaX/Test")]   // Добавляем скрипт в меню (автоматически)
[RequireComponent(typeof(SphereCollider))]  // Добавляем коллайдер (автоматически)
[RequireComponent(typeof(Rigidbody))]   // Добавляем ригидбоди (автоматически)
[RequireComponent(typeof(BlurEffect))]   // Добавляем эффект (автоматически)

public class Test : MonoBehaviour      
{
     
   public BlurEffect bE;  // Добавляем эффект
   public SphereCollider sC;  // Добавляем коллайдер
     
   void Start ()  // Старт
   {
    bE = transform.GetComponent <BlurEffect> () as BlurEffect;   // Указываем на эффект
    bE.enabled = false;  // Стандартно отключаем его
    sC = transform.GetComponent <SphereCollider> () as SphereCollider;   // Добавляем коллайдер
    sC.radius = 0.2f;   // Добавляем радиус коллайдера
    sC.isTrigger = true;  // Включаем тригер на коллайдере
    rigidbody.isKinematic = true;  // Добавляем к ригидбоди кинематик   

   }
     
     
   void OnTriggerEnter (Collider other)  // Если наш коллайдер входит в (другой коллайдер) то
   {
    if (что-то)  // если этот "другой коллайдер" есть (что-то: слой, или что-нбудь ещё)   
    {
     StartCoroutine( On() );  // Вызываем функцию
    }
       
   }
   void OnTriggerExit (Collider other)  // Если наш коллайдер выходит из (другого коллайдера) то
   {
    if (что-то)  // если этот "другой коллайдер" есть (что-то: слой, или что-нбудь ещё)   
    {
     StartCoroutine( Off() );  // Вызываем функцию
    }
   }
     
     
     
   IEnumerator On ()  //функция
   {
    yield return null;
    if (!bE.enabled)  // если эффект не включён
    {
     bE.enabled = true;  // Включаем
    }   
       
   }
   IEnumerator Off ()  //функция
   {
    yield return null;
    if (bE.enabled)  // если эффект включён
    {
     bE.enabled = false;  // Выключаем
    }
   }
}

Автор - игнат
Дата добавления - 03 Авг 2013 в 15:55
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2025