Задать вопрос
  • Персонаж в unity вилетает со сцены?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    вам как минимум надо дельту на апдеите умножать на Time.deltaTime - чтобы было плавно.
    иначе получается что вы там придаете очень такую нехилую скорость.
    https://docs.unity3d.com/ScriptReference/Time-delt...
    вот почитайте что это такое.
    ну и чтоб учитывало корректно коллайдеры - вам правильно советует Даниил Басманов двигать через физику

    но при огромных значениях - даже честный просчет не поможет) "протолкнется" сквозь коллайдер или станет неадекватно вести себя
    Ответ написан
    Комментировать
  • Изменение языковых параметров DictationRecognizer Unity?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    в Юнити это все на всего Api для Windows 10 по сути.
    поэтому вам надо в систему лезть и смотреть.
    https://answers.unity.com/questions/1236779/can-i-...

    и по сути будет всего лишь на системном языке или на доступном в этом апи в винде( что по сути означает что толком кроме англ и на десятке - что то врядли будет классно работать, да и вроде есть же стронние библиотеки для голосового управления. более универсальные)
    Ответ написан
    Комментировать
  • Unity3D(C#) - Почему не восстанавливается здоровье персонажа?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    судя по коду у вас должно быть пять жизней и пять сердечек (и кстати советовал бы ввести одну переменную под КОЛИЧЕСТВО ЖИЗНЕЙ и везде использовать именно её.

    а так вам могу только предложить отладку включить и посмотреть что происходит на момент пополнения сердец

    но если не хотите сами искать то вот вам так сказать споилер-наводка
    if (i < character.Lives) - а от какого до какого значения меняется у вас жизнь? я так вижу от 0 до 4.
    то есть полные 5 жизней у вас когда Lives == 4
    а при проверке будет только для i равное 0,1,2,3 - включаться.
    тоесть вам или жизни считать от 1 до 5. и условие в свойстве Lives менять. или по массиву проходите с другим условием))
    Ответ написан
    2 комментария
  • Как сделать физику гранатомета?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    тоесть вы не знаете про физику в юнити и не представляете как сделать банально "падающий камень" и как придать ему силы..??

    надеюсь с английским у вас не так плохо..
    https://unity3d.com/ru/learn/tutorials/temas/multi...
    тут разобрана пуля без гравитации, но принцип все тот же, разве что гравитацию включить или прибавить еще вторую силу сверху давящую, чтоб сделать как бы более тяжелый снаряд

    ах да если мы про математику говорим и все такое..то вот отличная статья
    https://blog.forrestthewoods.com/solving-ballistic...
    опять же на англ.(сорян но на англ годного материала куда больше и проще найти)
    Ответ написан
  • Unity. Как сохранить параметры в редакторе при выходе из игры?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    вот вам и посоветовали собственно через префабы сохранять нужное.

    а на рантаиме применять изменения - слишком не безопасно) поэтому есть собственно вид сцены где все можно двигать в редакторе до запуска..
    и вот ссылочка на форум и официальный ответ. хотя может в новеньких юнити что то и появилось уже..наголосовали за фитчу таку.
    https://forum.unity.com/threads/saving-scene-in-ru...

    если прям хочется на рантаиме сохранять
    https://assetstore.unity.com/packages/tools/utilit...
    купите плагин или подобный.
    или читайте про UnityEditor скрипты и напишите себе сами такой..
    для старта могу подсказать https://docs.unity3d.com/ScriptReference/AssetData...
    можно вот получить доступ к ассетам (всем фаилам в папке Assets)
    Ответ написан
  • Canvas OVERLAY или CAMERA?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    Вы же прочитали в мануале что по сути это одно и тоже?
    вот только второй вариант привязан не к экрану, а к камере какой то конкретной, что позволяет меняя размер камеры дополнительно подгонять размер интерфеиса.
    Ответ написан
    Комментировать
  • Unity+DOTween как правильно пользоваться, примеры кода?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    вы уж простите, но чем вам не угодили документация и целый проект с примерами, который можно найти на саите разработчика??
    или вам из документации сюда скопировать? или на анг не понятно?
    dotween.demigiant.com/examples.php - проект с демо сценами.
    dotween.demigiant.com/documentation.php - документации. от инициализации до описания трех видов создания "твина"
    Ответ написан
    Комментировать
  • Unity3D - Почему не отображаются спрайты при запуске проекта?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    Да все что угодно
    слой на камере отключили
    шейдер может накрутили

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

    ну а так бы все же скрины инспектора для камеры и одной из этих платформочек.
    Ответ написан
    Комментировать
  • Как не блокировать raycast из дочернего Ui?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    где то тут уже отвечали.
    не используйте EventTriger - он перехватывает все(прям вот перехватывает и не дает дальше никому событий, жадный очень)
    в скрипте item (или отдельном) реализуйте интерфеисы IPointerClick и подобное.

    https://docs.unity3d.com/ScriptReference/EventSyst...

    должно все заработать тогда
    Ответ написан
  • Как получить массив-компонент из объекта?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    массив компонент? ну так вам надо взять именно компонент со скриптом..

    public GameObject hotbar; // это поидее ссылка на объект, на котором висит HotbarBtn (script)
    private GameObject[] slots; // это те самые слоты которые вы хотите заполнить
    void Start()
    {
    // вот собственно получили ссылку на компонент
    HotbarBtn selectedComponentWithMassive = hotbar.GetComponent<HotbarBtn>(); 
    //а теперь уже из компонента можем достать массив;
    slots=selectedComponentWithMassive.Btns
    //если Btns и slots - являются массивами типа GameObject[]
    }


    так же предложил бы вам подумать..а вам точно надо в двух скриптах хранить одно и тоже??
    selectedComponentWithMassive - получив ссылку на массив, где нибудь на старте - вы уже по этой ссылке можете с ним работать..
    так что поидее сохранять ту же ссылку в еще одну переменную - может оказаться излишним.
    Ответ написан
    Комментировать
  • Ошибка в скрипте, Unity ADS, как настроить?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    для начала, вставляйте код через специальный тэг
    будет и форматирование и подсветка и возможность нормально его прочитать у других))


    а по сути вопроса..
    можно конечно просто написать вам правильный вариант, но давайте попробуем НАУЧИТЬСЯ..

    вот вам пару намекающих вопросов
    - вы в курсе что Update вызывается КАЖДЫЙ КАДР ?? и что у вас будет с advCount за первые же пять кадров?
    - а где у вас собственно логика проигрыша ? (так то я вижу что вроде как в месте с проверкой флага player.isDead)
    - а вы не думали что счетчик проигрышей надо как раз в месте проигрыша увеличивать?
    - и возможно тогда в том же месте где увеличиваем счетчик проигрышей - стоит и сделать проверку на то что это ПЯТЫЙ по счету проигрышь и запустить рекламу)

    судя по коду, если он ваш конечно, то проверка на "каждый пятый" - остатком от деления вы делать можете
    и метод запуска отображения рекламы - тоже умеете запустить.

    надеюсь вам это поможет. если не ясно из всех намеков - то я бы предложил какие то основы поглядеть и курсы простецкие , чтоб начать вырабатывать эдакое "программистско алгоритмическое" мышление))
    Ответ написан
    1 комментарий
  • Как вызвать переменную из другого класса?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    у вас так и не понятно какую переменную из какого скрипта вы хотите вызвать.!?

    и второй кусок кода - не класс, а просто пару строчек

    но в общем то случае..если вам нужна глобальная переменная сделайте

    public static float HealthWall = 100;
    тогда сможете обращаться к ней GameController.HealthWall из любого скрипта

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

    пока вообще не понятно что куда вы хотите "дернуть" и зачем..отсюда вытекает что толком и не понятно - что вам подсказать)
    Ответ написан
  • Существует утилита для создания шрифта?

    MrMureno
    @MrMureno
    VR for all
    я просто уточню. вам надо внутри своей программы встроить такую возможность? или просто шрифт создать ??

    так то редактировать и создавать шрифт есть же отличный FontForge
    https://fontforge.github.io/en-US/

    не знаю точно на счет импорта готовой графики, но то что там можно создать/нарисовать свой символ (правильно по глифам и тд) и вставить его вместо любого по коду - это точно.
    Ответ написан
  • Corona sdk не видит JDK.Что делать?

    MrMureno
    @MrMureno
    VR for all
    ну судя по форумам давняя болячка короны))

    32 битная!!! версия JDK для начала НУЖНА.
    на всякий случай корректные пути в JAVA_HOME и PATH . остальное так.. по желанию)

    обычно решение у людей выглядит примерно
    1) Uninstall all JDK
    2) Install JDK(x86) in C:\Program Files(x86)\Java (for me works only in this folder)
    3) Install JRE in folder C:\Program Files(x86)\Java\jre
    4) Set JAVA_HOME to C:\Program Files(x86)\Java
    5) Set PATH to C:\Program Files(x86)\Java\bin
    6) Click build, but Corona will say "Cant find C:\Program Files(x86)\Java\jre1.8.0_31\bin\client\jvm.dll"
    7) Rename C:\Program Files(x86)\Java\jre to C:\Program Files(x86)\Java\jre1.8.0_31
    Ответ написан
    Комментировать
  • Unity не хочет запекать освещение, что я делаю не так?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    что ж, по всему выходит что у вас модель без развертки как будто, без какой либо
    о чем вам собственно и пишет в лог юнити

    ну или баг в версии юнити тоже не исключен, но все же менее вероятен, чем кривая(пустая) модель

    предлагаю вам попробовать дефолтный куб поставить на сцену и запечь свет на него, если сработает - то чините модель)
    Ответ написан
    Комментировать
  • Как сделать рулетку в unity3d?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    новые у вас и с этим кодом создадуться, тут проблем нету.

    а удалить старые. есть у вас
    GameObject obj - ссылка на объект.
    сохраните в классе ссылку на него (сейчас это локальная переменная в методе)
    (в вашем случае это будет массив ссылок или список)
    List<GameObject> objRefs  = new List<GameObject>();
    
    /////
    
    for ()
    {
    //вот вы создали объект и запоминаем в список
    objRefs.Add(obj);
    }
    
    /////удалить все из списка пройтись по списку
    foreach(var obj in objRefs)
    {
    Destroy(obj );
    }
    objRefs.Clear(); // и почистили список


    чистите старые объекты..в начале вашего метода к примеру.
    еще перед удаление объекта - можете проверить его на null, чтоб не пробовать удалять старые, вдруг они у вас самоуничтожаться могут или еще какая-то логика.

    Ну и так к слову..инстанциация дорогая операция, подумкйте над тем что возможно стоит создать все префабы на сцене и просто включать/выключать (может еще перемещать и настраивать) готовые уже объекты на сцене.
    Ответ написан
    3 комментария
  • Trying to get a relatively sized RenderBuffer without an active camera - в Unity?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    что там за вакханалия - это еще вопрос конечно..может у вас у камеры для зеркала тоже тэг MainCamera стоит??

    а так у вас же вроде ошибка сама за себя говорит..
    Trying to get a relatively sized RenderBuffer without an active camera
    private void OnBecameInvisible()
        {
            MCamera.enabled = false;
        }

    как бы вы делаете камеру неактивной, и ругается что не выйдет взять рендер текстуру из выключенной камеры

    ну и так бонусом гляньте вот сюда
    https://msdn.microsoft.com/ru-ru/library/system.tu...
    вам чтоб не array возвращать поидее более чем сгодиться. и не будет этих некрасивых
    System.Convert.ToInt32((RecalculateRenderTexture(Move.herTransorm.position)[0])

    и вообще так к слову..зачем вы сделали массив из float если на деле все конвертируете в int??

    да и вы понимаете что три раза вызываете метод??
    float[] tempArray = RecalculateRenderTexture(Move.herTransorm.position);
    Camera.targetTexture= RenderTexture.GetTemporary(
                System.Convert.ToInt32(tempArray [0])),
                System.Convert.ToInt32(tempArray [0])), 
                System.Convert.ToInt32(tempArray [2])));


    Хотя бы так. просто для читаемости.
    Ответ написан
    5 комментариев
  • Dragon Bones - хороший выбор для начинающего разработчика игр на Unity?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    Так то на форуме обсуждают все это и даже используют..
    https://forum.unity.com/threads/dragonbones-in-uni...
    Ответ написан
    Комментировать
  • Вывод информации о текущем здоровье в VR?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    в углу экрана - вообще не для VR. как вы в угол посмотрите?? переферическим зрением?? очень не удобно

    а так все верно вам попадалось, в 9 из 10 случаев это Canvas . А то что он залезает в текстуры, ну это вы как то или лвл дизайном или геимдизайном избегаете)
    или сделайте шейдер который будет поверх всего рисоваться всегда..(некоторые делают еще второй камерой. у камер разная глубина, и одно всегда рисует как бы поверх второй)

    но а вообще избежать в VR чтоб рука/интерфеис/контроллер не влезали в пол/стену/прочие предметы - универсального решения никто не придумал.
    Обычно просто дизаин уровня и перемещения делается так, чтоб минимизировать подобные случаи.
    Ну или местами просто нет свободы перемещения (по рельсам или стоит неподвижно, или телепортируется только в определенные заранее точки) - тогда опять же. просто заранее раставить так, чтоб не возникало таких ситуаций.)

    надеюсь хоть чем то полезна оказалась вся эта информация/тавтология)
    Ответ написан
  • Т transform.right не работает на спрайты созданные спавном, в чем причина?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    ох, здраствуйте
    давайте начнем разгребать)

    что понимается под "пушка ведет себя неестественно"?
    из приведенного "обрывка" кода не понятно в чем разница у вас между спавном и существующим в сцене спраитом.
    вообще не ясно как "пушка" выбирает цель, есть подозрение что вообще ни как.

    target в скрипте пушки у вас как подставляется?? он один раз и навсегда ссылкой на префаб??

    что вы пытаетесь сделать вот этой строкой ??
    transform.right = target.position - transform.position;

    вы же понимаете что (target.position - transform.position ) это вектор направления в сторону цели?
    вы так вращаете объект в сторону цели??

    про "пушка чтоб знала о всех врагах", это уже от архитектуры приложения. Как по мне при спавне вам бы запоминать созданный объект и складывать все эти объекты в список.

    Ну и последнее, разбивать бы вам это дело на кучу мелких вопросов, а то вы получается хотите целый урок обучающий в одном вопросе)
    Ответ написан