Ответы пользователя по тегу Unity
  • Как сгенерить TMP_FontAsset, если есть текстура шрифта и описание того, из каких координат брать "картинку" для glyph?

    @Ksushqa Автор вопроса
    Unity developer
    Основными важными моментами оказалось вот что:
    - применить свою текстуру в качестве атласа шрифта и применить свой материал;
    - передать в _MainTexture материала шрифта нужную текстуру с символами;
    - заполнить данные glyph table;
    - заполнить данные character table.
    Обратить внимание на то, что поля AtlasWidth и AtlasHeight должны соответствовать размеру текстуры.

    После генерации может быть такое, что шрифт сразу не обновится, поэтому его нужно сначала проверить.
    В моем случае в инспекторе preview для символов были "пустыми", несмотря на то, что в тексте они выглядели корректно. Поэтому лучше проверять символы шрифта на каком-то тексте в сцене.
    Не забывать перед каждой генерацией очищать glyph table и character table шрифта.
    Ответ написан
    Комментировать
  • По какой причине маска не работает с ui объектами, на которых LWPR-шейдеры?

    @Ksushqa Автор вопроса
    Unity developer
    Не нашла решения лучше, чем сделать свой pbr-shader через шейдер-граф. Там добавила маску и свойство для сдвига маски. Через компонент Mask для шейдеров lwpr не удалось сделать.
    Ответ написан
    Комментировать
  • Какие есть способы взаимодействия между классами/объектами C# Unity?

    @Ksushqa
    Unity developer
    А зачем вам обращаться из класса к любому объекту на сцене? Этот вопрос сразу видится некорректным, потому что я с трудом представляю такие ситуации, когда ОДИН класс должен иметь связь со ВСЕМИ объектами. Эти объекты ВСЕ однотипны?

    Я навскидку вижу два пути.
    1. Если вам нужно, чтобы одинаковый код отрабатывал для нескольких геймобжектов, например, когда те появляются на сцене (это могут быть разные моменты), то можно повесить один и тот же скрипит на все необходимые GO. Скрипт будет обращаться к GO, на котором висит и будет что-то там изменять или контролировать. Чаще всего, это что-то поведенческое. Поведение моба, эффекта и т.д.
    2. У вас будет некий контроллер со списком объектов, которые он контролирует. И контроллер, получая информацию от системы, будет решать, какой объект и что должен делать ("убить", поставить на паузу, заспавнить что-то и т.д.).

    В качестве дополнения. Если вам нужен некий контроллер, который должен быть доступен из разных участков проекта, то его делают синглтоном, как вариант. Этот контроллер занят важными делами, например, контролирует состояние игры (playing, pause, starting и т.д.) и переключает его. И у него другие скрипты могут уточнить, а что там вообще у нас? Пауза? А, ну тогда я не буду спавнить свои эффекты/делать другие локальные штуки.
    Ответ написан
    5 комментариев
  • Когда можно искать работу?

    @Ksushqa
    Unity developer
    Понемногу изучаю C# и Unity, идет тяжело, но я пытаюсь учиться

    Программированием занимались ранее?
    Какое образование? Есть законченное высшее по профилю?
    И меня интересует, в какой момент можно искать работу?

    В тот момент, когда вы будете представлять хоть какую-то ценность для работодателя. Условно – когда вы, пусть криво-косо, но сможете сделать законченное играбельное приложение. Для того чтобы понять, что вы на это способны – делайте тестовые задания. В те фирмы, где требуются джуны из категории "пусть что-то пишет, главное чтоб работало" задания попроще. Где джуны нужны уже именно как специалисты, но с единственным ограничением – небольшим опытом (полгода-год) – тестовые раза в 2-3 сложнее.
    Можно ли фрилансить?

    Однозначно да. Вконтакте в тематических группах в свое время нашла пару проектов для старта :)
    Ответ написан
    Комментировать
  • Как по-нормальному импортировать .dae (collada) файл в Unity?

    @Ksushqa Автор вопроса
    Unity developer
    После суток изучения нашла вот такую информацию:
    При импортировании в Unity текстуры и шейдеры часто теряются. В данном случае шейдеры обязательно потерялись бы, потому что они не импортируются в Unity (файлы *.cgfx). Текстуры *.dds спокойно переносятся в проект, но желательно их перевести в *.png. Текстуры ставятся на место из редактора Unity.
    Ответ написан
    Комментировать
  • Чем лучше открыть модель?

    @Ksushqa Автор вопроса
    Unity developer
    Короче говоря, выход увидела только такой.
    • Для переноса dae (collada) файла в Unity необходимо установить Maya (+ поставить на нее плагин openCollada). Текстуры на меши пришлось перетаскивать вручную.
    • Часть мешей портировалась лицом "от камеры" (не в ту сторону).
    • Cgfx-шейдеры в Unity путем ctrl+c/ctrl+v вставить не получится. Нужно разбираться более детально. Вот ссылка на обсуждение переноса cg-шейдера в Unity: https://forum.unity.com/threads/how-to-copy-paste-...
    Ответ написан
  • Как вы работаете с heightmap resolution (2^k+1) (unity)?

    @Ksushqa Автор вопроса
    Unity developer
    Нельзя дать правильный ответ, пока вы не расскажите, почему на 1 больше, зачем на зоны и как выбирается их размер.

    В документации вполне прозрачно написано, откуда тут +1:
    Heightmap Resolution Разрешение карты высот terrain’а в пикселях (должно быть степенью двойки плюс один, например, 513 = 512 + 1).
    Ответ написан
    Комментировать
  • Можно ли выделить наиболее оптимальный язык для работы с движком Unity?

    @Ksushqa
    Unity developer
    Перешла с JS на C#, и вы не представляете, насколько удобнее оказалось на нем работать и насколько очевидными стали некоторые вещи.
    Ответ написан
    Комментировать