Ответы пользователя по тегу Unity
  • Как все нормали вывернут "наружу"?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    В видео, предложенном Константин Китманов, на 3:55 рассказывают про правило "против часовой".

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

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

    а так у вас или код движения неправильный. или объект из префаба не создается.
    или создается выключенным/не активным

    кроме того код почти любой даже одна строчка пожалуйста оформляйте
    //как код
    //форматирование и подсветку непросто так сюда приделали))
    
    inst_obj = Instantite (obj, new Vector3 (0, 0, 0), Quaternion.identeti) as GameObject;
    Ответ написан
    2 комментария
  • Как сделать код движения врага (Unity + C#)?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    только по комментариям стало понятно что вам нужно эдакое "ПАТРУЛИРОВАНИЕ" .
    от точки к точке маршрут и обратно.

    так как более подробного описания задачи нет, то для начала - на коронтинах вполне себе вариант.
    если же нужен более универсальный вариант и более сложные маршруты - то или изучайте, придумывайте и пишите (для опыта и все такое, сделаете через какое то время, сама суть и логика там очевидная, не знаю даже что подсказывать то там надо *)
    или возьмите плагин, тот же Simple Waypoint System (sws) и сделайте на нем.

    *
    собственно про логику. массив точек. от одной до другой интерполируем учитывая скорость.
    сюда можно приплести кривую (по формуле или заданную через AnimationCurve)
    изменение скорости - тоже опционально можно впихнуть по кривой, по анимации, линейное...

    в итоге - хотите разгребайте и учитесь кодить. а хотите - посмотрите какой-нибудь простой твинер или плагин понавороченее.
    Ответ написан
    Комментировать
  • AssetBundle только для удаленного использования?

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

    можно благодаря этому и скачивать их, подгружая в проект, и удобно обновлять контент (перерисованные текстурки и поправленные тексты и тд и тп)
    и загружать из бандла только требуемый фаил (этакая более правильная папка Resources)

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

    А по вашему описанному кеису - есть unitypackage . (так собственно в ассет сторе распространяются плагины и ассеты)). как раз один такой архив с метафаилами, который можно подтянуть себе в проект почти безболезненное (если не косячить с одинаковыми именами и тд)
    Ответ написан
    1 комментарий
  • Не скачивает Unity Assets?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    тоже из Крыма - и что я вам скажу - дело именно в провайдере(локации).
    VPN у вас какая? бесплатная?
    у меня вот оплаченная хорошая впн с нормальными скоростями и серверами - и никаких проблем не возникает)
    а без впн - не логинит в юнити аккаун - соответственно никакого доступа к ассет стору и сервисам.
    Ответ написан
    5 комментариев
  • Uniy UnityCrashHandler для чего он нужен?

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

    в принципе можете его удалить, но так очень полезная штука - для понимания что же пошло у игрока не так.

    Вот еще из релиз ноутсов) к 2018.1...какая то бета
    Windows: Added a completely new, out-of-process crash handler for both the Windows Editor and Windows Standalone Player, improving reliability of error.log and minidump generation.
    Ответ написан
    Комментировать
  • Ui кнопка в качестве кнопки на клавиатуре. Что делать?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    малость удивляюсь как люди могут не находить/пропускать) этот важный туториал)
    https://unity3d.com/ru/learn/tutorials/topics/user...

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

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    по сути как сверстали - так и ведет себя..
    у элементов канваса есть точка от которой рисуется..и есть привязка к сторонам "панели"/экрана)

    от вас бы хотелось видеть скрины инспектора элементов канваса, чтобы понимать что вы там наверстали)

    очень похоже что у вас кнопки привязаны к панели/родителю, который "нерастягиваемый", а фиксированного размера.
    Ответ написан
    5 комментариев
  • Как избежать ошибок при сборке apk?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    про сдк..
    проверяйте что у вас стоит 1.8 java sdk
    что стоит версия именно java sdk 64 бита.
    так же платформ тулзы - стабильно и адекватно вроде работали 25 версия..
    более новые - надо версию юнити смотреть, гугл поменяла формат/структуру андроидного сдк..и юнити постарее не умеею видеть, что сдк вообще существует)
    Ответ написан
    Комментировать
  • Unity, Создал кнопку но она не реагирует на клик, как исправить?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    просто вот уточнить. точно выполняется условие?

    if (_gameHelper.PlayerGold >= Price)

    пробовали из под scrollrect вытащить? почти наверняка из за него
    а так много чего может быть. над кнопкой что-то с raycast target галочкой.
    может повесили event triger на content и он все события под себя прехватывает и не пускает "ниже"

    так в пустой сцене.
    -создаем scroll view
    -добавляем кнопки.
    -на content добавляем какой-нибудь Layout.
    Получаем скролящийся список кнопок и каждая работает.
    Смотрите чем еще отличается у вас от этого минимально рабочего набора.

    на всех предоставленных скринах все в общем то верно и адекватно.
    (хотя не хватает RectTransform кнопки и что там на Content)
    Ответ написан
    2 комментария
  • Можно ли использовать canvas для позиционирования игровых объектов в Unity?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    я бы просто уточнил, что в данном случае разговор скорее о
    RectTransform, а не о канвасах, как таковых.
    А так как RectTransform - просто наследует обычный трансформ и раширяет его для удобства работы с UI, то ничего не мешает его использовать.
    Ответ написан
    Комментировать
  • Как разделить куб на полигони?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    по итогу. вы создаете набор новых объектов
    у которых меш - простецкая фигура. и все они стоят в 0,0,0 координатах.

    вам надо или объекты свои вращать. или в мешах указывать правильно позиции вершин.

    как вариант подглядите тут, как создают куб с нуля.
    ilkinulas.github.io/development/unity/2016/04/30/c...
    или может вдруг как точку отсчета меняют в скрипте) это так для ознакомления
    wiki.unity3d.com/index.php/SetPivot
    Ответ написан
    1 комментарий
  • Как разделить экран пополам для ввода с Android устройств?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    что ж.
    для начала Input - https://docs.unity3d.com/ScriptReference/Input.html

    про половины экрана есть два варианта
    1) невидимые кнопки (удобно потом менять позицию и размер)
    2) отследить координаты нажатия мышки (тача)

    1) вариант. читайте про Canvas и вообще примеры работы с ним
    https://unity3d.com/ru/learn/tutorials/s/user-inte...
    собственно сделать две Button и в событие OnClick проставить требуемое.
    (просмотрите уроки - станет понятно, очень все тривиально)
    проблемно будет если вы захотите ставить сразу несколько пальцев на экран - юнити обычно просто берет среднюю позицию.

    2) вариант не такой гибкий в плане правки позиций), но куда проще в плане доработок и свои придумок.
    приблизительно так.

    private Rect leftPart = new Rect(0, 0, Screen.width / 2, Screen.height);
        private Rect rightPart = new Rect(Screen.width / 2, 0, Screen.width / 2, Screen.height);
        // Update is called once per frame
        void Update () {
    
            if(Input.GetMouseButton(0))//touch works too
            {
                if(leftPart.Contains(Input.mousePosition))
                {
                    //jump
                }
                if(rightPart.Contains(Input.mousePosition))
                {
                    //force
                }
            }

    возможно придется под мультитач переделывать (https://docs.unity3d.com/ScriptReference/Input.Get...
    по сути брать не позицию мышки, а позицию тача.
    Ответ написан
    1 комментарий
  • Как сделать так, что бы GraphicsRaycaster возвращал все UI элементы которые попали под рейкаст?

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

    наверное у вас там FindFirstRaycast

    а вообще, в общем случае вам надо
    EventSystem eventSystem = FindObjectOfType<EventSystem>();
    PointerEventData eventData = new PointerEventData(EventSystem.current);
    List<RaycastResult> m_RaycastResultCache = new List<RaycastResult>();
     eventSystem.RaycastAll(eventData, m_RaycastResultCache);
    
    for (var i = 0; i < m_RaycastResultCache.Count; ++i)
    .....


    но это общий принцип как получить список List

    это все что было задето текущим поинтером , а там уже среди всего этого...ковырять)
    Ответ написан
  • Персонаж в прыжке и движении двигается зигзагом или проваливается, как это исправить?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    Из очевидного
    1) Input - не считывается на FixedUpdate
    ввод только на Update.
    2) у вас движение в одном месте физикой (добавляете силу). и тут же рядом вы делаете движение через Translate (по сути телепортируете).
    3) у вас добавление силы идет на Update. все же физику надо делать в цикле физики (в FixedUpdate)

    в общем или управляете положением объекта или управляйте воздействующими на него силами.

    отсюда вот и вытекают все эти странности) "мягкое" с "твердым" путаете))
    Ответ написан
    Комментировать
  • Как сделать так, чтобы объекты не перекрывали друг друга при перетаскивании?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    если я правильно понял, то вы хотите чтоб на перетаскиваемые объекты действовала физика коллайдеров?
    тогда почти наверняка у вас перетягиване идет просто translate или изменение transform.position

    а вам надо двигать физическое тело физикой)
    для начала попробовать все это на fixedUpdate (цикл физики вынести)

    а вообще я бы сделал что во время перетягивания - объект "тянется"/следит за целью)
    (и конечно все еще не через перемещение на Update, а синхронизированно с физикой)

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

    есть еще вариант совсем прям повесить Rigitbody , и придать силу. и все прям совсем по физике сделать) но это уже от геимдизайна зависит и вообще от желания так делать)

    ну а так у вас очень абстрактно описано, потому вот вам абстрактные варианты)
    Ответ написан
  • Почему не работает простенький скрипт C#?

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

    назовите класс и скрипт адекватно. и не путайте ссылку на компонент (transform) с классом (Transform)
    Ответ написан
    Комментировать
  • UnityEngine пропущена директива using или ссылка на сборку, что не так?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    MonoDevelop 5.9.6 removed from Unity Installers and support for it has been deprecated in Unity.

    MonoDevelop 5.9.6 has been replaced by Visual Studio for Mac on macOS as the bundle C# script editor in the macOS installer. Visual Studio 2017 Community is now the only C# script editor installed on Windows.

    Unity no longer recognises MonoDevelop as the “MonoDevelop (built-in)” external script editor in preferences, when it is installed in the default location next to the Unity executable. When no C# code editor is installed and selected in preferences, Unity uses the system default application for opening C# (.cs) scripts.

    так что. по сути инсталер от Юнити - галочка установить визуал студию и работать в ней
    Ответ написан
  • Какого размера нужно делать спрайт 2D персонажа для unity 3D?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    вы бы определились что означает - "слишком маленьким".
    так то можно и 4 пикселя на весь экран отображать.
    если вы про размер в units - то вам верно freeExec подсказывает.

    если же про разрешение и замыленность картинки - то тут просто считайте сами. целевое устроиство какой нить экран 1980 на 1024.
    на этом экране ваш персонаж..занимает ну условно 50% по высоте.
    тоесть экранного места он занимает 512 пикселей условно.
    ну вот и делайте его в фотошопе 1024 х 1024 (небольшой запас, чтоб если что под большее разрешение не перерисовывать)
    а в настроиках импорта текстуры в Unity - укажите достаточные 512 и радуйтесь.
    Ответ написан
    Комментировать
  • Unity(Android) - Как для каждой сцены выставить базовую ориентацию экрана?

    MrMureno
    @MrMureno Куратор тега Unity
    VR for all
    https://docs.unity3d.com/ScriptReference/Screen-or...
    есть такое.и там же про авторотэишн рассказано.

    просто напишите простейший скрипт..и в каждую сцену добавьте.Если прям по разному в сценах.
    но вообще это УЖАСНЫЙ ПОДХОД. делать разную ориентацию в разных сценах. пользователю вертеть туда сюда экран обычно совсем не в кайф))

    ну а если для всех сразу.. то да, настроики проекта, как описал вам GavriKos
    Ответ написан
    1 комментарий