Суббота, 21 Декабря 2024, 11:25

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Вопрос-[ответ] по Unity
QWER56Дата: Понедельник, 09 Августа 2010, 10:58 | Сообщение # 1
старожил
Сейчас нет на сайте
Вопрос-[Ответ] по Unity3d

  • База скриптов Unity3d
  • Курс Уроков по Unity 3D от Alcatraz

    ConsMark - поисковик по интернет магазинам.

    Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54
  • pixeyeДата: Воскресенье, 10 Июля 2011, 17:50 | Сообщение # 641
    Red Winter Software
    Сейчас нет на сайте
    Quote (sk0rpi0n)
    Где мне взять все функции стандартные в Unity?(Типа OnCollisionEnter, OnMouseEnter и т.д.)?)


    это называется script reference

    unity3d->help->script reference - если локально
    ссылка в интернете.

    Там есть влевом верхем углу бар поиска - в него вбиваешь что тебе интересует и получаешь)

    например запрос на слово input
    ТЫЦ


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю



    Сообщение отредактировал pixeye - Воскресенье, 10 Июля 2011, 17:51
    SlavyanOOsДата: Воскресенье, 10 Июля 2011, 18:29 | Сообщение # 642
    Problems, developer?
    Сейчас нет на сайте
    Оно еще в оффлайн варианте есть, ставится вместе с Юнити.
    sk0rpi0nДата: Понедельник, 11 Июля 2011, 11:30 | Сообщение # 643
    Tiberium
    Сейчас нет на сайте
    Я в стандартном, что шел с юнити, нашел только C# confused
    thank's for url smile




    Adventures of the Purple Ball - готов.
    Wanderer - готов.


    Сообщение отредактировал sk0rpi0n - Понедельник, 11 Июля 2011, 11:31
    pixeyeДата: Понедельник, 11 Июля 2011, 12:04 | Сообщение # 644
    Red Winter Software
    Сейчас нет на сайте
    Quote (sk0rpi0n)
    Я в стандартном, что шел с юнити, нашел только C#
    thank's for url


    там где пример кода на страинце вставлен есть скроллер ( в правом нижнем или верхнем углу если не ошибаюсь) с языками - можешь выбрать С# JS BOO - и он тебе пример покажет в этом языке


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    sk0rpi0nДата: Понедельник, 11 Июля 2011, 12:10 | Сообщение # 645
    Tiberium
    Сейчас нет на сайте
    Quote
    там где пример кода на страинце вставлен есть скроллер ( в правом нижнем или верхнем углу если не ошибаюсь) с языками - можешь выбрать С# JS BOO - и он тебе пример покажет в этом языке

    Да я уже заметил))
    Кстати, никто не знает, почему вот этот скрипт не работает?
    Code
    function OnTriggerEnter (other : Collider) {
    TorchOffOn.use.BatteryEnergySeconds +=300.0;
    }




    Adventures of the Purple Ball - готов.
    Wanderer - готов.
    pixeyeДата: Понедельник, 11 Июля 2011, 12:19 | Сообщение # 646
    Red Winter Software
    Сейчас нет на сайте
    Quote (sk0rpi0n)
    Да я уже заметил))
    Кстати, никто не знает, почему вот этот скрипт не работает?


    у тебя коллайдеры к объекту который сталкивается и к объекту столкновения добавлены? + добавь rigidbody, в коллайдерах укажи as trigger ( как то так кажись точно не помню а редактора под рукой сейчас нет )


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    sk0rpi0nДата: Понедельник, 11 Июля 2011, 12:33 | Сообщение # 647
    Tiberium
    Сейчас нет на сайте
    Все, кроме ригитбоди есть.
    А с ригитбоди еще и под землю падает =(
    Вот, что пишет, когда я захожу в зону действия триггера:
    NullReferenceException: Object reference not set to an instance of an object
    BatteryTrigger.OnTriggerEnter (UnityEngine.Collider other) (at Assets/Resources/JScripts/BatteryTrigger.js:3)




    Adventures of the Purple Ball - готов.
    Wanderer - готов.


    Сообщение отредактировал sk0rpi0n - Понедельник, 11 Июля 2011, 12:43
    pixeyeДата: Понедельник, 11 Июля 2011, 12:50 | Сообщение # 648
    Red Winter Software
    Сейчас нет на сайте
    Quote (sk0rpi0n)
    А с ригитбоди еще и под землю падает =(

    в настройках ригидбоди есть привязка кажись центра тяжести - если ее убрать то падать не будет - точно не помню как называется - покапайся в настройках ригидбоди объекта

    Code
    function OnTriggerEnter(other: Collider){

    if (other.gameObject.name=="имя_твоего_объекта)){
    TorchOffOn.use.BatteryEnergySeconds +=300.0;  
    }


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


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    sk0rpi0nДата: Понедельник, 11 Июля 2011, 12:53 | Сообщение # 649
    Tiberium
    Сейчас нет на сайте
    Ту же самую ошибку пишет sad
    NullReferenceException: Object reference not set to an instance of an object
    BatteryTrigger.OnTriggerEnter (UnityEngine.Collider other) (at Assets/Resources/JScripts/BatteryTrigger.js:3)
    Сделал, чтобы этот объект менял цвет при коллизии и ее исчезновении - работает, тут дело в самом TorchOffOn.use.BatteryEnergySeconds +=300.0;
    sad




    Adventures of the Purple Ball - готов.
    Wanderer - готов.


    Сообщение отредактировал sk0rpi0n - Понедельник, 11 Июля 2011, 13:02
    pixeyeДата: Понедельник, 11 Июля 2011, 13:28 | Сообщение # 650
    Red Winter Software
    Сейчас нет на сайте
    Quote (sk0rpi0n)
    TorchOffOn.use.BatteryEnergySeconds +=300.0;


    значит не правильно назначил скрипт - ты же вчера уже подобный использовал и все работало)
    (torchOffOn - надо добавить к объекту на сцене )


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю



    Сообщение отредактировал pixeye - Понедельник, 11 Июля 2011, 13:29
    sk0rpi0nДата: Понедельник, 11 Июля 2011, 13:38 | Сообщение # 651
    Tiberium
    Сейчас нет на сайте
    Quote
    значит не правильно назначил скрипт - ты же вчера уже подобный использовал и все работало)
    (torchOffOn - надо добавить к объекту на сцене )

    Дак в том то и дело, что все правильно...




    Adventures of the Purple Ball - готов.
    Wanderer - готов.
    pixeyeДата: Понедельник, 11 Июля 2011, 14:44 | Сообщение # 652
    Red Winter Software
    Сейчас нет на сайте
    Quote (sk0rpi0n)
    Дак в том то и дело, что все правильно...

    собери свой проект заархивируй залей куданибудь и скинь мне в личку - я гляну что у тебя не так)))) не обещаю что прямо сейчас ( на работе ) но вечером посмотрю и возможно завтра получишь все рабочее ( если пойму чего у тебя там )


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    SarCasmДата: Понедельник, 11 Июля 2011, 15:59 | Сообщение # 653
    заслуженный участник
    Сейчас нет на сайте
    Покажи весь код. Вот что такое например:
    Quote
    TorchOffOn.


    Моя игра Gamiron#11 - Тема Скачать
    sk0rpi0nДата: Понедельник, 11 Июля 2011, 16:25 | Сообщение # 654
    Tiberium
    Сейчас нет на сайте
    pixeye, скину.
    SarCasm,
    Скрипт TorchOffOn:
    Code

    #pragma strict    
    var TorchLight : Light;
    var BatteryEnergySeconds: float = 300;
    var TorchEnergy : GUIText;
    var offon : int = 1;
    static var use: TorchOffOn;

    function awake(){
    use = gameObject.GetComponent.<TorchOffOn>();
    }
    function Update()
    {
        if( Input.GetKeyDown(KeyCode.F) && BatteryEnergySeconds>0 )
        {
         TorchLight.range = 30 - TorchLight.range;
         if (offon == 1) {
          offon = 0;
         } else {
          offon = 1;
          }
        }
            if (BatteryEnergySeconds>0 && offon == 1)
         {
         BatteryEnergySeconds -= 1*Time.deltaTime;
         }    
         if (BatteryEnergySeconds<100)
         {
         TorchLight.color = Color.yellow;
         TorchLight.range = 20;
         }    
        TorchEnergy.text ="" + BatteryEnergySeconds;
           if( BatteryEnergySeconds<=0 )    
        {
            TorchLight.range = 0;
         BatteryEnergySeconds = 0;
           }    
    }    

    Скрипт подбора батарейки BatteryTrigger.js :
    Code
    function OnTriggerEnter (other : Collider) {
    TorchOffOn.use.BatteryEnergySeconds +=300.0;
    Destroy(gameObject);
    }

    Код Destroy почему-то вообще не работает, хотя в другом unity-проекте все ок...




    Adventures of the Purple Ball - готов.
    Wanderer - готов.


    Сообщение отредактировал sk0rpi0n - Понедельник, 11 Июля 2011, 16:28
    SarCasmДата: Понедельник, 11 Июля 2011, 16:41 | Сообщение # 655
    заслуженный участник
    Сейчас нет на сайте
    Может я просто ещё дурак. Но что это:
    Quote
    use = gameObject.GetComponent.<TorchOffOn>();

    То есть ты в скрипте "TorchOffOn" создаешь переменную равную этому же скрипту?
    Опять не весь код:
    Quote
    function OnTriggerEnter (other : Collider) {
    TorchOffOn.use.BatteryEnergySeconds +=300.0;
    Destroy(gameObject);
    }

    Откуда программе знать что такое TorchOffOn?
    Ты сначала должен его получить (взять компонент этого скрипта из нужного объекта)


    Моя игра Gamiron#11 - Тема Скачать
    sk0rpi0nДата: Понедельник, 11 Июля 2011, 16:57 | Сообщение # 656
    Tiberium
    Сейчас нет на сайте
    Quote
    (взять компонент этого скрипта из нужного объекта)

    Я так уже делал!Ошибка:
    Assets/Resources/JScripts/BatteryTrigger.js(3,12): BCE0020: An instance of type 'TorchOffOn' is required to access non static member 'BatteryEnergySeconds'.




    Adventures of the Purple Ball - готов.
    Wanderer - готов.
    seamanДата: Понедельник, 11 Июля 2011, 16:59 | Сообщение # 657
    старожил
    Сейчас нет на сайте
    Quote
    То есть ты в скрипте "TorchOffOn" создаешь переменную равную этому же скрипту?

    Ну и что тут такого. Распространенный способ иметь ссылку на себя в статической переменной, чтобы не искать компонент. Во всяком случае в C# это прекрасно работает.
    Замени:
    use = gameObject.GetComponent.<TorchOffOn>();
    на
    use = this;


    Сообщение отредактировал seaman - Понедельник, 11 Июля 2011, 17:01
    sk0rpi0nДата: Понедельник, 11 Июля 2011, 17:04 | Сообщение # 658
    Tiberium
    Сейчас нет на сайте
    seaman, заменил.Но то же самое:
    NullReferenceException: Object reference not set to an instance of an object
    BatteryTrigger.OnTriggerEnter (UnityEngine.Collider other) (at Assets/Resources/JScripts/BatteryTrigger.js:2)

    Вторая строка кода BatteryTrigger.js:
    TorchOffOn.use.BatteryEnergySeconds +=300.0;
    Весь BatteryTrigger.js(Еще раз повторюсь.):
    Code
    function OnTriggerEnter (other : Collider) {
    TorchOffOn.use.BatteryEnergySeconds +=300.0;
    Destroy(gameObject);
    }




    Adventures of the Purple Ball - готов.
    Wanderer - готов.


    Сообщение отредактировал sk0rpi0n - Понедельник, 11 Июля 2011, 17:05
    seamanДата: Понедельник, 11 Июля 2011, 17:07 | Сообщение # 659
    старожил
    Сейчас нет на сайте
    А на чем TorchOffOn висит?
    sk0rpi0nДата: Понедельник, 11 Июля 2011, 17:10 | Сообщение # 660
    Tiberium
    Сейчас нет на сайте
    Quote
    А на чем TorchOffOn висит?

    SpotLight.




    Adventures of the Purple Ball - готов.
    Wanderer - готов.
    Поиск:

    Все права сохранены. GcUp.ru © 2008-2024 Рейтинг