Я приятелю написал шейдер+скрипт, чтобы на спрайт перса накладывать до четырёх масок с кастомной броней. Скрипт нужен для корректировки оффсета текстуры. Из минусов — анимации и маски должны влезать в одну текстуру каждая. http://unity3d.ru/distribution/viewtopic.php?f=35&t=47644 здесь можно посмотреть.
В юнити такой рендер написать — дело пары часов. Можно ещё полчаса накинуть для дописания рендера нормалей. Без нормалей я сам написал такой за пару часов
P.S.: для нормалей надо всего-то шейдер подменить на модельке
Я для такого (не совсем, но похожего) шейдер накидал и скрипт для штатного постэффекта. Причём можно выбирать послойно что будет обрабатываться. ВОТ ЗДЕСЬ можно посмотреть. Плюсом то, что можно подменить/дописать шейдер и получить любой другой эффект.
Вообще-то, расстояние до БС телефон определяет не по мощности. И предел на 2G/3G — 35 км, потом телефон не может соединиться с БС из-за ограничения дальности.
А на своём пропатченном если ввести чужой аккаунт? Или необходимо сначала произвести вход с данного устройства через пароль и только ПОВТОРНЫЙ вход через отпечаток?
Например, для входа в аккаунт без пароля, а одним отпечатком. Программно подменить модуль передавать TRUE при любом отпечатке. То есть устройство говорит «да, отпечаток подошел» и происходит вход в аккаунт без пароля.
Есть паттерн пул, сделать событие на окончание звука и передачу AudioSource в пул — дело 3-5 строк кода. А в пуле держать только N играющих источников, с контролем их количества — дело одной строки.
скрипт не знает напрямую на каком объекте в данный момент выполняется
Как не знает?
this.gameObject
как раз и показывает кому он принадлежит (там ещё и трансформ есть)
Объект отвечает за отображение игрового счета и за воспроизведение всего игрового звука, так на мой взгляд экономичнее для памяти
Нарушение принципа «одна сущность — одна задача», экономия памяти незначительна
его можно нагрузить (о, ужас) использованием PlayerPrefs (читай — записью в файл)
Он кешируется в любом случае, а запись «в файл» (хотя в Win системе он пишет в реестр) делается принудительно через PlayerPrefs.Save
Но раз есть класс настроек, то достаточно сделать методы Load и Save, в которых и будет чтение/запись, а данные брать из полей (после загрузки).
Проблема пятая — ОДНА ДЛЯ ВСЕХ
Тут лучше применить паттерн Singleton
using UnityEngine;
public class DontDestroyThis: MonoBehaviour {
public static DontDestroyThis Instance { get; private set; }
void Awake() {
if (Instance != null) {
Destroy(this);
return;
}
Instance = this;
DontDestroyOnLoad(this.gameObject);
}
}
Так и доступ есть, и контроль только одного инстанса на сцене, и возможность использования этого объекта в каждой сцене при запуске из редактора.
Почему не сделать триггер на башню и запоминать врага в OnCollisionEnter? Это меньше вычислений, меньше работы руками, не надо проверять всех (это делает движок в плюсовой части, которая быстрее шарповой). Легко можно выставить (заранее в префабе) нужные слои для коллизий (башня для летунов, башня для наземных, башня для всех). OnCollisionEnter для добавления в список целей, OnCollisionExit для удаления из списка целей.
А и есть. Я свою реализацию писал, чтобы генерировать дороги на поле, с учётом уже проложенных (чтобы объединялась новая со старыми). Так-то А — всего лишь алгоритм, который каждый реализует со своими особенностями.
Поиск пути — это часть ИИ, причём, зачастую, бОльшая часть этого ИИ. Другой вопрос, что конкретно здесь — это, как уже выразились — частный случай обычного А* ))
А где про это можно почитать? А то по логике делать пакеты сильно меньше MTU — крайне нелогично. А с учетом, что модемов уже нет — то и MTU везде 1400-1500 (хотя я не в курсе про 3G/4G).
"Сторонний TextmeshPro" уже больше года как встроен в юнити
Ещё можно добавить, что данные аттрибутов вертексов позже интерполируются во фрагментной части шейдера, что позволяет уменьшить количество расчётов.
Я приятелю написал шейдер+скрипт, чтобы на спрайт перса накладывать до четырёх масок с кастомной броней. Скрипт нужен для корректировки оффсета текстуры. Из минусов — анимации и маски должны влезать в одну текстуру каждая.
http://unity3d.ru/distribution/viewtopic.php?f=35&t=47644 здесь можно посмотреть.
Без нормалей я сам написал такой за пару часов
P.S.: для нормалей надо всего-то шейдер подменить на модельке
Вообще-то, расстояние до БС телефон определяет не по мощности. И предел на 2G/3G — 35 км, потом телефон не может соединиться с БС из-за ограничения дальности.
А какой смысл от этого? Можно же фейковый ответ отправить со "специально подготовленного устройства". Сверять-то не с чем.
Есть паттерн пул, сделать событие на окончание звука и передачу AudioSource в пул — дело 3-5 строк кода. А в пуле держать только N играющих источников, с контролем их количества — дело одной строки.
Как не знает? как раз и показывает кому он принадлежит (там ещё и трансформ есть)
Нарушение принципа «одна сущность — одна задача», экономия памяти незначительна
Он кешируется в любом случае, а запись «в файл» (хотя в Win системе он пишет в реестр) делается принудительно через PlayerPrefs.Save
Но раз есть класс настроек, то достаточно сделать методы Load и Save, в которых и будет чтение/запись, а данные брать из полей (после загрузки).
Тут лучше применить паттерн Singleton
Так и доступ есть, и контроль только одного инстанса на сцене, и возможность использования этого объекта в каждой сцене при запуске из редактора.
А и есть. Я свою реализацию писал, чтобы генерировать дороги на поле, с учётом уже проложенных (чтобы объединялась новая со старыми). Так-то А — всего лишь алгоритм, который каждый реализует со своими особенностями.
Поиск пути — это часть ИИ, причём, зачастую, бОльшая часть этого ИИ. Другой вопрос, что конкретно здесь — это, как уже выразились — частный случай обычного А* ))
А где про это можно почитать? А то по логике делать пакеты сильно меньше MTU — крайне нелогично. А с учетом, что модемов уже нет — то и MTU везде 1400-1500 (хотя я не в курсе про 3G/4G).