Воскресенье, 29 Сентября 2024, 08:31

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

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

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

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

    Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54
  • pixeyeДата: Среда, 24 Апреля 2013, 22:13 | Сообщение # 3901
    Red Winter Software
    Сейчас нет на сайте
    Ответ: 1) могут стащить твой веб-проект 2) при определенной сноровке могут достать и карту

    3) Это никому не нужно.


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

    allodsДата: Четверг, 25 Апреля 2013, 01:49 | Сообщение # 3902
    почти ветеран
    Сейчас нет на сайте
    ребят в JS чтоб вывести картинку на экран вот этот код?

    GUI.DrawTexture(new Rect(0, 0, 358, 83), interface01, ScaleMode.ScaleToFit, true, 10.0);

    если да то что такое

    No appropriate version of 'UnityEngine.GUI.DrawTexture' for the argument list '(UnityEngine.Rect, System.Type, UnityEngine.ScaleMode, boolean, float)' was found.
    basistДата: Четверг, 25 Апреля 2013, 02:14 | Сообщение # 3903
    пациент Flight Dream Studio
    Сейчас нет на сайте
    Цитата (allods)
    вывести картинку на экран вот этот код?

    Ну да.

    Цитата (allods)
    если да то что такое

    Скрипт в студию
    allodsДата: Четверг, 25 Апреля 2013, 02:19 | Сообщение # 3904
    почти ветеран
    Сейчас нет на сайте
    Код
    function OnGUI() {
        GUI.DrawTexture(new Rect(0, 0, 358, 83), interface01, ScaleMode.ScaleAndCrop, true, 10.0);
        GUI.Label(new Rect(30, 10, 100, 20), "gold " +gold);
        GUI.Label(new Rect(170, 10, 100, 20), "wood " +wood);
    }


    Это и все что есть, ну там еще саму картинку загружаю
    GantZ_YakaДата: Четверг, 25 Апреля 2013, 07:37 | Сообщение # 3905
    почетный гость
    Сейчас нет на сайте
    Подскажите плиз, есть ли возможность скрыть не объект целиком, а его лимб? Причем если на объект натянут анимированный бипед?
    К примеру есть анимация как чувак берет с пояса сумку, в момент взятия сумки нужно, чтобы лимб сумки спрятать с глаз (который анимируется также как и весь объект через единый бипед, сумка привязана и изгибается вместе с телом). Ну и не проблема потом поместить ему в руку новый объект в виде сумки.
    Не соображу, как грамотно такое реализовать sad
    seamanДата: Четверг, 25 Апреля 2013, 16:30 | Сообщение # 3906
    старожил
    Сейчас нет на сайте
    allods
    Что такое interface01? Судя по ошибке - это тип - System.Type. А что должно быть в GUI.DrawTexture?- правильно - текстура. Приведите код, как Вас и просили. Не кусок, а все. Ну, если уж все никак, то хотя бы - как определена interface01 и как ей присваиваете значение.
    allodsДата: Четверг, 25 Апреля 2013, 16:43 | Сообщение # 3907
    почти ветеран
    Сейчас нет на сайте
    Пффффффф я просто снубил, я задал var interface01 = Texture; в место var interface01 : Texture; как же я так опростоволосился

    Добавлено (25.04.2013, 16:43)
    ---------------------------------------------
    seaman
    Спасибо без тебя не заметил бы

    TheReaperДата: Четверг, 25 Апреля 2013, 21:29 | Сообщение # 3908
    был не раз
    Сейчас нет на сайте
    У меня есть смесь двух скриптов: воспроизведения на весь экран видео с остановкой.

    Вопрос: на что его надо привязать, чтобы он нормально воспроизвёлся?
    И будет ли воспроизодиться звук, если нет, то в каком направлении копать?


    Fr0sTДата: Воскресенье, 28 Апреля 2013, 21:44 | Сообщение # 3909
    постоянный участник
    Сейчас нет на сайте
    Люди,двигаю объект через vector3.lerp(начало,конец,скорость) но оъект без скорости моментально телепортируется,что это может быть,раньше всё ок было.

    Добавлено (28.04.2013, 21:44)
    ---------------------------------------------
    TheReaper, повесь его на тот объект на котором бужешь видео воспроизводить,а если звука нет то надо источник звука повесить на объект,audio source.




    seamanДата: Воскресенье, 28 Апреля 2013, 22:04 | Сообщение # 3910
    старожил
    Сейчас нет на сайте
    А с чего Вы взяли, что в лерпе третий параметр - это скорость?
    GantZ_YakaДата: Понедельник, 29 Апреля 2013, 14:09 | Сообщение # 3911
    почетный гость
    Сейчас нет на сайте
    подскажите самый быстрый способ скриптом перенести параметры одного объекта на другой (координаты позиций и углы вращения). ну позязяяяя ^^
    Fr0sTДата: Понедельник, 29 Апреля 2013, 17:36 | Сообщение # 3912
    постоянный участник
    Сейчас нет на сайте
    seaman, ну так скажите что этоо за параметр пожалуйста.А вообще может я тогда slerp использовал,непомню.Незнаю с чего взял.

    Добавлено (29.04.2013, 17:36)
    ---------------------------------------------
    GantZ_Yaka, получи данные объекта через gameobjeсt.getComponent ,и получай нужный компонент - transform например.А можно создать переменную тапа gameobject obj и написать obj.transform.position






    Сообщение отредактировал Fr0sT - Понедельник, 29 Апреля 2013, 17:37
    seamanДата: Понедельник, 29 Апреля 2013, 19:55 | Сообщение # 3913
    старожил
    Сейчас нет на сайте
    Третий параметр - это "расстояние" от "начало", приведенное к 1.
    Т.е. например, если это для скаляра, а не вектора. Имеем три точки - начало (a), конец (b) и текущая ©. Третий параметр - t.
    Тогда t = (c-a)/(b-a) или c=a+t*(b-a) Кстати отсюда и название - LERP - linear interpolation линейная интерполяция. SLERP - сферическая, там формулы сложнее.
    Теперь просто нужно логически подумать. Нам нужно переместить объект из начала в конец за время t.
    1. Нужно запомнить время старта.
    2. Нужно каждый кадр двигать объект на определенное расстояние пока не достигнет конца.
    Код
    float startTime;
    bool move;
    Vector3 startPos;
    Vector3 endPos;
    float lengthMoving; // время за которое перемещаемся

    void Start()
    {
          startTime = Time.time;
          move = true;
          position = startPos;
    }
    void Update()
    {
          if(move)
          {
             if((Time.time - startTime) == lengthMoving) move = false;
             position = Vector3.Lerp(startPos, endPos, (Time.time - startTime) / lengthMoving);
          }
    }

    Сложно? Конечно. Просто обычно никому не нужно двигать объект с постоянной скоростью. Обычно нужно чтобы он по мере приближения замедлял скорость. А это сделать гораздо проще. В качестве "начала" используем текущую позицию объекта. В качестве параметра используем Time.deltaTime * speed. Тогда получим
    Код
    Vector3 endPos;
    float speed;

    void Update()
    {
             position = Vector3.Lerp(position, endPos, Time.deltaTime *speed);
    }

    Как видите - третий параметр не скорость, а скорость * время. Т.е. - по сути расстояние (приведенное к 1 для привередливых).


    Сообщение отредактировал seaman - Понедельник, 29 Апреля 2013, 19:59
    EchoITДата: Понедельник, 29 Апреля 2013, 21:41 | Сообщение # 3914
    старожил
    Сейчас нет на сайте
    Fr0sT, кстати, лучше вместо лерпа использовать MoveTowards, если тебе нужно реализовать движение юнитов, к примеру. Лерп немного неадекватно себя ведёт в этом плане (сильно ускоряется в начале, да очень сильно замедляется в конце). Параметры задаются так же, правда в последнем указывается не время, а шаг. Но я так же использую Time.deltaTime, но множитель ставлю несколько больше, чем в лерпе.

    Долгожданный анонсик: State of War

    Сообщение отредактировал EchoIT - Понедельник, 29 Апреля 2013, 21:42
    Fr0sTДата: Понедельник, 29 Апреля 2013, 23:56 | Сообщение # 3915
    постоянный участник
    Сейчас нет на сайте
    seaman, Большее спасибо))Что то не обратил на это в справке внимания никакого,теперь буду знать =)
    EchoIT, точно,так и сделаю лучше up




    seamanДата: Вторник, 30 Апреля 2013, 08:04 | Сообщение # 3916
    старожил
    Сейчас нет на сайте
    Цитата
    Лерп немного неадекватно себя ведёт в этом плане

    А Вы еще раз перечитайте мое сообщение. Там четко описано как делать равномерное движение и почему обычно оно не равномерное. Следовательно это не Лерп ведет себя неадекватно, а Вы его используете не так как надо. Ну а насчет что использовать - что удобнее. Если скажем Вам нужно будет плавно менять цвет, то придется изучать Lerp.
    GantZ_YakaДата: Вторник, 30 Апреля 2013, 08:47 | Сообщение # 3917
    почетный гость
    Сейчас нет на сайте
    Цитата (Fr0sT)
    GantZ_Yaka, получи данные объекта через gameobjeсt.getComponent ,и получай нужный компонент - transform например.А можно создать переменную тапа gameobject obj и написать obj.transform.position

    спасиб, вроде разобрался)

    помогите плиз заменить в SkinnedMeshRenderer один материал другим.
    везде пишут про:

    GameObject.Find("Player").GetComponent<SkinnedMeshRenderer>.materials[7] = Material2;

    не пойму почему такой код не работает ((
    еще пишут такой вариант: GameObject.Find("object").renderer.sharedMaterial = Material2; но это если материал на объекте один, а у меня несколько.
    castielblackДата: Вторник, 30 Апреля 2013, 16:04 | Сообщение # 3918
    почетный гость
    Сейчас нет на сайте
    Цитата (GantZ_Yaka)
    еще пишут такой вариант: GameObject.Find("object").renderer.sharedMaterial = Material2; но это если материал на объекте один, а у меня несколько.

    Так есть же еще :
    Код

    GameObject.Find("object").renderer.sharedMaterials


    Знания : C#, Lua, C++, Unity, Dreemchest, DirectX 11
    Выпущенные проекты : BuildAndRun, Match 3 Cubes


    Сообщение отредактировал castielblack - Вторник, 30 Апреля 2013, 16:05
    TheReaperДата: Вторник, 30 Апреля 2013, 16:53 | Сообщение # 3919
    был не раз
    Сейчас нет на сайте
    Цитата (Fr0sT)
    повесь его на тот объект на котором бужешь видео воспроизводить

    То понятно, но задаётся и подразумевается.
    Цитата (TheReaper)
    PlayFullScreenMovie

    Цитата (TheReaper)
    воспроизведения на весь экран видео

    Мне не нужно, чтобы он тупо на кубе воспроизводился.


    ЛевшаДата: Четверг, 02 Мая 2013, 14:11 | Сообщение # 3920
    почти ветеран
    Сейчас нет на сайте
    Цитата (TheReaper)
    Мне не нужно, чтобы он тупо на кубе воспроизводился.

    А что разве на ГУЙ мовиТекстура не вешаеться ?


    X.cor.R (Prologue)
    Поиск:

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